@@ -277,7 +277,7 @@ pipeline {
277277 # ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
278278 # ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
279279 git clone --branch main --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
280- docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true ghcr.io/linuxserver/jenkins-builder:latest
280+ docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true -e PUID=$(id -u) -e PGID=$(id -g) ghcr.io/linuxserver/jenkins-builder:latest
281281 echo "Starting Stage 1 - Jenkinsfile update"
282282 if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
283283 mkdir -p ${TEMPDIR}/repo
@@ -297,7 +297,7 @@ pipeline {
297297 echo "Jenkinsfile is up to date."
298298 fi
299299 echo "Starting Stage 2 - Delete old templates"
300- 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 "
300+ 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"
301301 for i in ${OLD_TEMPLATES}; do
302302 if [[ -f "${i}" ]]; then
303303 TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -493,6 +493,7 @@ pipeline {
493493 --label \" org.opencontainers.image.title=Python\" \
494494 --label \" org.opencontainers.image.description=python image by linuxserver.io\" \
495495 --no-cache --pull -t ${ IMAGE} :${ META_TAG} --platform=linux/amd64 \
496+ --provenance=false --sbom=false \
496497 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
497498 }
498499 }
@@ -523,6 +524,7 @@ pipeline {
523524 --label \" org.opencontainers.image.title=Python\" \
524525 --label \" org.opencontainers.image.description=python image by linuxserver.io\" \
525526 --no-cache --pull -t ${ IMAGE} :amd64-${ META_TAG} --platform=linux/amd64 \
527+ --provenance=false --sbom=false \
526528 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
527529 }
528530 }
@@ -551,6 +553,7 @@ pipeline {
551553 --label \" org.opencontainers.image.title=Python\" \
552554 --label \" org.opencontainers.image.description=python image by linuxserver.io\" \
553555 --no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} --platform=linux/arm64 \
556+ --provenance=false --sbom=false \
554557 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
555558 sh " docker tag ${ IMAGE} :arm64v8-${ META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
556559 retry(5 ) {
@@ -595,7 +598,7 @@ pipeline {
595598 --shm-size=1gb \
596599 -v /var/run/docker.sock:/var/run/docker.sock \
597600 -e IMAGE=\" ${IMAGE}\" \
598- -e DELAY_START =\" ${CI_DELAY}\" \
601+ -e DOCKER_LOGS_TIMEOUT =\" ${CI_DELAY}\" \
599602 -e TAGS=\" ${CI_TAGS}\" \
600603 -e META_TAG=\" ${META_TAG}\" \
601604 -e PORT=\" ${CI_PORT}\" \
@@ -703,35 +706,13 @@ pipeline {
703706 docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
704707 docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
705708 fi
706- docker manifest push --purge ${MANIFESTIMAGE}:alpine319 || :
707- docker manifest create ${MANIFESTIMAGE}:alpine319 ${MANIFESTIMAGE}:amd64-alpine319 ${MANIFESTIMAGE}:arm64v8-alpine319
708- docker manifest annotate ${MANIFESTIMAGE}:alpine319 ${MANIFESTIMAGE}:arm64v8-alpine319 --os linux --arch arm64 --variant v8
709- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
710- docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
711- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
712- docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
713- docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
714- docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
715- if [ -n "${SEMVER}" ]; then
716- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
717- docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
718- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
719- fi
720- token=$(curl -sX GET "https://ghcr.io/token?scope=repository%3Alinuxserver%2F${CONTAINER_NAME}%3Apull" | jq -r '.token')
721- digest=$(curl -s \
722- --header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
723- --header "Authorization: Bearer ${token}" \
724- "https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-alpine319")
725- if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
726- docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-alpine319 || :
727- docker manifest create ${MANIFESTIMAGE}:arm32v7-alpine319 ${MANIFESTIMAGE}:amd64-alpine319
728- docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-alpine319
729- fi
730- docker manifest push --purge ${MANIFESTIMAGE}:alpine319
731- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
732- docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
709+ done
710+ for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
711+ docker buildx imagetools create -t ${MANIFESTIMAGE}:alpine319 ${MANIFESTIMAGE}:amd64-alpine319 ${MANIFESTIMAGE}:arm64v8-alpine319
712+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
713+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
733714 if [ -n "${SEMVER}" ]; then
734- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
715+ docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
735716 fi
736717 done
737718 '''
0 commit comments