@@ -50,7 +50,7 @@ pipeline {
5050 env. CODE_URL = ' https://github.com/' + env. LS_USER + ' /' + env. LS_REPO + ' /commit/' + env. GIT_COMMIT
5151 env. DOCKERHUB_LINK = ' https://hub.docker.com/r/' + env. DOCKERHUB_IMAGE + ' /tags/'
5252 env. PULL_REQUEST = env. CHANGE_ID
53- env. TEMPLATED_FILES = ' Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml'
53+ env. TEMPLATED_FILES = ' Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/call_invalid_helper.yml ./.github/workflows/permissions .yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml'
5454 }
5555 script{
5656 env. LS_RELEASE_NUMBER = sh(
@@ -269,7 +269,7 @@ pipeline {
269269 echo "Jenkinsfile is up to date."
270270 fi
271271 # Stage 2 - Delete old templates
272- OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md"
272+ OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md\n .github/ISSUE_TEMPLATE/issue.bug.md \n .github/ISSUE_TEMPLATE/issue.feature.md "
273273 for i in ${OLD_TEMPLATES}; do
274274 if [[ -f "${i}" ]]; then
275275 TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -413,7 +413,8 @@ pipeline {
413413 }
414414 steps {
415415 echo " Running on node: ${ NODE_NAME} "
416- sh " docker build \
416+ sh " sed -r -i 's|(^FROM .*)|\\ 1\\ n\\ nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
417+ sh " docker buildx build \
417418 --label \" org.opencontainers.image.created=${ GITHUB_DATE} \" \
418419 --label \" org.opencontainers.image.authors=linuxserver.io\" \
419420 --label \" org.opencontainers.image.url=https://github.com/linuxserver/docker-readme-sync/packages\" \
@@ -426,7 +427,7 @@ pipeline {
426427 --label \" org.opencontainers.image.ref.name=${ COMMIT_SHA} \" \
427428 --label \" org.opencontainers.image.title=Readme-sync\" \
428429 --label \" org.opencontainers.image.description=readme-sync image by linuxserver.io\" \
429- --no-cache --pull -t ${ IMAGE} :${ META_TAG} \
430+ --no-cache --pull -t ${ IMAGE} :${ META_TAG} --platform=linux/amd64 \
430431 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
431432 }
432433 }
@@ -443,7 +444,8 @@ pipeline {
443444 stage(' Build X86' ) {
444445 steps {
445446 echo " Running on node: ${ NODE_NAME} "
446- sh " docker build \
447+ sh " sed -r -i 's|(^FROM .*)|\\ 1\\ n\\ nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
448+ sh " docker buildx build \
447449 --label \" org.opencontainers.image.created=${ GITHUB_DATE} \" \
448450 --label \" org.opencontainers.image.authors=linuxserver.io\" \
449451 --label \" org.opencontainers.image.url=https://github.com/linuxserver/docker-readme-sync/packages\" \
@@ -456,7 +458,7 @@ pipeline {
456458 --label \" org.opencontainers.image.ref.name=${ COMMIT_SHA} \" \
457459 --label \" org.opencontainers.image.title=Readme-sync\" \
458460 --label \" org.opencontainers.image.description=readme-sync image by linuxserver.io\" \
459- --no-cache --pull -t ${ IMAGE} :amd64-${ META_TAG} \
461+ --no-cache --pull -t ${ IMAGE} :amd64-${ META_TAG} --platform=linux/amd64 \
460462 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
461463 }
462464 }
@@ -470,7 +472,8 @@ pipeline {
470472 sh ''' #! /bin/bash
471473 echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
472474 '''
473- sh " docker build \
475+ sh " sed -r -i 's|(^FROM .*)|\\ 1\\ n\\ nENV LSIO_FIRST_PARTY=true|g' Dockerfile.armhf"
476+ sh " docker buildx build \
474477 --label \" org.opencontainers.image.created=${ GITHUB_DATE} \" \
475478 --label \" org.opencontainers.image.authors=linuxserver.io\" \
476479 --label \" org.opencontainers.image.url=https://github.com/linuxserver/docker-readme-sync/packages\" \
@@ -483,7 +486,7 @@ pipeline {
483486 --label \" org.opencontainers.image.ref.name=${ COMMIT_SHA} \" \
484487 --label \" org.opencontainers.image.title=Readme-sync\" \
485488 --label \" org.opencontainers.image.description=readme-sync image by linuxserver.io\" \
486- --no-cache --pull -f Dockerfile.armhf -t ${ IMAGE} :arm32v7-${ META_TAG} \
489+ --no-cache --pull -f Dockerfile.armhf -t ${ IMAGE} :arm32v7-${ META_TAG} --platform=linux/arm/v7 \
487490 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
488491 sh " docker tag ${ IMAGE} :arm32v7-${ META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
489492 retry(5 ) {
@@ -504,7 +507,8 @@ pipeline {
504507 sh ''' #! /bin/bash
505508 echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
506509 '''
507- sh " docker build \
510+ sh " sed -r -i 's|(^FROM .*)|\\ 1\\ n\\ nENV LSIO_FIRST_PARTY=true|g' Dockerfile.aarch64"
511+ sh " docker buildx build \
508512 --label \" org.opencontainers.image.created=${ GITHUB_DATE} \" \
509513 --label \" org.opencontainers.image.authors=linuxserver.io\" \
510514 --label \" org.opencontainers.image.url=https://github.com/linuxserver/docker-readme-sync/packages\" \
@@ -517,7 +521,7 @@ pipeline {
517521 --label \" org.opencontainers.image.ref.name=${ COMMIT_SHA} \" \
518522 --label \" org.opencontainers.image.title=Readme-sync\" \
519523 --label \" org.opencontainers.image.description=readme-sync image by linuxserver.io\" \
520- --no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} \
524+ --no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} --platform=linux/arm64 \
521525 --build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ VERSION_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
522526 sh " docker tag ${ IMAGE} :arm64v8-${ META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
523527 retry(5 ) {
@@ -546,26 +550,12 @@ pipeline {
546550 else
547551 LOCAL_CONTAINER=${IMAGE}:${META_TAG}
548552 fi
549- if [ "${DIST_IMAGE}" == "alpine" ]; then
550- docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
551- apk info -v > /tmp/package_versions.txt && \
552- sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
553- chmod 777 /tmp/package_versions.txt'
554- elif [ "${DIST_IMAGE}" == "ubuntu" ]; then
555- docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
556- apt list -qq --installed | sed "s#/.*now ##g" | cut -d" " -f1 > /tmp/package_versions.txt && \
557- sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
558- chmod 777 /tmp/package_versions.txt'
559- elif [ "${DIST_IMAGE}" == "fedora" ]; then
560- docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
561- rpm -qa > /tmp/package_versions.txt && \
562- sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
563- chmod 777 /tmp/package_versions.txt'
564- elif [ "${DIST_IMAGE}" == "arch" ]; then
565- docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
566- pacman -Q > /tmp/package_versions.txt && \
567- chmod 777 /tmp/package_versions.txt'
568- fi
553+ touch ${TEMPDIR}/package_versions.txt
554+ docker run --rm \
555+ -v /var/run/docker.sock:/var/run/docker.sock:ro \
556+ -v ${TEMPDIR}:/tmp \
557+ ghcr.io/anchore/syft:latest \
558+ ${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
569559 NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
570560 echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
571561 if [ "${NEW_PACKAGE_TAG}" != "${PACKAGE_TAG}" ]; then
@@ -776,33 +766,33 @@ pipeline {
776766 echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
777767 if [ "${CI}" == "false" ]; then
778768 docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
779- docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
780769 docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
770+ docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
781771 docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
782772 fi
783773 for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
784774 docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
785- docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
786- docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
787775 docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
788- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
789- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
790776 docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
777+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
778+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
791779 docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
780+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
781+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
792782 docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
793783 if [ -n "${SEMVER}" ]; then
794784 docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
795785 docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
796786 docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
797787 fi
798788 docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
799- docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
800- docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
789+ docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
801790 docker push ${MANIFESTIMAGE}:amd64-latest
791+ docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
802792 docker push ${MANIFESTIMAGE}:arm32v7-latest
803- docker push ${MANIFESTIMAGE}:arm64v8-latest
804- docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
805793 docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
794+ docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
795+ docker push ${MANIFESTIMAGE}:arm64v8-latest
806796 docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
807797 if [ -n "${SEMVER}" ]; then
808798 docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
@@ -948,12 +938,12 @@ pipeline {
948938 sh ' echo "build aborted"'
949939 }
950940 else if (currentBuild. currentResult == " SUCCESS" ){
951- sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot .png","embeds": [{"color": 1681177,\
941+ sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar .png","embeds": [{"color": 1681177,\
952942 "description": "**Build:** '${BUILD_NUMBER}'\\ n**CI Results:** '${CI_URL}'\\ n**ShellCheck Results:** '${SHELLCHECK_URL}'\\ n**Status:** Success\\ n**Job:** '${RUN_DISPLAY_URL}'\\ n**Change:** '${CODE_URL}'\\ n**External Release:**: '${RELEASE_LINK}'\\ n**DockerHub:** '${DOCKERHUB_LINK}'\\ n"}],\
953943 "username": "Jenkins"}' ${BUILDS_DISCORD} '''
954944 }
955945 else {
956- sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot .png","embeds": [{"color": 16711680,\
946+ sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar .png","embeds": [{"color": 16711680,\
957947 "description": "**Build:** '${BUILD_NUMBER}'\\ n**CI Results:** '${CI_URL}'\\ n**ShellCheck Results:** '${SHELLCHECK_URL}'\\ n**Status:** failure\\ n**Job:** '${RUN_DISPLAY_URL}'\\ n**Change:** '${CODE_URL}'\\ n**External Release:**: '${RELEASE_LINK}'\\ n**DockerHub:** '${DOCKERHUB_LINK}'\\ n"}],\
958948 "username": "Jenkins"}' ${BUILDS_DISCORD} '''
959949 }
0 commit comments