From 00c76b58d3e9ce48983c834c6d1e6b684222d8c9 Mon Sep 17 00:00:00 2001
From: LinuxServer-CI <ci@linuxserver.io>
Date: Tue, 28 Apr 2020 03:55:51 +0000
Subject: [PATCH] Bot Updating Templated Files

---
 .github/FUNDING.yml |   1 +
 Jenkinsfile         | 142 ++++++++++++++++++++++++--------------------
 2 files changed, 77 insertions(+), 66 deletions(-)

diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index 7972213..7eaac77 100755
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -1 +1,2 @@
+github: linuxserver
 open_collective: linuxserver
diff --git a/Jenkinsfile b/Jenkinsfile
index d55acb8..c25e9d0 100755
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -345,7 +345,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} || :'''
@@ -372,7 +374,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} || :'''
@@ -537,18 +541,22 @@ pipeline {
             passwordVariable: 'QUAYPASS'
           ]
         ]) {
+          retry(5) {
+            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}:xenial
+                    docker push ${PUSHIMAGE}:xenial
+                    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}:xenial
-                  docker push ${PUSHIMAGE}:xenial
-                  docker push ${PUSHIMAGE}:${META_TAG}
-                done
                 for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
                   docker rmi \
                   ${DELETEIMAGE}:${META_TAG} \
@@ -579,59 +587,61 @@ pipeline {
             passwordVariable: 'QUAYPASS'
           ]
         ]) {
-          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-xenial
-                  docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-xenial
-                  docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-xenial
-                  docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
-                  docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
-                  docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
-                  docker push ${MANIFESTIMAGE}:amd64-xenial
-                  docker push ${MANIFESTIMAGE}:arm32v7-xenial
-                  docker push ${MANIFESTIMAGE}:arm64v8-xenial
-                  docker manifest push --purge ${MANIFESTIMAGE}:xenial || :
-                  docker manifest create ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:amd64-xenial ${MANIFESTIMAGE}:arm32v7-xenial ${MANIFESTIMAGE}:arm64v8-xenial
-                  docker manifest annotate ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:arm32v7-xenial --os linux --arch arm
-                  docker manifest annotate ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:arm64v8-xenial --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}:xenial
-                  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}:xenial
-                  docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
-                  docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-xenial
-                  docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-xenial
-                  docker push ${LEGACYIMAGE}:amd64-${META_TAG}
-                  docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
-                  docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
-                  docker push ${LEGACYIMAGE}:xenial
-                  docker push ${LEGACYIMAGE}:${META_TAG}
-                  docker push ${LEGACYIMAGE}:arm32v7-xenial
-                  docker push ${LEGACYIMAGE}:arm64v8-xenial
-                done
-             '''
+          retry(5) {
+            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-xenial
+                    docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-xenial
+                    docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-xenial
+                    docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
+                    docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
+                    docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
+                    docker push ${MANIFESTIMAGE}:amd64-xenial
+                    docker push ${MANIFESTIMAGE}:arm32v7-xenial
+                    docker push ${MANIFESTIMAGE}:arm64v8-xenial
+                    docker manifest push --purge ${MANIFESTIMAGE}:xenial || :
+                    docker manifest create ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:amd64-xenial ${MANIFESTIMAGE}:arm32v7-xenial ${MANIFESTIMAGE}:arm64v8-xenial
+                    docker manifest annotate ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:arm32v7-xenial --os linux --arch arm
+                    docker manifest annotate ${MANIFESTIMAGE}:xenial ${MANIFESTIMAGE}:arm64v8-xenial --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}:xenial
+                    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}:xenial
+                    docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
+                    docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-xenial
+                    docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-xenial
+                    docker push ${LEGACYIMAGE}:amd64-${META_TAG}
+                    docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
+                    docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
+                    docker push ${LEGACYIMAGE}:xenial
+                    docker push ${LEGACYIMAGE}:${META_TAG}
+                    docker push ${LEGACYIMAGE}:arm32v7-xenial
+                    docker push ${LEGACYIMAGE}:arm64v8-xenial
+                  done
+               '''
+          }
         }
       }
     }
-- 
GitLab