Skip to content

Attempt to make more disk space available on GitHub runners#125

Merged
ggiguash merged 1 commit intomicroshift-io:mainfrom
ggiguash:free-disk-space
Nov 11, 2025
Merged

Attempt to make more disk space available on GitHub runners#125
ggiguash merged 1 commit intomicroshift-io:mainfrom
ggiguash:free-disk-space

Conversation

@ggiguash
Copy link
Copy Markdown
Contributor

@ggiguash ggiguash commented Nov 11, 2025

Resolves #124

Summary by CodeRabbit

  • Chores
    • Added a prebuild disk-cleanup step to free space before environment preparation.
    • Improves build reliability and efficiency by reducing disk-related failures and ensuring sufficient space for dependencies and artifacts.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Nov 11, 2025

Walkthrough

Adds a new "Free disk space" step to the prebuild composite action that runs jlumbroso/free-disk-space@v1.3.1 with specific cleanup flags; the step is inserted before the "Prepare the build and run environment" step.

Changes

Cohort / File(s) Summary
Prebuild disk-cleanup step
\.github/actions/prebuild/action\.yaml
Inserts a new "Free disk space" step (uses jlumbroso/free-disk-space@v1.3.1) before "Prepare the build and run environment", with inputs: tool-cache: false, android: true, dotnet: true, haskell: true, large-packages: true, docker-images: true, swap-storage: false

Sequence Diagram(s)

sequenceDiagram
  participant Runner
  participant PrebuildAction as Prebuild Composite Action
  participant FreeDisk as Free disk space (jlumbroso/free-disk-space@v1.3.1)
  participant PrepareEnv as Prepare the build and run environment
  participant Build as Build Steps

  Runner->>PrebuildAction: invoke
  PrebuildAction->>FreeDisk: run cleanup (android,dotnet,haskell,large-packages,docker-images)
  FreeDisk-->>PrebuildAction: cleanup complete
  PrebuildAction->>PrepareEnv: prepare environment
  PrepareEnv-->>PrebuildAction: environment ready
  PrebuildAction->>Build: continue with build
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Pay attention to ordering in runs.steps to ensure the new step executes before environment preparation.
  • Verify the input flags match the intended cleanup targets and that swap-storage: false is correct for target runners.

Possibly related PRs

Pre-merge checks and finishing touches

✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change—adding a disk space cleanup step to GitHub runners via a new action configuration.
Linked Issues check ✅ Passed The PR addresses the core objective [#124] by integrating the jlumbroso/free-disk-space action to free disk space, though it doesn't mount the /mnt partition as originally suggested.
Out of Scope Changes check ✅ Passed The change is scoped to the prebuild action as required; no out-of-scope modifications detected.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9766597 and 40091a5.

📒 Files selected for processing (1)
  • .github/actions/prebuild/action.yaml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: ubuntu-rpm2deb
  • GitHub Check: fedora-bootc (ubuntu-24.04-arm)
  • GitHub Check: fedora-bootc (ubuntu-24.04)
  • GitHub Check: centos10-bootc
  • GitHub Check: isolated-network (kindnet, ubuntu-24.04, 0)
  • GitHub Check: centos9-bootc
  • GitHub Check: isolated-network (ovnk, ubuntu-24.04, 1)
  • GitHub Check: quick-start-and-clean (ubuntu-24.04-arm)
  • GitHub Check: quick-start-and-clean (ubuntu-24.04)
🔇 Additional comments (3)
.github/actions/prebuild/action.yaml (3)

7-17: Reconsider tool-cache: false flag.

If the goal is to maximize available disk space, setting tool-cache: false (which preserves the tool cache) seems counterintuitive. Should this be tool-cache: true to remove the tool cache as well?

Clarify the rationale: Does MicroShift rely on the GitHub runner's cached tools for the build, or can the tool cache be safely removed to free more space?


7-17: Good positioning and comprehensive cleanup strategy.

The step is well-placed before environment preparation, includes a helpful reference comment, and targets multiple cleanup paths (docker images, large packages, dotnet, haskell, android). This aligns well with the PR objective to free disk space on ARM runners.


9-9: Version v1.3.1 is current but project shows minimal maintenance activity.

The latest released version is v1.3.1 (tagged Oct 18, 2023), which matches your pinned version. No known security vulnerabilities were identified. However, the project has zero merged pull requests in the past year, and the project is no longer actively maintained (as indicated by actively maintained forks). Consider monitoring this action for updates or evaluate maintained alternatives if long-term support becomes critical.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@ggiguash ggiguash marked this pull request as ready for review November 11, 2025 07:14
@ggiguash ggiguash requested a review from a team as a code owner November 11, 2025 07:14
@ggiguash ggiguash merged commit cb4632b into microshift-io:main Nov 11, 2025
12 checks passed
@ggiguash ggiguash deleted the free-disk-space branch November 11, 2025 08:12
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.

OKD builds on ARM platform occasionally fail with 'no space left on device' error

1 participant