Problem
The org-standard ci.yml template's coverage job installs kcov via sudo apt-get install -y -qq bats kcov. Since ubuntu-latest on GitHub Actions now resolves to Ubuntu 24.04, and kcov was dropped from Ubuntu 24.04's package repositories, the job fails with:
E: Unable to locate package kcov
Process completed with exit code 100.
This only manifests once a repo has .bats test files — the green-until-tests early-exit in the script no longer fires.
Affected repos
Any repo that:
- Has
tests/**/*.bats files
- Uses
runs-on: ubuntu-latest in the coverage job (i.e., every repo tracking the standard template)
petry-projects/repo-template is currently broken (PR #82 CI failing). Patched there with a temporary runs-on: ubuntu-22.04 workaround pending this upstream fix.
Suggested fix
Options (in order of preference):
- Pin coverage job to
ubuntu-22.04 (minimal change; 22.04 is supported until April 2027)
- Download a pre-built kcov binary from GitHub Releases or build from source in CI
- Install bats via npm (bats-core) and drop kcov instrumentation, running bats directly — the job remains a pass/fail gate without coverage percentages
The template in standards/workflows/ci.yml needs updating, and the fix should be synced fleet-wide via the standards-deploy workflow.
Problem
The org-standard
ci.ymltemplate'scoveragejob installskcovviasudo apt-get install -y -qq bats kcov. Sinceubuntu-lateston GitHub Actions now resolves to Ubuntu 24.04, andkcovwas dropped from Ubuntu 24.04's package repositories, the job fails with:This only manifests once a repo has
.batstest files — the green-until-tests early-exit in the script no longer fires.Affected repos
Any repo that:
tests/**/*.batsfilesruns-on: ubuntu-latestin thecoveragejob (i.e., every repo tracking the standard template)petry-projects/repo-templateis currently broken (PR #82 CI failing). Patched there with a temporaryruns-on: ubuntu-22.04workaround pending this upstream fix.Suggested fix
Options (in order of preference):
ubuntu-22.04(minimal change; 22.04 is supported until April 2027)The template in
standards/workflows/ci.ymlneeds updating, and the fix should be synced fleet-wide via the standards-deploy workflow.