Skip to content

ci: pin ubuntu-26.04 and set TMPDIR for publish - #180

Open
jonasz-lasut wants to merge 1 commit into
crossplane:mainfrom
jonasz-lasut:ci/pin-ubuntu-2604-tmpdir
Open

jonasz-lasut wants to merge 1 commit into
crossplane:mainfrom
jonasz-lasut:ci/pin-ubuntu-2604-tmpdir

Conversation

@jonasz-lasut

@jonasz-lasut jonasz-lasut commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

Description of your changes

ubuntu-latest is moving to ubuntu-26.04, whose /tmp is a tmpfs capped at about 8 GiB. Large Go builds fail with "disk quota exceeded" (actions/runner-images#14777). The upstream fix (actions/runner-images#14814) is not effective on the current ubuntu-26.04 image yet.

  • Pin every job that runs on ubuntu-latest, ubuntu-22.04 or ubuntu-24.04 to ubuntu-26.04, so runner upgrades are deliberate. Jobs on custom runners keep their runs-on.
  • As a temporary workaround, add echo "TMPDIR=$RUNNER_TEMP" >> "$GITHUB_ENV" as the first step of the publish and local-deploy jobs. RUNNER_TEMP is on the large root disk and is valid on any runner. Other jobs have never failed, so they are left as is. Remove it once /tmp stays on disk on ubuntu-26.04.
  • Calls to reusable workflows from upbound/official-providers-ci and upbound/uptest are left unchanged.

Jobs and runners

Workflow Job Runner (before) Runner (after) TMPDIR set
backport.yml open-pr ubuntu-22.04 ubuntu-26.04 no
ci.yml detect-noop ubuntu-22.04 ubuntu-26.04 no
ci.yml lint ubuntu-22.04 ubuntu-26.04 no
ci.yml check-diff ubuntu-22.04 ubuntu-26.04 no
ci.yml unit-tests ubuntu-22.04 ubuntu-26.04 no
ci.yml publish-artifacts ubuntu-22.04 ubuntu-26.04 yes
codeql.yml detect-noop ubuntu-22.04 ubuntu-26.04 no
codeql.yml analyze ubuntu-22.04 ubuntu-26.04 no
commands.yml points ubuntu-22.04 ubuntu-26.04 no
commands.yml backport ubuntu-22.04 ubuntu-26.04 no
promote.yml promote-artifacts ubuntu-22.04 ubuntu-26.04 no
tag.yml create-tag ubuntu-22.04 ubuntu-26.04 no

How has this code been tested

  • All changed workflow files parse as valid YAML
  • CI passes on ubuntu-26.04

ubuntu-latest is moving to ubuntu-26.04, whose /tmp is a tmpfs capped at
about 8 GiB. Large Go builds fail with 'disk quota exceeded'
(actions/runner-images#14777).

Pin all jobs on ubuntu-latest, ubuntu-22.04 and ubuntu-24.04 to
ubuntu-26.04 so runner upgrades are deliberate. As a temporary
workaround, point TMPDIR at RUNNER_TEMP in the publish and local-deploy
jobs. Tracked in EXT-547.

Signed-off-by: Jonasz Małecki <jonasz@upbound.io>
@jonasz-lasut
jonasz-lasut marked this pull request as ready for review October 27, 2026 11:58
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.

1 participant