@@ -305,7 +305,7 @@ pipeline {
305
305
echo "Jenkinsfile is up to date."
306
306
fi
307
307
echo "Starting Stage 2 - Delete old templates"
308
- OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf "
308
+ OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml"
309
309
for i in ${OLD_TEMPLATES}; do
310
310
if [[ -f "${i}" ]]; then
311
311
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -535,6 +535,7 @@ pipeline {
535
535
--label \" org.opencontainers.image.title=Spotube\" \
536
536
--label \" org.opencontainers.image.description=[Spotube](https://spotube.krtirtho.dev/) is an open source, cross-platform Spotify client compatible across multiple platforms utilizing Spotify's data API and YouTube, Piped.video or JioSaavn as an audio source, eliminating the need for Spotify Premium\" \
537
537
--no-cache --pull -t ${ IMAGE} :${ META_TAG} --platform=linux/amd64 \
538
+ --provenance=false --sbom=false \
538
539
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
539
540
}
540
541
}
@@ -566,6 +567,7 @@ pipeline {
566
567
--label \" org.opencontainers.image.title=Spotube\" \
567
568
--label \" org.opencontainers.image.description=[Spotube](https://spotube.krtirtho.dev/) is an open source, cross-platform Spotify client compatible across multiple platforms utilizing Spotify's data API and YouTube, Piped.video or JioSaavn as an audio source, eliminating the need for Spotify Premium\" \
568
569
--no-cache --pull -t ${ IMAGE} :amd64-${ META_TAG} --platform=linux/amd64 \
570
+ --provenance=false --sbom=false \
569
571
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
570
572
}
571
573
}
@@ -594,6 +596,7 @@ pipeline {
594
596
--label \" org.opencontainers.image.title=Spotube\" \
595
597
--label \" org.opencontainers.image.description=[Spotube](https://spotube.krtirtho.dev/) is an open source, cross-platform Spotify client compatible across multiple platforms utilizing Spotify's data API and YouTube, Piped.video or JioSaavn as an audio source, eliminating the need for Spotify Premium\" \
596
598
--no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} --platform=linux/arm64 \
599
+ --provenance=false --sbom=false \
597
600
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
598
601
sh " docker tag ${ IMAGE} :arm64v8-${ META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
599
602
retry(5 ) {
@@ -717,7 +720,7 @@ pipeline {
717
720
--shm-size=1gb \
718
721
-v /var/run/docker.sock:/var/run/docker.sock \
719
722
-e IMAGE=\" ${IMAGE}\" \
720
- -e DELAY_START =\" ${CI_DELAY}\" \
723
+ -e DOCKER_LOGS_TIMEOUT =\" ${CI_DELAY}\" \
721
724
-e TAGS=\" ${CI_TAGS}\" \
722
725
-e META_TAG=\" ${META_TAG}\" \
723
726
-e PORT=\" ${CI_PORT}\" \
@@ -825,35 +828,13 @@ pipeline {
825
828
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
826
829
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
827
830
fi
828
- docker manifest push --purge ${MANIFESTIMAGE}:latest || :
829
- docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
830
- docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
831
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
832
- docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
833
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
834
- docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
835
- docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
836
- docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
837
- if [ -n "${SEMVER}" ]; then
838
- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
839
- docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
840
- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
841
- fi
842
- token=$(curl -sX GET "https://ghcr.io/token?scope=repository%3Alinuxserver%2F${CONTAINER_NAME}%3Apull" | jq -r '.token')
843
- digest=$(curl -s \
844
- --header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
845
- --header "Authorization: Bearer ${token}" \
846
- "https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-latest")
847
- if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
848
- docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest || :
849
- docker manifest create ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:amd64-latest
850
- docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest
851
- fi
852
- docker manifest push --purge ${MANIFESTIMAGE}:latest
853
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
854
- docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
831
+ done
832
+ for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
833
+ docker buildx imagetools create -t ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
834
+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
835
+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
855
836
if [ -n "${SEMVER}" ]; then
856
- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
837
+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
857
838
fi
858
839
done
859
840
'''
0 commit comments