@@ -128,12 +128,11 @@ pipeline {
128128 script : ''' echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''' ,
129129 returnStdout : true ). trim()
130130
131- env. SEMVER = (new Date ()). format(' YYYY.MM.dd' )
132- def semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)\. (\d +)$/
131+ def semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)\. (\d +)/
133132 if (semver. find()) {
134133 env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
135134 } else {
136- semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)$ /
135+ semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)/
137136 if (semver. find()) {
138137 if (semver[0 ][3 ]) {
139138 env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
@@ -143,7 +142,15 @@ pipeline {
143142 }
144143 }
145144
146- println (" SEMVER: ${ env.SEMVER} " )
145+ if (env. SEMVER != null ) {
146+ if (BRANCH_NAME != " master" && BRANCH_NAME != " main" ) {
147+ env. SEMVER = " ${ env.SEMVER} -${ BRANCH_NAME} "
148+ }
149+ println (" SEMVER: ${ env.SEMVER} " )
150+ } else {
151+ println (" No SEMVER detected" )
152+ }
153+
147154 }
148155 }
149156 }
@@ -412,33 +419,21 @@ pipeline {
412419 steps{
413420 sh ''' #! /bin/bash
414421 set -e
415- PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/packages | jq -r '.[] | select(.name=="linuxserver/couchpotato") | .uuid')
422+ PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/ packages | jq -r '.[] | select(.name=="linuxserver/couchpotato") | .uuid')
416423 if [ -z "${PACKAGE_UUID}" ]; then
417424 echo "Adding package to Scarf.sh"
418- PACKAGE_UUID=$( curl -sX POST https://scarf.sh/api/v1/packages \
425+ curl -sX POST https://scarf.sh/api/v1/organizations/linuxserver-ci /packages \
419426 -H "Authorization: Bearer ${SCARF_TOKEN}" \
420427 -H "Content-Type: application/json" \
421428 -d '{"name":"linuxserver/couchpotato",\
422429 "shortDescription":"example description",\
423430 "libraryType":"docker",\
424431 "website":"https://github.com/linuxserver/docker-couchpotato",\
425432 "backendUrl":"https://ghcr.io/linuxserver/couchpotato",\
426- "publicUrl":"https://lscr.io/linuxserver/couchpotato"}' \
427- | jq -r .uuid)
433+ "publicUrl":"https://lscr.io/linuxserver/couchpotato"}' || :
428434 else
429435 echo "Package already exists on Scarf.sh"
430436 fi
431- echo "Setting permissions on Scarf.sh for package ${PACKAGE_UUID}"
432- curl -X POST https://scarf.sh/api/v1/packages/${PACKAGE_UUID}/permissions \
433- -H "Authorization: Bearer ${SCARF_TOKEN}" \
434- -H "Content-Type: application/json" \
435- -d '[{"userQuery":"Spad","permissionLevel":"admin"},\
436- {"userQuery":"roxedus","permissionLevel":"admin"},\
437- {"userQuery":"nemchik","permissionLevel":"admin"},\
438- {"userQuery":"driz","permissionLevel":"admin"},\
439- {"userQuery":"aptalca","permissionLevel":"admin"},\
440- {"userQuery":"saarg","permissionLevel":"admin"},\
441- {"userQuery":"Stark","permissionLevel":"admin"}]'
442437 '''
443438 }
444439 }
@@ -762,11 +757,15 @@ pipeline {
762757 docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
763758 docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
764759 docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
765- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
760+ if [ -n "${SEMVER}" ]; then
761+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
762+ fi
766763 docker push ${PUSHIMAGE}:latest
767764 docker push ${PUSHIMAGE}:${META_TAG}
768765 docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
769- docker push ${PUSHIMAGE}:${SEMVER}
766+ if [ -n "${SEMVER}" ]; then
767+ docker push ${PUSHIMAGE}:${SEMVER}
768+ fi
770769 done
771770 '''
772771 }
@@ -775,8 +774,10 @@ pipeline {
775774 docker rmi \
776775 ${DELETEIMAGE}:${META_TAG} \
777776 ${DELETEIMAGE}:${EXT_RELEASE_TAG} \
778- ${DELETEIMAGE}:latest \
779- ${DELETEIMAGE}:${SEMVER} || :
777+ ${DELETEIMAGE}:latest || :
778+ if [ -n "${SEMVER}" ]; then
779+ docker rmi ${DELETEIMAGE}:${SEMVER} || :
780+ fi
780781 done
781782 '''
782783 }
@@ -826,9 +827,11 @@ pipeline {
826827 docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
827828 docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
828829 docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
829- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
830- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
831- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
830+ if [ -n "${SEMVER}" ]; then
831+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
832+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
833+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
834+ fi
832835 docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
833836 docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
834837 docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
@@ -838,9 +841,11 @@ pipeline {
838841 docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
839842 docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
840843 docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
841- docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
842- docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
843- docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
844+ if [ -n "${SEMVER}" ]; then
845+ docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
846+ docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
847+ docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
848+ fi
844849 docker manifest push --purge ${MANIFESTIMAGE}:latest || :
845850 docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
846851 docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
@@ -853,14 +858,18 @@ pipeline {
853858 docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
854859 docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
855860 docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
856- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
857- docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
858- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
859- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
861+ if [ -n "${SEMVER}" ]; then
862+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
863+ docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
864+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
865+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
866+ fi
860867 docker manifest push --purge ${MANIFESTIMAGE}:latest
861868 docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
862869 docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
863- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
870+ if [ -n "${SEMVER}" ]; then
871+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
872+ fi
864873 done
865874 '''
866875 }
@@ -870,15 +879,18 @@ pipeline {
870879 ${DELETEIMAGE}:amd64-${META_TAG} \
871880 ${DELETEIMAGE}:amd64-latest \
872881 ${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
873- ${DELETEIMAGE}:amd64-${SEMVER} \
874882 ${DELETEIMAGE}:arm32v7-${META_TAG} \
875883 ${DELETEIMAGE}:arm32v7-latest \
876884 ${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
877- ${DELETEIMAGE}:arm32v7-${SEMVER} \
878885 ${DELETEIMAGE}:arm64v8-${META_TAG} \
879886 ${DELETEIMAGE}:arm64v8-latest \
880- ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} \
881- ${DELETEIMAGE}:arm64v8-${SEMVER} || :
887+ ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
888+ if [ -n "${SEMVER}" ]; then
889+ docker rmi \
890+ ${DELETEIMAGE}:amd64-${SEMVER} \
891+ ${DELETEIMAGE}:arm32v7-${SEMVER} \
892+ ${DELETEIMAGE}:arm64v8-${SEMVER} || :
893+ fi
882894 done
883895 docker rmi \
884896 ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
0 commit comments