Skip to content
This repository was archived by the owner on Mar 11, 2024. It is now read-only.

Commit e41117a

Browse files
Bot Updating Templated Files
1 parent 7e88ea9 commit e41117a

File tree

1 file changed

+48
-71
lines changed

1 file changed

+48
-71
lines changed

Jenkinsfile

Lines changed: 48 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,12 @@ pipeline {
3333
// Setup all the basic environment variables needed for the build
3434
stage("Set ENV Variables base"){
3535
steps{
36-
sh '''docker pull quay.io/skopeo/stable:v1 || : '''
36+
sh '''#! /bin/bash
37+
containers=$(docker ps -aq)
38+
if [[ -n "${containers}" ]]; then
39+
docker stop ${containers}
40+
fi
41+
docker system prune -af --volumes || : '''
3742
script{
3843
env.EXIT_STATUS = ''
3944
env.LS_RELEASE = sh(
@@ -196,12 +201,12 @@ pipeline {
196201
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
197202
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
198203
if (env.MULTIARCH == 'true') {
199-
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm32v7-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
204+
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm32v7-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
200205
} else {
201-
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
206+
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
202207
}
203-
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
204-
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
208+
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
209+
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
205210
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
206211
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
207212
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
@@ -399,8 +404,7 @@ pipeline {
399404
}
400405
steps{
401406
sh '''#! /bin/bash
402-
set -e
403-
PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/packages | jq -r '.[] | select(.name=="linuxserver/readme-sync") | .uuid')
407+
PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/packages | jq -r '.[] | select(.name=="linuxserver/readme-sync") | .uuid' || :)
404408
if [ -z "${PACKAGE_UUID}" ]; then
405409
echo "Adding package to Scarf.sh"
406410
curl -sX POST https://scarf.sh/api/v1/organizations/linuxserver-ci/packages \
@@ -510,9 +514,12 @@ pipeline {
510514
retry(5) {
511515
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
512516
}
513-
sh '''docker rmi \
514-
${IMAGE}:arm32v7-${META_TAG} \
515-
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
517+
sh '''#! /bin/bash
518+
containers=$(docker ps -aq)
519+
if [[ -n "${containers}" ]]; then
520+
docker stop ${containers}
521+
fi
522+
docker system prune -af --volumes || : '''
516523
}
517524
}
518525
stage('Build ARM64') {
@@ -545,9 +552,12 @@ pipeline {
545552
retry(5) {
546553
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
547554
}
548-
sh '''docker rmi \
549-
${IMAGE}:arm64v8-${META_TAG} \
550-
ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
555+
sh '''#! /bin/bash
556+
containers=$(docker ps -aq)
557+
if [[ -n "${containers}" ]]; then
558+
docker stop ${containers}
559+
fi
560+
docker system prune -af --volumes || : '''
551561
}
552562
}
553563
}
@@ -608,13 +618,6 @@ pipeline {
608618
environment name: 'EXIT_STATUS', value: ''
609619
}
610620
steps {
611-
sh '''#! /bin/bash
612-
echo "Packages were updated. Cleaning up the image and exiting."
613-
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" == "false" ]; then
614-
docker rmi ${IMAGE}:amd64-${META_TAG}
615-
else
616-
docker rmi ${IMAGE}:${META_TAG}
617-
fi'''
618621
script{
619622
env.EXIT_STATUS = 'ABORTED'
620623
}
@@ -632,13 +635,6 @@ pipeline {
632635
}
633636
}
634637
steps {
635-
sh '''#! /bin/bash
636-
echo "There are no package updates. Cleaning up the image and exiting."
637-
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" == "false" ]; then
638-
docker rmi ${IMAGE}:amd64-${META_TAG}
639-
else
640-
docker rmi ${IMAGE}:${META_TAG}
641-
fi'''
642638
script{
643639
env.EXIT_STATUS = 'ABORTED'
644640
}
@@ -739,17 +735,6 @@ pipeline {
739735
done
740736
'''
741737
}
742-
sh '''#! /bin/bash
743-
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
744-
docker rmi \
745-
${DELETEIMAGE}:${META_TAG} \
746-
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
747-
${DELETEIMAGE}:latest || :
748-
if [ -n "${SEMVER}" ]; then
749-
docker rmi ${DELETEIMAGE}:${SEMVER} || :
750-
fi
751-
done
752-
'''
753738
}
754739
}
755740
}
@@ -843,29 +828,6 @@ pipeline {
843828
done
844829
'''
845830
}
846-
sh '''#! /bin/bash
847-
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
848-
docker rmi \
849-
${DELETEIMAGE}:amd64-${META_TAG} \
850-
${DELETEIMAGE}:amd64-latest \
851-
${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
852-
${DELETEIMAGE}:arm32v7-${META_TAG} \
853-
${DELETEIMAGE}:arm32v7-latest \
854-
${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
855-
${DELETEIMAGE}:arm64v8-${META_TAG} \
856-
${DELETEIMAGE}:arm64v8-latest \
857-
${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
858-
if [ -n "${SEMVER}" ]; then
859-
docker rmi \
860-
${DELETEIMAGE}:amd64-${SEMVER} \
861-
${DELETEIMAGE}:arm32v7-${SEMVER} \
862-
${DELETEIMAGE}:arm64v8-${SEMVER} || :
863-
fi
864-
done
865-
docker rmi \
866-
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
867-
ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :
868-
'''
869831
}
870832
}
871833
}
@@ -936,7 +898,6 @@ pipeline {
936898
stage('Pull Request Comment') {
937899
when {
938900
not {environment name: 'CHANGE_ID', value: ''}
939-
environment name: 'CI', value: 'true'
940901
environment name: 'EXIT_STATUS', value: ''
941902
}
942903
steps {
@@ -990,16 +951,24 @@ pipeline {
990951
echo "$escaped_table"
991952
}
992953
993-
# Retrieve JSON data from URL
994-
data=$(get_json "$CI_JSON_URL")
995-
# Create table from JSON data
996-
table=$(build_table "$data")
997-
echo -e "$table"
954+
if [[ "${CI}" = "true" ]]; then
955+
# Retrieve JSON data from URL
956+
data=$(get_json "$CI_JSON_URL")
957+
# Create table from JSON data
958+
table=$(build_table "$data")
959+
echo -e "$table"
998960
999-
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
1000-
-H "Accept: application/vnd.github.v3+json" \
1001-
"https://api.github.com/repos/$LS_USER/$LS_REPO/issues/$PULL_REQUEST/comments" \
1002-
-d "{\\"body\\": \\"I am a bot, here are the test results for this PR: \\n${CI_URL}\\n${SHELLCHECK_URL}\\n${table}\\"}"'''
961+
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
962+
-H "Accept: application/vnd.github.v3+json" \
963+
"https://api.github.com/repos/$LS_USER/$LS_REPO/issues/$PULL_REQUEST/comments" \
964+
-d "{\\"body\\": \\"I am a bot, here are the test results for this PR: \\n${CI_URL}\\n${SHELLCHECK_URL}\\n${table}\\"}"
965+
else
966+
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
967+
-H "Accept: application/vnd.github.v3+json" \
968+
"https://api.github.com/repos/$LS_USER/$LS_REPO/issues/$PULL_REQUEST/comments" \
969+
-d "{\\"body\\": \\"I am a bot, here is the pushed image/manifest for this PR: \\n\\n\\`${GITHUBIMAGE}:${META_TAG}\\`\\"}"
970+
fi
971+
'''
1003972

1004973
}
1005974
}
@@ -1026,6 +995,14 @@ pipeline {
1026995
}
1027996
}
1028997
cleanup {
998+
sh '''#! /bin/bash
999+
echo "Performing docker system prune!!"
1000+
containers=$(docker ps -aq)
1001+
if [[ -n "${containers}" ]]; then
1002+
docker stop ${containers}
1003+
fi
1004+
docker system prune -af --volumes || :
1005+
'''
10291006
cleanWs()
10301007
}
10311008
}

0 commit comments

Comments
 (0)