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