Skip to content

Commit 73ac07a

Browse files
Bot Updating Templated Files
1 parent b32490b commit 73ac07a

File tree

2 files changed

+133
-45
lines changed

2 files changed

+133
-45
lines changed

Jenkinsfile

Lines changed: 122 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ pipeline {
1414
environment {
1515
BUILDS_DISCORD=credentials('build_webhook_url')
1616
GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab')
17+
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
18+
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
1719
EXT_GIT_BRANCH = 'master'
1820
EXT_USER = 'bookstackapp'
1921
EXT_REPO = 'bookstack'
@@ -138,6 +140,9 @@ pipeline {
138140
steps {
139141
script{
140142
env.IMAGE = env.DOCKERHUB_IMAGE
143+
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
144+
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/' + env.CONTAINER_NAME
145+
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
141146
if (env.MULTIARCH == 'true') {
142147
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm32v7-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
143148
} else {
@@ -156,6 +161,9 @@ pipeline {
156161
steps {
157162
script{
158163
env.IMAGE = env.DEV_DOCKERHUB_IMAGE
164+
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
165+
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
166+
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
159167
if (env.MULTIARCH == 'true') {
160168
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm32v7-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
161169
} else {
@@ -174,6 +182,9 @@ pipeline {
174182
steps {
175183
script{
176184
env.IMAGE = env.PR_DOCKERHUB_IMAGE
185+
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
186+
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
187+
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
177188
if (env.MULTIARCH == 'true') {
178189
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
179190
} else {
@@ -281,6 +292,26 @@ pipeline {
281292
}
282293
}
283294
}
295+
/* #######################
296+
GitLab Mirroring
297+
####################### */
298+
// Ping into Gitlab to mirror this repo and have a registry endpoint
299+
stage("GitLab Mirror"){
300+
when {
301+
environment name: 'EXIT_STATUS', value: ''
302+
}
303+
steps{
304+
sh '''curl -H "Content-Type: application/json" -H "Private-Token: ${GITLAB_TOKEN}" -X POST https://gitlab.com/api/v4/projects \
305+
-d '{"namespace_id":'${GITLAB_NAMESPACE}',\
306+
"name":"'${LS_REPO}'",
307+
"mirror":true,\
308+
"import_url":"https://github.com/linuxserver/'${LS_REPO}'.git",\
309+
"issues_access_level":"disabled",\
310+
"merge_requests_access_level":"disabled",\
311+
"repository_access_level":"enabled",\
312+
"visibility":"public"}' '''
313+
}
314+
}
284315
/* ###############
285316
Build Container
286317
############### */
@@ -512,19 +543,32 @@ pipeline {
512543
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
513544
usernameVariable: 'DOCKERUSER',
514545
passwordVariable: 'DOCKERPASS'
546+
],
547+
[
548+
$class: 'UsernamePasswordMultiBinding',
549+
credentialsId: 'Quay.io-Robot',
550+
usernameVariable: 'QUAYUSER',
551+
passwordVariable: 'QUAYPASS'
515552
]
516553
]) {
517-
echo 'Logging into DockerHub'
518554
sh '''#! /bin/bash
519-
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
555+
set -e
556+
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
557+
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
558+
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
559+
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
560+
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
561+
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
562+
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
563+
docker push ${PUSHIMAGE}:latest
564+
docker push ${PUSHIMAGE}:${META_TAG}
565+
done
566+
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
567+
docker rmi \
568+
${DELETEIMAGE}:${META_TAG} \
569+
${DELETEIMAGE}:latest || :
570+
done
520571
'''
521-
sh "docker tag ${IMAGE}:${META_TAG} ${IMAGE}:latest"
522-
sh "docker push ${IMAGE}:latest"
523-
sh "docker push ${IMAGE}:${META_TAG}"
524-
sh '''docker rmi \
525-
${IMAGE}:${META_TAG} \
526-
${IMAGE}:latest || :'''
527-
528572
}
529573
}
530574
}
@@ -541,46 +585,81 @@ pipeline {
541585
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
542586
usernameVariable: 'DOCKERUSER',
543587
passwordVariable: 'DOCKERPASS'
588+
],
589+
[
590+
$class: 'UsernamePasswordMultiBinding',
591+
credentialsId: 'Quay.io-Robot',
592+
usernameVariable: 'QUAYUSER',
593+
passwordVariable: 'QUAYPASS'
544594
]
545595
]) {
546596
sh '''#! /bin/bash
547-
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
548-
'''
549-
sh '''#! /bin/bash
597+
set -e
598+
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
599+
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
600+
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
601+
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
550602
if [ "${CI}" == "false" ]; then
551603
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
552604
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
553605
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
554606
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
555-
fi'''
556-
sh "docker tag ${IMAGE}:amd64-${META_TAG} ${IMAGE}:amd64-latest"
557-
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ${IMAGE}:arm32v7-latest"
558-
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ${IMAGE}:arm64v8-latest"
559-
sh "docker push ${IMAGE}:amd64-${META_TAG}"
560-
sh "docker push ${IMAGE}:arm32v7-${META_TAG}"
561-
sh "docker push ${IMAGE}:arm64v8-${META_TAG}"
562-
sh "docker push ${IMAGE}:amd64-latest"
563-
sh "docker push ${IMAGE}:arm32v7-latest"
564-
sh "docker push ${IMAGE}:arm64v8-latest"
565-
sh "docker manifest push --purge ${IMAGE}:latest || :"
566-
sh "docker manifest create ${IMAGE}:latest ${IMAGE}:amd64-latest ${IMAGE}:arm32v7-latest ${IMAGE}:arm64v8-latest"
567-
sh "docker manifest annotate ${IMAGE}:latest ${IMAGE}:arm32v7-latest --os linux --arch arm"
568-
sh "docker manifest annotate ${IMAGE}:latest ${IMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8"
569-
sh "docker manifest push --purge ${IMAGE}:${META_TAG} || :"
570-
sh "docker manifest create ${IMAGE}:${META_TAG} ${IMAGE}:amd64-${META_TAG} ${IMAGE}:arm32v7-${META_TAG} ${IMAGE}:arm64v8-${META_TAG}"
571-
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm32v7-${META_TAG} --os linux --arch arm"
572-
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8"
573-
sh "docker manifest push --purge ${IMAGE}:latest"
574-
sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
575-
sh '''docker rmi \
576-
${IMAGE}:amd64-${META_TAG} \
577-
${IMAGE}:amd64-latest \
578-
${IMAGE}:arm32v7-${META_TAG} \
579-
${IMAGE}:arm32v7-latest \
580-
${IMAGE}:arm64v8-${META_TAG} \
581-
${IMAGE}:arm64v8-latest \
607+
fi
608+
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
609+
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
610+
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
611+
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
612+
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
613+
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
614+
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
615+
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
616+
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
617+
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
618+
docker push ${MANIFESTIMAGE}:amd64-latest
619+
docker push ${MANIFESTIMAGE}:arm32v7-latest
620+
docker push ${MANIFESTIMAGE}:arm64v8-latest
621+
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
622+
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
623+
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
624+
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
625+
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
626+
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
627+
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
628+
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
629+
docker manifest push --purge ${MANIFESTIMAGE}:latest
630+
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
631+
done
632+
for LEGACYIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}"; do
633+
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
634+
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
635+
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
636+
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
637+
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
638+
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
639+
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
640+
docker push ${LEGACYIMAGE}:amd64-${META_TAG}
641+
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
642+
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
643+
docker push ${LEGACYIMAGE}:latest
644+
docker push ${LEGACYIMAGE}:${META_TAG}
645+
docker push ${LEGACYIMAGE}:arm32v7-latest
646+
docker push ${LEGACYIMAGE}:arm64v8-latest
647+
done
648+
'''
649+
sh '''#! /bin/bash
650+
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
651+
docker rmi \
652+
${DELETEIMAGE}:amd64-${META_TAG} \
653+
${DELETEIMAGE}:amd64-latest \
654+
${DELETEIMAGE}:arm32v7-${META_TAG} \
655+
${DELETEIMAGE}:arm32v7-latest \
656+
${DELETEIMAGE}:arm64v8-${META_TAG} \
657+
${DELETEIMAGE}:arm64v8-latest || :
658+
done
659+
docker rmi \
582660
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
583-
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
661+
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :
662+
'''
584663
}
585664
}
586665
}
@@ -675,5 +754,8 @@ pipeline {
675754
}
676755
}
677756
}
757+
cleanup {
758+
cleanWs()
759+
}
678760
}
679761
}

