Skip to content

ci: pin build runners to ubuntu-24.04 - #72

Merged
dmkarthi merged 1 commit into
OpenVisualCloud:devfrom
roshan-ku:fix/ci-pin-ubuntu-24.04
Oct 19, 2026
Merged

dmkarthi merged 1 commit into
OpenVisualCloud:devfrom
roshan-ku:fix/ci-pin-ubuntu-24.04

Conversation

@roshan-ku

Copy link
Copy Markdown
Collaborator

Description

After #71 merged, CodeQL Scan and Continuous Integration on dev failed in the Environment check step, before any project code was built. The scheduled Coverity and Daily Build jobs are affected the same way.

Root cause

GitHub is rolling ubuntu-latest over to Ubuntu 26.04 (gcc 15.2). The PR run of #71 still landed on Ubuntu 24.04 and passed; the post-merge runs landed on 26.04 and failed.

On 26.04 the pinned MTL v26.09 no longer builds: MTL compiles with -Werror, and gcc 15 reports

lib/src/st2110/pipeline/st40_pipeline_rx.c:165:51: error: '__builtin___snprintf_chk' output truncated
before the last format character [-Werror=format-truncation=]
Run Runner image Compiler Environment check
PR #71 CodeQL ubuntu-24.04 gcc 13 ✅
dev after merge (CodeQL, CI) ubuntu-26.04 gcc 15.2 ❌ MTL build

Changes

  • Pin runners to ubuntu-24.04 — the validated platform per the README — for every job that builds the toolchain or the applications: ci.yml, codeql.yml, coverity.yml, daily_build.yml (build, AFL, libFuzzer) and pull_request.yml. scorecard.yml builds nothing and stays on ubuntu-latest.
  • Key the environment cache on the runner image. The key previously ended in runner.os, which is only Linux, so DPDK/MTL/FFmpeg binaries built on one Ubuntu release could be restored onto another. A small step now reads the runner's ImageOS (e.g. ubuntu24) and appends it to both the restore and save keys.

Notes for reviewers

  • No v3 environment cache has been saved on dev yet (the failing runs never reached the save step), so the new key costs no extra rebuild.
  • Moving to Ubuntu 26.04 later will need MTL to build cleanly with gcc 15 (an upstream fix, or relaxing -Wformat-truncation for the MTL build); the image-aware cache key will then keep the two images' caches separate.

Checklist

Code Quality

  • Code follows project style guidelines
  • No unnecessary debug logs or commented-out code
  • No hardcoded values / secrets

Testing

  • Unit test added/modified accordingly
  • Perform manual basic sanity testing at system level

Review Readiness

  • PR title and description are clear and meaningful
  • Story/Task IDs are linked

Documentation

  • README or relevant docs updated (if applicable)

Security

  • No sensitive data exposed (keys, passwords, tokens)
  • Input validation added where needed

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Documentation content changes
  • Testing
  • Other... Please describe: CI runner configuration

GitHub is rolling ubuntu-latest over to Ubuntu 26.04 (gcc 15.2). On that
image the environment-check step fails to build the pinned MTL v26.09:
MTL compiles with -Werror and gcc 15 reports -Wformat-truncation in
lib/src/st2110/pipeline/st40_pipeline_rx.c, so every job that builds the
toolchain (CI, CodeQL, Coverity, Daily Build, Pull Request) fails before
reaching our code.

Pin those jobs to ubuntu-24.04, the validated platform. Scorecard builds
nothing and stays on ubuntu-latest.

Also key the environment cache on the runner image (ImageOS) in addition
to runner.os, which is only "Linux", so DPDK/MTL/FFmpeg binaries built on
one Ubuntu release are never restored onto another.

@dmkarthi dmkarthi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dmkarthi
dmkarthi merged commit 0e00171 into OpenVisualCloud:dev Oct 19, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants