Skip to content

[FLINK-39884][ci] Run free_disk_space.sh in the GitHub Actions e2e jobs#28375

Merged
MartijnVisser merged 1 commit into
apache:masterfrom
MartijnVisser:FLINK-39884-gha
Jun 12, 2026
Merged

[FLINK-39884][ci] Run free_disk_space.sh in the GitHub Actions e2e jobs#28375
MartijnVisser merged 1 commit into
apache:masterfrom
MartijnVisser:FLINK-39884-gha

Conversation

@MartijnVisser

Copy link
Copy Markdown
Contributor

What is the purpose of the change

Follow-up to FLINK-39884, which extended tools/azure-pipelines/free_disk_space.sh to free roughly 34GB on the CI machines. That cleanup so far only runs on Azure; the GitHub Actions job_init action only removes the Android SDK, CodeQL and .NET.

The GHA e2e jobs run directly on the ubuntu-24.04 runner (not in the CI container) and download/generate more than 17GB of files, so they benefit from the same cleanup as the Azure e2e jobs on the identical runner image.

Brief change log

  • Add an opt-in free_disk_space input to .github/actions/job_init that runs tools/azure-pipelines/free_disk_space.sh instead of the smaller inline cleanup
  • Enable it for the e2e jobs in .github/workflows/template.flink-ci.yml

The input is opt-in because the compile/packaging/test jobs run inside the CI container, where the runner's disk cannot be cleaned up (the existing inline cleanup remains in place for them).

Verifying this change

This change is a CI configuration change without test coverage. The existing df -h steps before/after job_init will show the reclaimed space (~30GB expected) in the e2e job logs of the next runs. The script preserves /opt/hostedtoolcache/Python and the JDKs under /usr/lib/jvm, which the subsequent setup-python and JAVA_HOME_<version>_X64 steps rely on; the Docker image prune happens before the e2e job loads its cached testcontainers images.

Does this pull request potentially affect one of the following parts:

  • Dependencies (does it add or upgrade a dependency): no
  • The public API, i.e., is any changed class annotated with @Public(Evolving): no
  • The serializers: no
  • The runtime per-record code paths (performance sensitive): no
  • Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
  • The S3 file system connector: no

Documentation

  • Does this pull request introduce a new feature? no
  • If yes, how is the feature documented? not applicable

Was generative AI tooling used to co-author this PR?
  • Yes (Claude Code)

Generated-by: Claude Code (Fable 5)

Ports the Azure Pipelines disk cleanup to GitHub Actions. The e2e jobs
run directly on the ubuntu-24.04 runner (not in a container), where the
e2e tests download and generate more than 17GB of files. The existing
job_init cleanup only removed the Android SDK, CodeQL and .NET; the
free_disk_space.sh script frees roughly 34GB on the same runner image.

The script is opt-in via a new job_init input because the compile and
test jobs run inside the CI container, where the runner's disk cannot
be cleaned up.

Generated-by: Claude Code (Fable 5)
@MartijnVisser MartijnVisser requested a review from snuyanzin June 10, 2026 12:22
@flinkbot

flinkbot commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

CI report:

Bot commands The @flinkbot bot supports the following commands:
  • @flinkbot run azure re-run the last Azure build

@MartijnVisser MartijnVisser merged commit 9b324ee into apache:master Jun 12, 2026
@MartijnVisser MartijnVisser deleted the FLINK-39884-gha branch June 12, 2026 08:56
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.

3 participants