mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-07 11:13:48 +00:00
Merge pull request #65046 from mkumatag/docker_manifest
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Replace manifest-tool with docker manifest command forked from https://github.com/kubernetes/kubernetes/pull/63453#issuecomment-395716068
This commit is contained in:
commit
878683d5f2
@ -36,7 +36,7 @@ all: all-container
|
|||||||
all-container:
|
all-container:
|
||||||
./image-util.sh build $(WHAT)
|
./image-util.sh build $(WHAT)
|
||||||
|
|
||||||
all-push: all-container manifest-tool
|
all-push: all-container
|
||||||
./image-util.sh push $(WHAT)
|
./image-util.sh push $(WHAT)
|
||||||
|
|
||||||
.PHONY: all all-push all-container
|
.PHONY: all all-push all-container
|
||||||
|
@ -90,19 +90,23 @@ build() {
|
|||||||
|
|
||||||
# This function will push the docker images
|
# This function will push the docker images
|
||||||
push() {
|
push() {
|
||||||
|
TAG=$(<${IMAGE}/VERSION)
|
||||||
if [[ -f ${IMAGE}/BASEIMAGE ]]; then
|
if [[ -f ${IMAGE}/BASEIMAGE ]]; then
|
||||||
archs=$(listArchs)
|
archs=$(listArchs)
|
||||||
else
|
else
|
||||||
archs=${!QEMUARCHS[@]}
|
archs=${!QEMUARCHS[@]}
|
||||||
fi
|
fi
|
||||||
for arch in ${archs}; do
|
for arch in ${archs}; do
|
||||||
TAG=$(<${IMAGE}/VERSION)
|
|
||||||
docker push ${REGISTRY}/${IMAGE}-${arch}:${TAG}
|
docker push ${REGISTRY}/${IMAGE}-${arch}:${TAG}
|
||||||
done
|
done
|
||||||
|
|
||||||
# Make archs list into OS/architecture pair. Eg: 'amd64 ppc64le' to 'linux/amd64,linux/ppc64le'
|
# Make archs list into image manifest. Eg: 'amd64 ppc64le' to '${REGISTRY}/${IMAGE}-amd64:${TAG} ${REGISTRY}/${IMAGE}-ppc64le:${TAG}'
|
||||||
archs=$(echo $archs | sed -e 's/[^ ]* */linux\/&/g' -e 's/ /,/g')
|
manifest=$(echo $archs | sed -e "s~[^ ]*~$REGISTRY\/$IMAGE\-&:$TAG~g")
|
||||||
manifest-tool push from-args --platforms ${archs} --template ${REGISTRY}/${IMAGE}-ARCH:${TAG} --target ${REGISTRY}/${IMAGE}:${TAG}
|
docker manifest create --amend ${REGISTRY}/${IMAGE}:${TAG} ${manifest}
|
||||||
|
for arch in ${archs}; do
|
||||||
|
docker manifest annotate --arch ${arch} ${REGISTRY}/${IMAGE}:${TAG} ${REGISTRY}/${IMAGE}-${arch}:${TAG}
|
||||||
|
done
|
||||||
|
docker manifest push ${REGISTRY}/${IMAGE}:${TAG}
|
||||||
}
|
}
|
||||||
|
|
||||||
# This function is for building the go code
|
# This function is for building the go code
|
||||||
|
Loading…
Reference in New Issue
Block a user