Skip to content

WIP - Testing gha/build images#4098

Draft
tobybellwood wants to merge 6 commits into
mainfrom
testing-gha/build-images
Draft

WIP - Testing gha/build images#4098
tobybellwood wants to merge 6 commits into
mainfrom
testing-gha/build-images

Conversation

@tobybellwood

Copy link
Copy Markdown
Contributor

This pull request introduces a new GitHub Actions workflow for building and publishing multi-architecture Docker images, and updates several Dockerfiles to improve multi-arch build support and reliability. The changes focus on standardizing build environments, ensuring consistent architecture targeting, and improving build robustness.

CI/CD and Build Improvements:

  • Added a new workflow .github/workflows/build-images.yml to automate building and publishing Docker images for different branches and tags, supporting multi-architecture builds and mirroring images to DockerHub and GHCR.
  • Updated Node.js workspace Dockerfile to increase the yarn network timeout, improving reliability in environments with slow network connections.

Dockerfile Multi-Architecture and Build Consistency:

  • Updated all Go-based service and task image Dockerfiles (services/actions-handler, services/api-sidecar-handler, services/backup-handler, services/logs2notifications, taskimages/activestandby, taskimages/projectclone) to:

    • Explicitly specify --platform=linux/amd64 for the builder stage to ensure native builds and avoid QEMU-related issues.
    • Use the TARGETARCH build argument for the Go GOARCH environment variable, enabling correct cross-compilation for multi-arch images. [1] [2] [3] [4] [5] [6]
  • Updated the taskimages/projectclone Dockerfile to also apply these changes to the lagoon-sync build stage.

  • Updated the services/keycloak Dockerfile to force the Maven build stage to use linux/amd64, avoiding TLS handshake failures under QEMU emulation and ensuring the resulting JAR is architecture-neutral.

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.

2 participants