Skip to content

Commit 51f2667

Browse files
committed
add backport priority
1 parent c574046 commit 51f2667

File tree

8 files changed

+104
-77
lines changed

8 files changed

+104
-77
lines changed

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
github: linuxserver
12
open_collective: linuxserver
23
custom: ["https://www.wireguard.com/donations/",]

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ RUN \
1313
echo "**** install dependencies ****" && \
1414
apt-get update && \
1515
apt-get install -y \
16+
bc \
1617
curl \
1718
dkms \
1819
gnupg \
@@ -22,7 +23,6 @@ RUN \
2223
iputils-ping \
2324
libc6 \
2425
perl \
25-
bc \
2626
qrencode && \
2727
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E1B39B6EF6DDB96564797591AE33835F504A1A25 && \
2828
echo "deb http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic main" >> /etc/apt/sources.list.d/wireguard.list && \

Dockerfile.aarch64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ RUN \
1313
echo "**** install dependencies ****" && \
1414
apt-get update && \
1515
apt-get install -y \
16+
bc \
1617
curl \
1718
dkms \
1819
gnupg \
@@ -22,7 +23,6 @@ RUN \
2223
iputils-ping \
2324
libc6 \
2425
perl \
25-
bc \
2626
qrencode && \
2727
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E1B39B6EF6DDB96564797591AE33835F504A1A25 && \
2828
echo "deb http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic main" >> /etc/apt/sources.list.d/wireguard.list && \

Dockerfile.armhf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ RUN \
1313
echo "**** install dependencies ****" && \
1414
apt-get update && \
1515
apt-get install -y \
16+
bc \
1617
curl \
1718
dkms \
1819
gnupg \
@@ -22,7 +23,6 @@ RUN \
2223
iputils-ping \
2324
libc6 \
2425
perl \
25-
bc \
2626
qrencode && \
2727
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E1B39B6EF6DDB96564797591AE33835F504A1A25 && \
2828
echo "deb http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic main" >> /etc/apt/sources.list.d/wireguard.list && \

Jenkinsfile

