|
|
@@ -138,7 +138,6 @@ pipeline {
|
|
|
steps {
|
|
|
script{
|
|
|
env.IMAGE = env.DOCKERHUB_IMAGE
|
|
|
- env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
|
|
|
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/' + env.CONTAINER_NAME
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
@@ -159,7 +158,6 @@ pipeline {
|
|
|
steps {
|
|
|
script{
|
|
|
env.IMAGE = env.DEV_DOCKERHUB_IMAGE
|
|
|
- env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
|
|
|
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
@@ -180,7 +178,6 @@ pipeline {
|
|
|
steps {
|
|
|
script{
|
|
|
env.IMAGE = env.PR_DOCKERHUB_IMAGE
|
|
|
- env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
|
|
|
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
@@ -357,7 +354,9 @@ pipeline {
|
|
|
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
|
|
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
|
|
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
- sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
+ retry(5) {
|
|
|
+ sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
+ }
|
|
|
sh '''docker rmi \
|
|
|
${IMAGE}:arm32v7-${META_TAG} \
|
|
|
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
|
|
|
@@ -384,7 +383,9 @@ pipeline {
|
|
|
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
|
|
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
|
|
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
- sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
+ retry(5) {
|
|
|
+ sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
|
|
+ }
|
|
|
sh '''docker rmi \
|
|
|
${IMAGE}:arm64v8-${META_TAG} \
|
|
|
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
|
|
|
@@ -541,27 +542,24 @@ pipeline {
|
|
|
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
|
|
usernameVariable: 'DOCKERUSER',
|
|
|
passwordVariable: 'DOCKERPASS'
|
|
|
- ],
|
|
|
- [
|
|
|
- $class: 'UsernamePasswordMultiBinding',
|
|
|
- credentialsId: 'Quay.io-Robot',
|
|
|
- usernameVariable: 'QUAYUSER',
|
|
|
- passwordVariable: 'QUAYPASS'
|
|
|
]
|
|
|
]) {
|
|
|
+ retry(5) {
|
|
|
+ sh '''#! /bin/bash
|
|
|
+ set -e
|
|
|
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
|
|
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
|
|
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
|
|
+ for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
|
|
+ docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
|
|
+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:release-4.2
|
|
|
+ docker push ${PUSHIMAGE}:release-4.2
|
|
|
+ docker push ${PUSHIMAGE}:${META_TAG}
|
|
|
+ done
|
|
|
+ '''
|
|
|
+ }
|
|
|
sh '''#! /bin/bash
|
|
|
- set -e
|
|
|
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
|
|
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
|
|
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
|
|
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
|
|
- for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
|
|
- docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
|
|
- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:release-4.2
|
|
|
- docker push ${PUSHIMAGE}:release-4.2
|
|
|
- docker push ${PUSHIMAGE}:${META_TAG}
|
|
|
- done
|
|
|
- for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
|
|
|
+ for DELETEIMAGE in "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
|
|
|
docker rmi \
|
|
|
${DELETEIMAGE}:${META_TAG} \
|
|
|
${DELETEIMAGE}:release-4.2 || :
|
|
|
@@ -583,69 +581,62 @@ pipeline {
|
|
|
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
|
|
usernameVariable: 'DOCKERUSER',
|
|
|
passwordVariable: 'DOCKERPASS'
|
|
|
- ],
|
|
|
- [
|
|
|
- $class: 'UsernamePasswordMultiBinding',
|
|
|
- credentialsId: 'Quay.io-Robot',
|
|
|
- usernameVariable: 'QUAYUSER',
|
|
|
- passwordVariable: 'QUAYPASS'
|
|
|
]
|
|
|
]) {
|
|
|
+ retry(5) {
|
|
|
+ sh '''#! /bin/bash
|
|
|
+ set -e
|
|
|
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
|
|
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
|
|
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
|
|
+ if [ "${CI}" == "false" ]; then
|
|
|
+ docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
|
|
|
+ docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
|
|
|
+ docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
|
|
|
+ docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
|
|
|
+ fi
|
|
|
+ for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
|
|
|
+ docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
|
|
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-release-4.2
|
|
|
+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-release-4.2
|
|
|
+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
+ docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
+ docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
|
|
+ docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
+ docker push ${MANIFESTIMAGE}:amd64-release-4.2
|
|
|
+ docker push ${MANIFESTIMAGE}:arm32v7-release-4.2
|
|
|
+ docker push ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
+ docker manifest push --purge ${MANIFESTIMAGE}:release-4.2 || :
|
|
|
+ docker manifest create ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:amd64-release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
+ docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 --os linux --arch arm
|
|
|
+ docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2 --os linux --arch arm64 --variant v8
|
|
|
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
|
|
+ docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
|
|
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
|
|
+ docker manifest push --purge ${MANIFESTIMAGE}:release-4.2
|
|
|
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
|
|
+ done
|
|
|
+ docker tag ${IMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:amd64-${META_TAG}
|
|
|
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${GITHUBIMAGE}:arm32v7-${META_TAG}
|
|
|
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${GITHUBIMAGE}:arm64v8-${META_TAG}
|
|
|
+ docker tag ${GITHUBIMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:release-4.2
|
|
|
+ docker tag ${GITHUBIMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:${META_TAG}
|
|
|
+ docker tag ${GITHUBIMAGE}:arm32v7-${META_TAG} ${GITHUBIMAGE}:arm32v7-release-4.2
|
|
|
+ docker tag ${GITHUBIMAGE}:arm64v8-${META_TAG} ${GITHUBIMAGE}:arm64v8-release-4.2
|
|
|
+ docker push ${GITHUBIMAGE}:amd64-${META_TAG}
|
|
|
+ docker push ${GITHUBIMAGE}:arm32v7-${META_TAG}
|
|
|
+ docker push ${GITHUBIMAGE}:arm64v8-${META_TAG}
|
|
|
+ docker push ${GITHUBIMAGE}:release-4.2
|
|
|
+ docker push ${GITHUBIMAGE}:${META_TAG}
|
|
|
+ docker push ${GITHUBIMAGE}:arm32v7-release-4.2
|
|
|
+ docker push ${GITHUBIMAGE}:arm64v8-release-4.2
|
|
|
+ '''
|
|
|
+ }
|
|
|
sh '''#! /bin/bash
|
|
|
- set -e
|
|
|
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
|
|
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
|
|
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
|
|
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
|
|
- if [ "${CI}" == "false" ]; then
|
|
|
- docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
|
|
|
- docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
|
|
|
- docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
|
|
|
- docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
|
|
|
- fi
|
|
|
- for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
|
|
|
- docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
|
|
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-release-4.2
|
|
|
- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-release-4.2
|
|
|
- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
- docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
- docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
|
|
- docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
- docker push ${MANIFESTIMAGE}:amd64-release-4.2
|
|
|
- docker push ${MANIFESTIMAGE}:arm32v7-release-4.2
|
|
|
- docker push ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
- docker manifest push --purge ${MANIFESTIMAGE}:release-4.2 || :
|
|
|
- docker manifest create ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:amd64-release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2
|
|
|
- docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 --os linux --arch arm
|
|
|
- docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2 --os linux --arch arm64 --variant v8
|
|
|
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
|
|
- docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
|
|
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
|
|
- docker manifest push --purge ${MANIFESTIMAGE}:release-4.2
|
|
|
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
|
|
- done
|
|
|
- for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
|
|
- docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
|
|
|
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
|
|
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
|
|
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:release-4.2
|
|
|
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
|
|
|
- docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-release-4.2
|
|
|
- docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-release-4.2
|
|
|
- docker push ${LEGACYIMAGE}:amd64-${META_TAG}
|
|
|
- docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
|
|
- docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
|
|
- docker push ${LEGACYIMAGE}:release-4.2
|
|
|
- docker push ${LEGACYIMAGE}:${META_TAG}
|
|
|
- docker push ${LEGACYIMAGE}:arm32v7-release-4.2
|
|
|
- docker push ${LEGACYIMAGE}:arm64v8-release-4.2
|
|
|
- done
|
|
|
- '''
|
|
|
- sh '''#! /bin/bash
|
|
|
- for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
|
|
+ for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
|
|
docker rmi \
|
|
|
${DELETEIMAGE}:amd64-${META_TAG} \
|
|
|
${DELETEIMAGE}:amd64-release-4.2 \
|