What feature do you want to see added?
The multiarch stage (a sanity check one) is the longest one (taking about 45 minutes) and currently builds images for every architectures, even if the current agent architecture images are already built in other stages.
Other stages building a list of targets are calling make build-<target> or make test-<target> which are using make list, returning only targets for the current agent architecture (amd64):
|
stage("Build linux-${imageToBuild}") { |
|
infra.withDockerCredentials { |
|
sh "make build-${imageToBuild}" |
|
} |
|
} |
|
|
|
stage("Test linux-${imageToBuild}") { |
|
sh 'make prepare-test' |
|
try { |
|
infra.withDockerCredentials { |
|
sh "make test-${imageToBuild}" |
|
} |
|
list: check-reqs |
|
@set -x; make --silent show | jq -r '.target | path(.. | select(.platforms[] | contains("linux/$(ARCH)"))?) | add' |
This stage should be optimised to build only build architectures not already built in those other stages so it takes less time, to reduce the overall build duration.
Current state
List of targets and architectures built in the multiarch stage:
alpine_jdk17 (amd64)
alpine_jdk21 (amd64, arm64)
debian-slim_jdk17 (amd64)
debian-slim_jdk21 (amd64, arm64)
debian_jdk17 (amd64, arm64, s390x, ppc64le)
debian_jdk21 (amd64, arm64, s390x, ppc64le)
rhel_ubi9_jdk17 (amd64, arm64, ppc64le)
rhel_ubi9_jdk21 (amd64, arm64, ppc64le)
Total: 20 distinct images.
Overall build duration: 47 min
https://ci.jenkins.io/job/Packaging/job/docker/job/master/13084:

Upstream changes
No response
Are you interested in contributing this feature?
Yes
What feature do you want to see added?
The multiarch stage (a sanity check one) is the longest one (taking about 45 minutes) and currently builds images for every architectures, even if the current agent architecture images are already built in other stages.
Other stages building a list of targets are calling
make build-<target>ormake test-<target>which are usingmake list, returning only targets for the current agent architecture (amd64):docker/Jenkinsfile
Lines 135 to 146 in 5a8f228
docker/Makefile
Lines 78 to 79 in 5a8f228
This stage should be optimised to build only build architectures not already built in those other stages so it takes less time, to reduce the overall build duration.
Current state
List of targets and architectures built in the multiarch stage:
Total: 20 distinct images.
Overall build duration: 47 min
https://ci.jenkins.io/job/Packaging/job/docker/job/master/13084:

Upstream changes
No response
Are you interested in contributing this feature?
Yes