@@ -347,7 +347,9 @@ pipeline {
347
347
sh " docker build --no-cache --pull -f Dockerfile.armhf -t ${ IMAGE} :arm32v7-${ META_TAG} \
348
348
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ META_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
349
349
sh " docker tag ${ IMAGE} :arm32v7-${ META_TAG} lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
350
- sh " docker push lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
350
+ retry(5 ) {
351
+ sh " docker push lsiodev/buildcache:arm32v7-${ COMMIT_SHA} -${ BUILD_NUMBER} "
352
+ }
351
353
sh ''' docker rmi \
352
354
${IMAGE}:arm32v7-${META_TAG} \
353
355
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -374,7 +376,9 @@ pipeline {
374
376
sh " docker build --no-cache --pull -f Dockerfile.aarch64 -t ${ IMAGE} :arm64v8-${ META_TAG} \
375
377
--build-arg ${ BUILD_VERSION_ARG} =${ EXT_RELEASE} --build-arg VERSION=\" ${ META_TAG} \" --build-arg BUILD_DATE=${ GITHUB_DATE} ."
376
378
sh " docker tag ${ IMAGE} :arm64v8-${ META_TAG} lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
377
- sh " docker push lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
379
+ retry(5 ) {
380
+ sh " docker push lsiodev/buildcache:arm64v8-${ COMMIT_SHA} -${ BUILD_NUMBER} "
381
+ }
378
382
sh ''' docker rmi \
379
383
${IMAGE}:arm64v8-${META_TAG} \
380
384
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -539,18 +543,22 @@ pipeline {
539
543
passwordVariable : ' QUAYPASS'
540
544
]
541
545
]) {
546
+ retry(5 ) {
547
+ sh ''' #! /bin/bash
548
+ set -e
549
+ echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
550
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
551
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
552
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
553
+ for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
554
+ docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
555
+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
556
+ docker push ${PUSHIMAGE}:latest
557
+ docker push ${PUSHIMAGE}:${META_TAG}
558
+ done
559
+ '''
560
+ }
542
561
sh ''' #! /bin/bash
543
- set -e
544
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
545
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
546
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
547
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
548
- for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
549
- docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
550
- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
551
- docker push ${PUSHIMAGE}:latest
552
- docker push ${PUSHIMAGE}:${META_TAG}
553
- done
554
562
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
555
563
docker rmi \
556
564
${DELETEIMAGE}:${META_TAG} \
@@ -581,59 +589,61 @@ pipeline {
581
589
passwordVariable : ' QUAYPASS'
582
590
]
583
591
]) {
584
- sh ''' #! /bin/bash
585
- set -e
586
- echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
587
- echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
588
- echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
589
- echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
590
- if [ "${CI}" == "false" ]; then
591
- docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
592
- docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
593
- docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
594
- docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
595
- fi
596
- for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
597
- docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
598
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
599
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
600
- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
601
- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
602
- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
603
- docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
604
- docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
605
- docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
606
- docker push ${MANIFESTIMAGE}:amd64-latest
607
- docker push ${MANIFESTIMAGE}:arm32v7-latest
608
- docker push ${MANIFESTIMAGE}:arm64v8-latest
609
- docker manifest push --purge ${MANIFESTIMAGE}:latest || :
610
- docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
611
- docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
612
- docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
613
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
614
- docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
615
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
616
- docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
617
- docker manifest push --purge ${MANIFESTIMAGE}:latest
618
- docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
619
- done
620
- for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
621
- docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
622
- docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
623
- docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
624
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
625
- docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
626
- docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
627
- docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
628
- docker push ${LEGACYIMAGE}:amd64-${META_TAG}
629
- docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
630
- docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
631
- docker push ${LEGACYIMAGE}:latest
632
- docker push ${LEGACYIMAGE}:${META_TAG}
633
- docker push ${LEGACYIMAGE}:arm32v7-latest
634
- docker push ${LEGACYIMAGE}:arm64v8-latest
635
- done
636
- '''
592
+ retry(5 ) {
593
+ sh ''' #! /bin/bash
594
+ set -e
595
+ echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
596
+ echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
597
+ echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
598
+ echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
599
+ if [ "${CI}" == "false" ]; then
600
+ docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
601
+ docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
602
+ docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
603
+ docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
604
+ fi
605
+ for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
606
+ docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
607
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
608
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
609
+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
610
+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
611
+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
612
+ docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
613
+ docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
614
+ docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
615
+ docker push ${MANIFESTIMAGE}:amd64-latest
616
+ docker push ${MANIFESTIMAGE}:arm32v7-latest
617
+ docker push ${MANIFESTIMAGE}:arm64v8-latest
618
+ docker manifest push --purge ${MANIFESTIMAGE}:latest || :
619
+ docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
620
+ docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
621
+ docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
622
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
623
+ docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
624
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
625
+ docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
626
+ docker manifest push --purge ${MANIFESTIMAGE}:latest
627
+ docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
628
+ done
629
+ for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
630
+ docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
631
+ docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
632
+ docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
633
+ docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
634
+ docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
635
+ docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
636
+ docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
637
+ docker push ${LEGACYIMAGE}:amd64-${META_TAG}
638
+ docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
639
+ docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
640
+ docker push ${LEGACYIMAGE}:latest
641
+ docker push ${LEGACYIMAGE}:${META_TAG}
642
+ docker push ${LEGACYIMAGE}:arm32v7-latest
643
+ docker push ${LEGACYIMAGE}:arm64v8-latest
644
+ done
645
+ '''
646
+ }
637
647
sh ''' #! /bin/bash
638
648
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
639
649
docker rmi \
0 commit comments