@@ -120,12 +120,11 @@ pipeline {
120
120
script : ''' echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''' ,
121
121
returnStdout : true ). trim()
122
122
123
- env. SEMVER = (new Date ()). format(' YYYY.MM.dd' )
124
- def semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)\. (\d +)$/
123
+ def semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)\. (\d +)/
125
124
if (semver. find()) {
126
125
env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
127
126
} else {
128
- semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)$ /
127
+ semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)/
129
128
if (semver. find()) {
130
129
if (semver[0 ][3 ]) {
131
130
env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
@@ -135,7 +134,15 @@ pipeline {
135
134
}
136
135
}
137
136
138
- println (" SEMVER: ${ env.SEMVER} " )
137
+ if (env. SEMVER != null ) {
138
+ if (BRANCH_NAME != " master" && BRANCH_NAME != " main" ) {
139
+ env. SEMVER = " ${ env.SEMVER} -${ BRANCH_NAME} "
140
+ }
141
+ println (" SEMVER: ${ env.SEMVER} " )
142
+ } else {
143
+ println (" No SEMVER detected" )
144
+ }
145
+
139
146
}
140
147
}
141
148
}
@@ -404,33 +411,21 @@ pipeline {
404
411
steps{
405
412
sh ''' #! /bin/bash
406
413
set -e
407
- PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/packages | jq -r '.[] | select(.name=="linuxserver/plex") | .uuid')
414
+ PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/ packages | jq -r '.[] | select(.name=="linuxserver/plex") | .uuid')
408
415
if [ -z "${PACKAGE_UUID}" ]; then
409
416
echo "Adding package to Scarf.sh"
410
- PACKAGE_UUID=$( curl -sX POST https://scarf.sh/api/v1/packages \
417
+ curl -sX POST https://scarf.sh/api/v1/organizations/linuxserver-ci /packages \
411
418
-H "Authorization: Bearer ${SCARF_TOKEN}" \
412
419
-H "Content-Type: application/json" \
413
420
-d '{"name":"linuxserver/plex",\
414
421
"shortDescription":"example description",\
415
422
"libraryType":"docker",\
416
423
"website":"https://github.com/linuxserver/docker-plex",\
417
424
"backendUrl":"https://ghcr.io/linuxserver/plex",\
418
- "publicUrl":"https://lscr.io/linuxserver/plex"}' \
419
- | jq -r .uuid)
425
+ "publicUrl":"https://lscr.io/linuxserver/plex"}' || :
420
426
else
421
427
echo "Package already exists on Scarf.sh"
422
428
fi
423
- echo "Setting permissions on Scarf.sh for package ${PACKAGE_UUID}"
424
- curl -X POST https://scarf.sh/api/v1/packages/${PACKAGE_UUID}/permissions \
425
- -H "Authorization: Bearer ${SCARF_TOKEN}" \
426
- -H "Content-Type: application/json" \
427
- -d '[{"userQuery":"Spad","permissionLevel":"admin"},\
428
- {"userQuery":"roxedus","permissionLevel":"admin"},\
429
- {"userQuery":"nemchik","permissionLevel":"admin"},\
430
- {"userQuery":"driz","permissionLevel":"admin"},\
431
- {"userQuery":"aptalca","permissionLevel":"admin"},\
432
- {"userQuery":"saarg","permissionLevel":"admin"},\
433
- {"userQuery":"Stark","permissionLevel":"admin"}]'
434
429
'''
435
430
}
436
431
}
@@ -754,11 +749,15 @@ pipeline {
754
749
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
755
750
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
756
751
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
757
- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
752
+ if [ -n "${SEMVER}" ]; then
753
+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
754
+ fi
758
755
docker push ${PUSHIMAGE}:latest
759
756
docker push ${PUSHIMAGE}:${META_TAG}
760
757
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
761
- docker push ${PUSHIMAGE}:${SEMVER}
758
+ if [ -n "${SEMVER}" ]; then
759
+ docker push ${PUSHIMAGE}:${SEMVER}
760
+ fi
762
761
done
763
762
'''
764
763
}
@@ -767,8 +766,10 @@ pipeline {
767
766
docker rmi \
768
767
${DELETEIMAGE}:${META_TAG} \
769
768
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
770
- ${DELETEIMAGE}:latest \
771
- ${DELETEIMAGE}:${SEMVER} || :
769
+ ${DELETEIMAGE}:latest || :
770
+ if [ -n "${SEMVER}" ]; then
771
+ docker rmi ${DELETEIMAGE}:${SEMVER} || :
772
+ fi
772
773
done
773
774
'''
774
775
}
@@ -818,9 +819,11 @@ pipeline {
818
819
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
819
820
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
820
821
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
821
- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
822
- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
823
- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
822
+ if [ -n "${SEMVER}" ]; then
823
+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
824
+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
825
+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
826
+ fi
824
827
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
825
828
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
826
829
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
@@ -830,9 +833,11 @@ pipeline {
830
833
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
831
834
docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
832
835
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
833
- docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
834
- docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
835
- docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
836
+ if [ -n "${SEMVER}" ]; then
837
+ docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
838
+ docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
839
+ docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
840
+ fi
836
841
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
837
842
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
838
843
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
@@ -845,14 +850,18 @@ pipeline {
845
850
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
846
851
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
847
852
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
848
- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
849
- docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
850
- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
851
- docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
853
+ if [ -n "${SEMVER}" ]; then
854
+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
855
+ docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
856
+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
857
+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
858
+ fi
852
859
docker manifest push --purge ${MANIFESTIMAGE}:latest
853
860
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
854
861
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
855
- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
862
+ if [ -n "${SEMVER}" ]; then
863
+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
864
+ fi
856
865
done
857
866
'''
858
867
}
@@ -862,15 +871,18 @@ pipeline {
862
871
${DELETEIMAGE}:amd64-${META_TAG} \
863
872
${DELETEIMAGE}:amd64-latest \
864
873
${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
865
- ${DELETEIMAGE}:amd64-${SEMVER} \
866
874
${DELETEIMAGE}:arm32v7-${META_TAG} \
867
875
${DELETEIMAGE}:arm32v7-latest \
868
876
${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
869
- ${DELETEIMAGE}:arm32v7-${SEMVER} \
870
877
${DELETEIMAGE}:arm64v8-${META_TAG} \
871
878
${DELETEIMAGE}:arm64v8-latest \
872
- ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} \
873
- ${DELETEIMAGE}:arm64v8-${SEMVER} || :
879
+ ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
880
+ if [ -n "${SEMVER}" ]; then
881
+ docker rmi \
882
+ ${DELETEIMAGE}:amd64-${SEMVER} \
883
+ ${DELETEIMAGE}:arm32v7-${SEMVER} \
884
+ ${DELETEIMAGE}:arm64v8-${SEMVER} || :
885
+ fi
874
886
done
875
887
docker rmi \
876
888
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
0 commit comments