Skip to content

Bh/multi arch builds 2#1532

Merged
kevalmahajan merged 6 commits intoIBM:multi-arch-buildsfrom
brian-hussey:bh/multi-arch-builds-2
Dec 3, 2025
Merged

Bh/multi arch builds 2#1532
kevalmahajan merged 6 commits intoIBM:multi-arch-buildsfrom
brian-hussey:bh/multi-arch-builds-2

Conversation

@brian-hussey
Copy link
Copy Markdown
Member

✨ Feature / Enhancement PR

🔗 Epic / Issue

Link to the epic or parent issue:
Part of #80


🚀 Summary (1-2 sentences)

Adds documentation updates for multi-architecture images.
For the most part image references are largely unchanged as the manifest will handle most use cases. This documentation change covers the cases where someone wants to pull a specific architecture even if it's differnet from current system architecture.


🧪 Checks

  • make lint passes
  • make test passes
  • CHANGELOG updated (if user-facing)

crivetimihai and others added 4 commits November 29, 2025 09:04
Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes #80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
@brian-hussey brian-hussey marked this pull request as ready for review December 1, 2025 23:33
@kevalmahajan kevalmahajan merged this pull request into IBM:multi-arch-builds Dec 3, 2025
2 checks passed
kevalmahajan pushed a commit that referenced this pull request Dec 3, 2025
* feat: Add multiplatform container image support (amd64, arm64, s390x)

Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes #80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Include missing Container.scratch file in MANIFEST.in (#1529)

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Update documentation for multi-architecture image use

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Revert unneeded changes in one part of the doc.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Add recursive signing to cosign step.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
kevalmahajan pushed a commit that referenced this pull request Dec 3, 2025
…#1520)

* feat: Add multiplatform container image support (amd64, arm64, s390x)

Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes #80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Include missing Container.scratch file in MANIFEST.in (#1529)

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Bh/multi arch builds 2 (#1532)

* feat: Add multiplatform container image support (amd64, arm64, s390x)

Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes #80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Include missing Container.scratch file in MANIFEST.in (#1529)

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Update documentation for multi-architecture image use

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Revert unneeded changes in one part of the doc.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Add recursive signing to cosign step.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Co-authored-by: Brian Hussey <brian.hussey@ie.ibm.com>
kcostell06 pushed a commit to kcostell06/mcp-context-forge that referenced this pull request Feb 24, 2026
…IBM#1520)

* feat: Add multiplatform container image support (amd64, arm64, s390x)

Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes IBM#80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Include missing Container.scratch file in MANIFEST.in (IBM#1529)

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Bh/multi arch builds 2 (IBM#1532)

* feat: Add multiplatform container image support (amd64, arm64, s390x)

Add comprehensive multiplatform Docker build support with:

- New docker-multiplatform.yml workflow:
  - Parallel native builds for amd64 (ubuntu-latest) and arm64 (ubuntu-24.04-arm)
  - QEMU emulation for s390x on ubuntu-latest
  - Multiplatform manifest creation with buildx imagetools
  - Security scanning (Trivy, Grype, Syft SBOM) on amd64
  - Cosign keyless signing for all architectures

- Updated docker-release.yml:
  - Use buildx imagetools create for manifest handling
  - Preserves all architecture variants when tagging releases

- Updated ibm-cloud-code-engine.yml:
  - Explicit --platform linux/amd64 flag for consistent builds

- Updated Containerfile.lite for multiplatform compatibility:
  - Use ubi10-minimal as runtime base instead of scratch
  - Eliminates dnf --installroot which fails under QEMU emulation
  - Uses microdnf for runtime package installation
  - Maintains security scanning compatibility (RPM database preserved)

- Enhanced Makefile targets:
  - container-build-multi: Build multiplatform image locally
  - container-inspect-manifest: Inspect multiplatform manifest in registry

Closes IBM#80

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

* Include missing Container.scratch file in MANIFEST.in (IBM#1529)

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Update documentation for multi-architecture image use

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Revert unneeded changes in one part of the doc.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

* Add recursive signing to cosign step.

Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>

---------

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Signed-off-by: Brian Hussey <brian.hussey@ie.ibm.com>
Co-authored-by: Brian Hussey <brian.hussey@ie.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.

3 participants