Booz Allen's lean manufacturing approach for holistically designing, developing and fielding AI solutions across the engineering lifecycle from data processing to model building, tuning, and training to secure operational deployment
Other
34
stars
8
forks
source link
Feature: As a baseline developer, I want docker image builds to be multi-architecture in CI so they can be built together on a single node #179
Currently we use the orphedomos maven plugin for all our docker builds. This does not support multi architecture builds, resulting is us performing two parallel aiSSEMBLE builds on the different architectures to create our docker images. By utilizing the fabric8 docker maven plugin for our docker builds, we can create images for both architectures in a single aiSSEMBLE build.
As part of enabling multi-architecture docker image builds effort, this issue will focus on enabling our CI to build multi-architecture docker images on a single node.
DOD
Acceptance criteria required to realize the requested feature
[x] Turn on multi-architecture builds for the ci profile
[x] Local builds should continue to function the same, building only the native architecture as the "main" image (no architecture specifier)
[x] Ensure a manifest list is created as part of the build process
[x] Update the JenkinsfileBuild.groovy script on the CI build branch to build on only one Jenkins node, and remove the manual manifest list creation logic
[x] Update the JenkinsfileRelease.groovy script on the same branch similarly
[x] Q: check if the fabric8 will create different platform tags for the docker image => A: No
Verify the most recent CI build passed and make sure it only uses single node (no x86 or arm64 label presents in the log) and search through the most recent build log with --platform linux/amd64,linux/arm64, you should find all 22 docker images built with multi-platform command.
A clear and concise description of any alternative solutions or features you've considered.
Add any other context, links, or screenshots about the feature request here.
Description
Currently we use the orphedomos maven plugin for all our docker builds. This does not support multi architecture builds, resulting is us performing two parallel aiSSEMBLE builds on the different architectures to create our docker images. By utilizing the fabric8 docker maven plugin for our docker builds, we can create images for both architectures in a single aiSSEMBLE build.
As part of enabling multi-architecture docker image builds effort, this issue will focus on enabling our CI to build multi-architecture docker images on a single node.
DOD
Acceptance criteria required to realize the requested feature
ci
profileTest Strategy/Script
--platform linux/amd64,linux/arm64
, you should find all 22 docker images built with multi-platform command.References/Additional Context
A clear and concise description of any alternative solutions or features you've considered. Add any other context, links, or screenshots about the feature request here.