@@ -128,12 +128,11 @@ pipeline {
128
128
script : ''' echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''' ,
129
129
returnStdout : true ). trim()
130
130
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 +)/
133
132
if (semver. find()) {
134
133
env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
135
134
} else {
136
- semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)$ /
135
+ semver = env. EXT_RELEASE_CLEAN =~ / (\d +)\. (\d +)(?:\. (\d +))?(.*)/
137
136
if (semver. find()) {
138
137
if (semver[0 ][3 ]) {
139
138
env. SEMVER = " ${ semver[0][1]} .${ semver[0][2]} .${ semver[0][3]} "
@@ -143,7 +142,15 @@ pipeline {
143
142
}
144
143
}
145
144
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
+
147
154
}
148
155
}
149
156
}
@@ -418,33 +425,21 @@ pipeline {
418
425
steps{
419
426
sh ''' #! /bin/bash
420
427
set -e
421
- PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/packages | jq -r '.[] | select(.name=="linuxserver/booksonic") | .uuid')
428
+ PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/ packages | jq -r '.[] | select(.name=="linuxserver/booksonic") | .uuid')
422
429
if [ -z "${PACKAGE_UUID}" ]; then
423
430
echo "Adding package to Scarf.sh"
424
- PACKAGE_UUID=$( curl -sX POST https://scarf.sh/api/v1/packages \
431
+ curl -sX POST https://scarf.sh/api/v1/organizations/linuxserver-ci /packages \
425
432
-H "Authorization: Bearer ${SCARF_TOKEN}" \
426
433
-H "Content-Type: application/json" \
427
434
-d '{"name":"linuxserver/booksonic",\
428
435
"shortDescription":"example description",\
429
436
"libraryType":"docker",\
430
437
"website":"https://github.com/linuxserver/docker-booksonic",\
431
438
"backendUrl":"https://ghcr.io/linuxserver/booksonic",\
432
- "publicUrl":"https://lscr.io/linuxserver/booksonic"}' \
433
- | jq -r .uuid)
439
+ "publicUrl":"https://lscr.io/linuxserver/booksonic"}' || :
434
440
else
435
441
echo "Package already exists on Scarf.sh"
436
442
fi
437
- echo "Setting permissions on Scarf.sh for package ${PACKAGE_UUID}"
438
- curl -X POST https://scarf.sh/api/v1/packages/${PACKAGE_UUID}/permissions \
439
- -H "Authorization: Bearer ${SCARF_TOKEN}" \
440
- -H "Content-Type: application/json" \
441
- -d '[{"userQuery":"Spad","permissionLevel":"admin"},\
442
- {"userQuery":"roxedus","permissionLevel":"admin"},\
443
- {"userQuery":"nemchik","permissionLevel":"admin"},\
444
- {"userQuery":"driz","permissionLevel":"admin"},\
445
- {"userQuery":"aptalca","permissionLevel":"admin"},\
446
- {"userQuery":"saarg","permissionLevel":"admin"},\
447
- {"userQuery":"Stark","permissionLevel":"admin"}]'
448
443
'''
449
444
}
450
445
}
@@ -768,11 +763,15 @@ pipeline {
768
763
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
769
764
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
770
765
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
771
- docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
766
+ if [ -n "${SEMVER}" ]; then
767
+ docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
768
+ fi
772
769
docker push ${PUSHIMAGE}:latest
773
770
docker push ${PUSHIMAGE}:${META_TAG}
774
771
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
775
- docker push ${PUSHIMAGE}:${SEMVER}
772
+ if [ -n "${SEMVER}" ]; then
773
+ docker push ${PUSHIMAGE}:${SEMVER}
774
+ fi
776
775
done
777
776
'''
778
777
}
@@ -781,8 +780,10 @@ pipeline {
781
780
docker rmi \
782
781
${DELETEIMAGE}:${META_TAG} \
783
782
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
784
- ${DELETEIMAGE}:latest \
785
- ${DELETEIMAGE}:${SEMVER} || :
783
+ ${DELETEIMAGE}:latest || :
784
+ if [ -n "${SEMVER}" ]; then
785
+ docker rmi ${DELETEIMAGE}:${SEMVER} || :
786
+ fi
786
787
done
787
788
'''
788
789
}
@@ -832,9 +833,11 @@ pipeline {
832
833
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
833
834
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
834
835
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
835
- docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
836
- docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
837
- docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
836
+ if [ -n "${SEMVER}" ]; then
837
+ docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
838
+ docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
839
+ docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
840
+ fi
838
841
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
839
842
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
840
843
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
@@ -844,9 +847,11 @@ pipeline {
844
847
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
845
848
docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
846
849
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
847
- docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
848
- docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
849
- docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
850
+ if [ -n "${SEMVER}" ]; then
851
+ docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
852
+ docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
853
+ docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
854
+ fi
850
855
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
851
856
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
852
857
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
@@ -859,14 +864,18 @@ pipeline {
859
864
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
860
865
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
861
866
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
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
867
+ if [ -n "${SEMVER}" ]; then
868
+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
869
+ docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
870
+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
871
+ docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
872
+ fi
866
873
docker manifest push --purge ${MANIFESTIMAGE}:latest
867
874
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
868
875
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
869
- docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
876
+ if [ -n "${SEMVER}" ]; then
877
+ docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
878
+ fi
870
879
done
871
880
'''
872
881
}
@@ -876,15 +885,18 @@ pipeline {
876
885
${DELETEIMAGE}:amd64-${META_TAG} \
877
886
${DELETEIMAGE}:amd64-latest \
878
887
${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
879
- ${DELETEIMAGE}:amd64-${SEMVER} \
880
888
${DELETEIMAGE}:arm32v7-${META_TAG} \
881
889
${DELETEIMAGE}:arm32v7-latest \
882
890
${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
883
- ${DELETEIMAGE}:arm32v7-${SEMVER} \
884
891
${DELETEIMAGE}:arm64v8-${META_TAG} \
885
892
${DELETEIMAGE}:arm64v8-latest \
886
- ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} \
887
- ${DELETEIMAGE}:arm64v8-${SEMVER} || :
893
+ ${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
894
+ if [ -n "${SEMVER}" ]; then
895
+ docker rmi \
896
+ ${DELETEIMAGE}:amd64-${SEMVER} \
897
+ ${DELETEIMAGE}:arm32v7-${SEMVER} \
898
+ ${DELETEIMAGE}:arm64v8-${SEMVER} || :
899
+ fi
888
900
done
889
901
docker rmi \
890
902
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
0 commit comments