Skip to content

CI: Add multi-arch container image build workflow - #32

Merged
pdettori merged 1 commit into
mainfrom
ci/ghcr-build-workflow
Jun 30, 2026
Merged

pdettori merged 1 commit into
mainfrom
ci/ghcr-build-workflow

Conversation

@pdettori

Copy link
Copy Markdown
Member

Summary

  • Adds .github/workflows/build.yaml to build and push ghcr.io/kagenti/serverless-harness
  • Multi-arch (linux/amd64,linux/arm64) via Docker Buildx + QEMU
  • Triggers: push to main, version tags (v*), workflow_dispatch
  • Tags: main-<short-sha> + latest on main, semver on v* tags
  • GitHub Actions build cache (type=gha)
  • Recursive submodule checkout for pi-fork/

Follows the pattern from kagenti/kagenti-operator release workflow.

Closes #31

Test plan

  • Merge to main → verify image appears at ghcr.io/kagenti/serverless-harness:latest and main-<sha>
  • Verify multi-arch manifest with docker manifest inspect ghcr.io/kagenti/serverless-harness:latest
  • (Later) Push a v* tag → verify semver tag appears

Assisted-By: Claude Code

Add GitHub Actions workflow to build and push the serverless-harness
container image to ghcr.io/kagenti/serverless-harness.

- Triggers on push to main, version tags (v*), and workflow_dispatch
- Builds multi-arch (linux/amd64, linux/arm64) using Docker Buildx
- Tags: main-<sha> + latest on main push, semver on version tags
- Uses GitHub Actions cache (type=gha) for build layer caching
- Checks out submodules recursively (pi-fork dependency)

Closes #31

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Paolo Dettori <paolo.dettori@example.com>
@pdettori
pdettori merged commit 735932c into main Jun 30, 2026
9 checks passed
@pdettori
pdettori deleted the ci/ghcr-build-workflow branch June 30, 2026 18:47
pdettori added a commit to pdettori/serverless-harness that referenced this pull request Jul 13, 2026
…-injection)

Strip CR/LF from req.method/req.url/Authorization before logging in the RC1-2
echo target so a crafted request cannot forge or split log lines. Addresses the
CodeQL js/log-injection alerts (rossoctl#32/rossoctl#33) on PR rossoctl#97. The reflected JSON response
is unchanged (already safe via JSON.stringify), so the Hop-2 smoke assertions
(which read the response body, not the log) are unaffected.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Paolo Dettori <dettori@us.ibm.com>
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.

CI: Automate multi-arch container image build and push to GHCR

1 participant