@@ -357,7 +357,9 @@ pipeline {
357
357
sh " docker build --no-cache --pull -f Dockerfile.armhf -t ${ IMAGE} :arm32v7-${ META_TAG} \
358
358
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ META_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
359
359
sh " docker tag ${ IMAGE} :arm32v7-${ META_TAG} lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
360
- sh " docker push lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
360
+ retry(5 ) {
361
+ sh " docker push lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
362
+ }
361
363
sh ''' docker rmi \
362
364
${IMAGE}:arm32v7-${META_TAG} \
363
365
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -384,7 +386,9 @@ pipeline {
384
386
sh " docker build --no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} \
385
387
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ META_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
386
388
sh " docker tag ${ IMAGE} :arm64v8-${ META_TAG} lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
387
- sh " docker push lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
389
+ retry(5 ) {
390
+ sh " docker push lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
391
+ }
388
392
sh ''' docker rmi \
389
393
${IMAGE}:arm64v8-${META_TAG} \
390
394
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -549,18 +553,22 @@ pipeline {
549
553
passwordVariable : ' QUAYPASS'
550
554
]
551
555
]) {
556
+ retry(5 ) {
557
+ sh ''' #! /bin/bash
558
+ set -e
559
+ echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
560
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
561
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
562
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
563
+ for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
564
+ docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
565
+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
566
+ docker push ${PUSHIMAGE}:latest
567
+ docker push ${PUSHIMAGE}:${META_TAG}
568
+ done
569
+ '''
570
+ }
552
571
sh ''' #! /bin/bash
553
- set -e
554
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
555
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
556
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
557
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
558
- for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
559
- docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
560
- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
561
- docker push ${PUSHIMAGE}:latest
562
- docker push ${PUSHIMAGE}:${META_TAG}
563
- done
564
572
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
565
573
docker rmi \
566
574
${DELETEIMAGE}:${META_TAG} \
@@ -591,59 +599,61 @@ pipeline {
591
599
passwordVariable : ' QUAYPASS'
592
600
]
593
601
]) {
594
- sh ''' #! /bin/bash
595
- set -e
596
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
597
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
598
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
599
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
600
- if [ "${CI}" == "false" ]; then
601
- docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
602
- docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
603
- docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
604
- docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
605
- fi
606
- for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
607
- docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
608
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
609
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
610
- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
611
- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
612
- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
613
- docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
614
- docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
615
- docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
616
- docker push ${MANIFESTIMAGE}:amd64-latest
617
- docker push ${MANIFESTIMAGE}:arm32v7-latest
618
- docker push ${MANIFESTIMAGE}:arm64v8-latest
619
- docker manifest push --purge ${MANIFESTIMAGE}:latest || :
620
- docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
621
- docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
622
- docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
623
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
624
- docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
625
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
626
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
627
- docker manifest push --purge ${MANIFESTIMAGE}:latest
628
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
629
- done
630
- for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
631
- docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
632
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
633
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
634
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
635
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
636
- docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
637
- docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
638
- docker push ${LEGACYIMAGE}:amd64-${META_TAG}
639
- docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
640
- docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
641
- docker push ${LEGACYIMAGE}:latest
642
- docker push ${LEGACYIMAGE}:${META_TAG}
643
- docker push ${LEGACYIMAGE}:arm32v7-latest
644
- docker push ${LEGACYIMAGE}:arm64v8-latest
645
- done
646
- '''
602
+ retry(5 ) {
603
+ sh ''' #! /bin/bash
604
+ set -e
605
+ echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
606
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
607
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
608
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
609
+ if [ "${CI}" == "false" ]; then
610
+ docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
611
+ docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
612
+ docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
613
+ docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
614
+ fi
615
+ for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
616
+ docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
617
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
618
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
619
+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
620
+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
621
+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
622
+ docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
623
+ docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
624
+ docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
625
+ docker push ${MANIFESTIMAGE}:amd64-latest
626
+ docker push ${MANIFESTIMAGE}:arm32v7-latest
627
+ docker push ${MANIFESTIMAGE}:arm64v8-latest
628
+ docker manifest push --purge ${MANIFESTIMAGE}:latest || :
629
+ docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
630
+ docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
631
+ docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
632
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
633
+ docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
634
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
635
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
636
+ docker manifest push --purge ${MANIFESTIMAGE}:latest
637
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
638
+ done
639
+ for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
640
+ docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
641
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
642
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
643
+ docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
644
+ docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
645
+ docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
646
+ docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
647
+ docker push ${LEGACYIMAGE}:amd64-${META_TAG}
648
+ docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
649
+ docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
650
+ docker push ${LEGACYIMAGE}:latest
651
+ docker push ${LEGACYIMAGE}:${META_TAG}
652
+ docker push ${LEGACYIMAGE}:arm32v7-latest
653
+ docker push ${LEGACYIMAGE}:arm64v8-latest
654
+ done
655
+ '''
656
+ }
647
657
sh ''' #! /bin/bash
648
658
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
649
659
docker rmi \
0 commit comments