README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@
44
[![Discord](https://img.shields.io/discord/354974912613449730.svg?style=flat-square&color=E68523&label=Discord&logo=discord&logoColor=FFFFFF)](https://discord.gg/YWrKVTn "realtime support / chat with the community and the team.")
55
[![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?style=flat-square&color=E68523&logo=discourse&logoColor=FFFFFF)](https://discourse.linuxserver.io "post on our community forum.")
66
[![Fleet](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.")
7+
[![GitHub](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitHub&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver "view the source for all of our repositories.")
78
[![Podcast](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Podcast)](https://anchor.fm/linuxserverio "on hiatus. Coming back soon (late 2018).")
8-
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?style=flat-square&color=E68523&label=Open%20Collective%20Supporters)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
9+
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?style=flat-square&color=E68523&label=Supporters&logo=open%20collective&logoColor=FFFFFF)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
910

1011
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring :-
1112

@@ -20,15 +21,20 @@ Find us at:
2021
* [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team.
2122
* [Discourse](https://discourse.linuxserver.io) - post on our community forum.
2223
* [Fleet](https://fleet.linuxserver.io) - an online web interface which displays all of our maintained images.
24+
* [GitHub](https://github.com/linuxserver) - view the source for all of our repositories.
2325
* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
2426
* [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
2527

2628
# [linuxserver/bookstack](https://github.com/linuxserver/docker-bookstack)
27-
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-bookstack.svg?style=flat-square&color=E68523)](https://github.com/linuxserver/docker-bookstack/releases)
29+
30+
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-bookstack.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-bookstack)
31+
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-bookstack.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-bookstack/releases)
32+
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitHub%20Package&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-bookstack/packages)
33+
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab&logoColor=FFFFFF)](https://gitlab.com/Linuxserver.io/docker-bookstack/container_registry)
34+
[![Quay.io](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/bookstack)
2835
[![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/bookstack.svg?style=flat-square&color=E68523)](https://microbadger.com/images/linuxserver/bookstack "Get your own version badge on microbadger.com")
29-
[![MicroBadger Size](https://img.shields.io/microbadger/image-size/linuxserver/bookstack.svg?style=flat-square&color=E68523)](https://microbadger.com/images/linuxserver/bookstack "Get your own version badge on microbadger.com")
30-
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/bookstack.svg?style=flat-square&color=E68523)](https://hub.docker.com/r/linuxserver/bookstack)
31-
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/bookstack.svg?style=flat-square&color=E68523)](https://hub.docker.com/r/linuxserver/bookstack)
36+
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/bookstack.svg?style=flat-square&color=E68523&label=pulls&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/bookstack)
37+
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/bookstack.svg?style=flat-square&color=E68523&label=stars&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/bookstack)
3238
[![Build Status](https://ci.linuxserver.io/view/all/job/Docker-Pipeline-Builders/job/docker-bookstack/job/master/badge/icon?style=flat-square)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-bookstack/job/master/)
3339
[![](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/bookstack/latest/badge.svg)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/bookstack/latest/index.html)
3440

0 commit comments

Comments
 (0)