Lines changed: 76 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,9 @@ pipeline {
347347
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
348348
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
349349
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
350-
sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
350+
retry(5) {
351+
sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
352+
}
351353
sh '''docker rmi \
352354
${IMAGE}:arm32v7-${META_TAG} \
353355
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -374,7 +376,9 @@ pipeline {
374376
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
375377
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
376378
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
377-
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
379+
retry(5) {
380+
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
381+
}
378382
sh '''docker rmi \
379383
${IMAGE}:arm64v8-${META_TAG} \
380384
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
@@ -539,18 +543,22 @@ pipeline {
539543
passwordVariable: 'QUAYPASS'
540544
]
541545
]) {
546+
retry(5) {
547+
sh '''#! /bin/bash
548+
set -e
549+
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
550+
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
551+
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
552+
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
553+
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
554+
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
555+
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
556+
docker push ${PUSHIMAGE}:latest
557+
docker push ${PUSHIMAGE}:${META_TAG}
558+
done
559+
'''
560+
}
542561
sh '''#! /bin/bash
543-
set -e
544-
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
545-
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
546-
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
547-
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
548-
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
549-
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
550-
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
551-
docker push ${PUSHIMAGE}:latest
552-
docker push ${PUSHIMAGE}:${META_TAG}
553-
done
554562
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
555563
docker rmi \
556564
${DELETEIMAGE}:${META_TAG} \
@@ -581,59 +589,61 @@ pipeline {
581589
passwordVariable: 'QUAYPASS'
582590
]
583591
]) {
584-
sh '''#! /bin/bash
585-
set -e
586-
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
587-
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
588-
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
589-
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
590-
if [ "${CI}" == "false" ]; then
591-
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
592-
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
593-
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
594-
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
595-
fi
596-
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
597-
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
598-
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
599-
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
600-
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
601-
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
602-
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
603-
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
604-
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
605-
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
606-
docker push ${MANIFESTIMAGE}:amd64-latest
607-
docker push ${MANIFESTIMAGE}:arm32v7-latest
608-
docker push ${MANIFESTIMAGE}:arm64v8-latest
609-
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
610-
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
611-
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
612-
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
613-
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
614-
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
615-
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
616-
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
617-
docker manifest push --purge ${MANIFESTIMAGE}:latest
618-
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
619-
done
620-
for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
621-
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
622-
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
623-
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
624-
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
625-
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
626-
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
627-
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
628-
docker push ${LEGACYIMAGE}:amd64-${META_TAG}
629-
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
630-
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
631-
docker push ${LEGACYIMAGE}:latest
632-
docker push ${LEGACYIMAGE}:${META_TAG}
633-
docker push ${LEGACYIMAGE}:arm32v7-latest
634-
docker push ${LEGACYIMAGE}:arm64v8-latest
635-
done
636-
'''
592+
retry(5) {
593+
sh '''#! /bin/bash
594+
set -e
595+
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
596+
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
597+
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
598+
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
599+
if [ "${CI}" == "false" ]; then
600+
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
601+
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
602+
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
603+
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
604+
fi
605+
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
606+
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
607+
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
608+
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
609+
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
610+
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
611+
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
612+
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
613+
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
614+
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
615+
docker push ${MANIFESTIMAGE}:amd64-latest
616+
docker push ${MANIFESTIMAGE}:arm32v7-latest
617+
docker push ${MANIFESTIMAGE}:arm64v8-latest
618+
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
619+
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
620+
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
621+
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
622+
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
623+
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
624+
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
625+
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
626+
docker manifest push --purge ${MANIFESTIMAGE}:latest
627+
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
628+
done
629+
for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
630+
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
631+
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
632+
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
633+
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
634+
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
635+
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
636+
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
637+
docker push ${LEGACYIMAGE}:amd64-${META_TAG}
638+
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
639+
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
640+
docker push ${LEGACYIMAGE}:latest
641+
docker push ${LEGACYIMAGE}:${META_TAG}
642+
docker push ${LEGACYIMAGE}:arm32v7-latest
643+
docker push ${LEGACYIMAGE}:arm64v8-latest
644+
done
645+
'''
646+
}
637647
sh '''#! /bin/bash
638648
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
639649
docker rmi \

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
257257

258258
## Versions
259259

260-
* **26.04.20:** - Add Buster backports repo for Debian.
260+
* **28.04.20:** - Add Buster backports repo for Debian.
261261
* **20.04.20:** - Fix typo in client mode conf existence check.
262262
* **13.04.20:** - Fix bug that forced conf recreation on every start.
263263
* **08.04.20:** - Add arm32/64 builds and enable multi-arch (rpi4 with ubuntu and raspbian buster tested). Add CoreDNS for `PEERDNS=auto` setting. Update the `add-peer`/`show-peer` scripts to utilize the templates and the `INTERNAL_SUBNET` var (previously missed, oops).

readme-vars.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ app_setup_block: |
7878
7979
# changelog
8080
changelogs:
81-
- { date: "26.04.20:", desc: "Add Buster backports repo for Debian." }
81+
- { date: "28.04.20:", desc: "Add Buster backports repo for Debian." }
8282
- { date: "20.04.20:", desc: "Fix typo in client mode conf existence check." }
8383
- { date: "13.04.20:", desc: "Fix bug that forced conf recreation on every start." }
8484
- { date: "08.04.20:", desc: "Add arm32/64 builds and enable multi-arch (rpi4 with ubuntu and raspbian buster tested). Add CoreDNS for `PEERDNS=auto` setting. Update the `add-peer`/`show-peer` scripts to utilize the templates and the `INTERNAL_SUBNET` var (previously missed, oops)." }

root/etc/cont-init.d/30-config

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,18 +41,34 @@ elif uname -v | grep -q 'Debian'; then
4141
> /etc/apt/sources.list.d/debian.list
4242
apt-get update
4343
if apt-cache show linux-headers-$(uname -r) 2&>1 >/dev/null; then
44-
apt-get install -y \
45-
linux-headers-$(uname -r) \
46-
wireguard
44+
if uname -r | grep -qs "bpo"; then
45+
echo "Backported kernel detected"
46+
apt-get install -y -t buster-backports \
47+
linux-headers-$(uname -r)
48+
apt-get install -y \
49+
wireguard
50+
else
51+
apt-get install -y \
52+
linux-headers-$(uname -r) \
53+
wireguard
54+
fi
4755
else
4856
echo "Attempting to install kernel headers from the Debian Stretch repo"
4957
curl -s https://ftp-master.debian.org/keys/archive-key-9.asc | apt-key add -
5058
sed -i 's/buster/stretch/g' /etc/apt/sources.list.d/debian.list
5159
apt-get update
5260
if apt-cache show linux-headers-$(uname -r) 2&>1 >/dev/null; then
53-
apt-get install -y \
54-
linux-headers-$(uname -r) \
55-
wireguard
61+
if uname -r | grep -qs "bpo"; then
62+
echo "Backported kernel detected"
63+
apt-get install -y -t stretch-backports \
64+
linux-headers-$(uname -r)
65+
apt-get install -y \
66+
wireguard
67+
else
68+
apt-get install -y \
69+
linux-headers-$(uname -r) \
70+
wireguard
71+
fi
5672
else
5773
echo "No kernel headers found in Debian repos!! Will try the headers from host (if mapped), may or may not work"
5874
apt-get install -y \

0 commit comments

Comments
 (0)