Skip to content

ci/docs: add act local CI workflow support to all build pipelines - #6

Merged
ibtisam-iq merged 2 commits into
mainfrom
feature/act-local-ci-support
Jun 8, 2026
Merged

ci/docs: add act local CI workflow support to all build pipelines#6
ibtisam-iq merged 2 commits into
mainfrom
feature/act-local-ci-support

Conversation

@ibtisam-iq

Copy link
Copy Markdown
Owner

Summary

Introduces act-aware guards to all build-*.yml workflows so the full CI pipeline can be run locally without GHCR credentials, and updates all corresponding READMEs with a Local CI Workflow Testing with act section.

Workflow Changes (6 files)

Applied the same 4-change pattern to all remaining build-*.yml files (already present in build-dev-machine-rootfs.yml):

Step Change
Log in to GHCR Added if: ${{ !env.ACT }}
Extract metadata Added if: ${{ !env.ACT }}
Build and push load, push, and tags made act-aware
Image digest Added if: ${{ !env.ACT }}

Files updated:

  • .github/workflows/build-dev-cicd-rootfs.yml
  • .github/workflows/build-guacamole-rootfs.yml
  • .github/workflows/build-jenkins-rootfs.yml
  • .github/workflows/build-nexus-rootfs.yml
  • .github/workflows/build-sonarqube-rootfs.yml
  • .github/workflows/build-ubuntu-rootfs.yml

README Changes (5 files)

Added Local CI Workflow Testing with act section between Local Build and Published Image in each README. Also added the GitHub Actions publish context line to Published Image sections where missing.

Files updated:

  • iximiuz/rootfs/jenkins/README.md
  • iximiuz/rootfs/nexus/README.md
  • iximiuz/rootfs/sonarqube/README.md
  • iximiuz/rootfs/ubuntu/README.md
  • iximiuz/rootfs/guacamole/README.md (also added missing Published Image section)

Testing

Verified locally on build-dev-machine-rootfs.yml:

act push \
  -W .github/workflows/build-dev-machine-rootfs.yml \
  --no-cache-server

Image builds and loads into local Docker daemon. No secrets required.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 699148fd04

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

```bash
act push \
-W .github/workflows/build-guacamole-rootfs.yml \
--no-cache-server

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Keep act's cache server enabled

Remove --no-cache-server from this command and the equivalent commands in the other new README sections. The workflows always configure cache-from/cache-to: type=gha; Docker documents that this backend requires a cache URL and runtime token, while act defines this flag as disabling its local cache server (Docker cache authentication, act flag definition). With no GitHub runtime credentials supplied, the documented invocation leaves BuildKit without a usable cache endpoint and the build fails rather than producing the promised local image.

Useful? React with 👍 / 👎.

load: false
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
load: ${{ !!env.ACT }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Restrict local loads to one platform

When act sets ACT, this enables load while the build still targets both linux/amd64 and linux/arm64; the Ubuntu workflow has the same combination. Docker documents --load as loading a single-platform result and notes that the default Engine image store cannot load multi-platform images (Buildx --load documentation). Consequently, the documented local run fails on standalone/classic Docker installations; select the host platform for act runs or use a multi-platform-capable output/store.

Useful? React with 👍 / 👎.

@ibtisam-iq
ibtisam-iq merged commit 0ce08a7 into main Jun 8, 2026
6 checks passed
@ibtisam-iq
ibtisam-iq deleted the feature/act-local-ci-support branch June 8, 2026 16: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.

1 participant