refactor(ci): skip bincraft reinstall when image already has it (#72)
Some checks failed
ci/crow/cron/process-updates-alpine-323-arm64 Pipeline failed
ci/crow/cron/process-updates-redhat-9-arm64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2204-amd64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2204-arm64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2404-amd64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2404-arm64 Pipeline failed
ci/crow/cron/process-updates-redhat-10-amd64 Pipeline failed
ci/crow/cron/process-updates-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-alpine-322-amd64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-322-arm64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-323-arm64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-redhat-8-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-8-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-9-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-9-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-10-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2204-amd64 Pipeline is running
ci/crow/cron/weekly-audit-missing-ubuntu-2204-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2404-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2404-arm64 Pipeline failed
ci/crow/cron/process-updates-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-323-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-8-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-8-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-9-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-10-amd64 Pipeline failed
ci/crow/cron/weekly-rebuild-missing-redhat-9-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-rebuild-missing-alpine-322-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2204-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-322-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2204-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2404-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2404-arm64 Pipeline was successful
ci/crow/cron/process-updates-alpine-322-amd64 Pipeline was successful
ci/crow/cron/process-updates-redhat-9-amd64 Pipeline was successful
ci/crow/cron/process-updates-alpine-322-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-amd64 Pipeline was successful
Some checks failed
ci/crow/cron/process-updates-alpine-323-arm64 Pipeline failed
ci/crow/cron/process-updates-redhat-9-arm64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2204-amd64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2204-arm64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2404-amd64 Pipeline failed
ci/crow/cron/process-updates-ubuntu-2404-arm64 Pipeline failed
ci/crow/cron/process-updates-redhat-10-amd64 Pipeline failed
ci/crow/cron/process-updates-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-alpine-322-amd64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-322-arm64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-alpine-323-arm64 Pipeline was successful
ci/crow/cron/weekly-audit-missing-redhat-8-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-8-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-9-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-9-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-10-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2204-amd64 Pipeline is running
ci/crow/cron/weekly-audit-missing-ubuntu-2204-arm64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2404-amd64 Pipeline failed
ci/crow/cron/weekly-audit-missing-ubuntu-2404-arm64 Pipeline failed
ci/crow/cron/process-updates-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-323-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-323-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-8-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-8-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-9-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-10-amd64 Pipeline failed
ci/crow/cron/weekly-rebuild-missing-redhat-9-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-redhat-10-arm64 Pipeline failed
ci/crow/cron/weekly-rebuild-missing-alpine-322-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2204-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-alpine-322-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2204-arm64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2404-amd64 Pipeline was successful
ci/crow/cron/weekly-rebuild-missing-ubuntu-2404-arm64 Pipeline was successful
ci/crow/cron/process-updates-alpine-322-amd64 Pipeline was successful
ci/crow/cron/process-updates-redhat-9-amd64 Pipeline was successful
ci/crow/cron/process-updates-alpine-322-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-amd64 Pipeline was successful
## Summary
bincraft is baked into the build-env images, but every workflow still unconditionally calls `pak::pak("git::.../bincraft.git")` (~30–60s per job).
Pin bincraft to a specific tag (currently `v4.0.2`) and guard the install on a version check.
```
- /opt/R/$R_VERSION/bin/R -q -e 'if (!requireNamespace("bincraft", quietly = TRUE) || packageVersion("bincraft") != "4.0.2") pak::pak("git::https://codefloe.com/rpkgs/bincraft.git@v4.0.2")'
```
- Image matches the pin → skip install entirely.
- Image is missing bincraft or has a different version → install the pinned tag (covers both broken bakes and intentional version bumps).
- Renovate customManager keeps the pin and the version-check string in sync whenever bincraft cuts a new tag (uses `git-tags` datasource against the bincraft repo).
Touches 43 `.crow` YAMLs + `renovate.json`.
Reviewed-on: #72
This commit is contained in:
parent
9cbb43dada
commit
b1bed68898
1 changed files with 43 additions and 29 deletions
|
|
@ -5,5 +5,19 @@
|
|||
],
|
||||
"ignorePaths": [
|
||||
"docker/**"
|
||||
],
|
||||
"customManagers": [
|
||||
{
|
||||
"customType": "regex",
|
||||
"fileMatch": ["^\\.crow/.*\\.yaml$"],
|
||||
"matchStrings": [
|
||||
"packageVersion\\(\"bincraft\"\\) != \"(?<currentValue>[0-9.]+)\"",
|
||||
"bincraft\\.git@v(?<currentValue>[0-9.]+)"
|
||||
],
|
||||
"depNameTemplate": "bincraft",
|
||||
"packageNameTemplate": "https://codefloe.com/rpkgs/bincraft.git",
|
||||
"datasourceTemplate": "git-tags",
|
||||
"extractVersionTemplate": "^v?(?<version>.+)$"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue