Skip to content

Commit fa62b5d

Browse files
committed
Switching to new Base images, shift to arm32v7 tag.
1 parent d216383 commit fa62b5d

File tree

5 files changed

+67
-43
lines changed

5 files changed

+67
-43
lines changed

Dockerfile.aarch64

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
FROM lsiobase/alpine.arm64:3.9
2-
3-
# Add qemu to run on x86_64 systems
4-
COPY qemu-aarch64-static /usr/bin
1+
FROM lsiobase/alpine:arm64v8-3.9
52

63
# set version label
74
ARG BUILD_DATE

Dockerfile.armhf

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
FROM lsiobase/alpine.armhf:3.9
2-
3-
# Add qemu to run on x86_64 systems
4-
COPY qemu-arm-static /usr/bin
1+
FROM lsiobase/alpine:arm32v7-3.9
52

63
# set version label
74
ARG BUILD_DATE

Jenkinsfile

Lines changed: 61 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ pipeline {
123123
script{
124124
env.IMAGE = env.DOCKERHUB_IMAGE
125125
if (env.MULTIARCH == 'true') {
126-
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm32v6-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
126+
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
127127
} else {
128128
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
129129
}
@@ -141,7 +141,7 @@ pipeline {
141141
script{
142142
env.IMAGE = env.DEV_DOCKERHUB_IMAGE
143143
if (env.MULTIARCH == 'true') {
144-
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm32v6-' + 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
144+
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
145145
} else {
146146
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
147147
}
@@ -159,7 +159,7 @@ pipeline {
159159
script{
160160
env.IMAGE = env.PR_DOCKERHUB_IMAGE
161161
if (env.MULTIARCH == 'true') {
162-
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm32v6-' + 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
162+
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
163163
} else {
164164
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
165165
}
@@ -169,6 +169,35 @@ pipeline {
169169
}
170170
}
171171
}
172+
// Run ShellCheck
173+
stage('ShellCheck') {
174+
when {
175+
environment name: 'CI', value: 'true'
176+
}
177+
steps {
178+
withCredentials([
179+
string(credentialsId: 'spaces-key', variable: 'DO_KEY'),
180+
string(credentialsId: 'spaces-secret', variable: 'DO_SECRET')
181+
]) {
182+
script{
183+
env.SHELLCHECK_URL = 'https://lsio-ci.ams3.digitaloceanspaces.com/' + env.IMAGE + '/' + env.META_TAG + '/shellcheck-result.xml'
184+
}
185+
sh '''curl -sL https://raw.githubusercontent.com/linuxserver/docker-shellcheck/master/checkrun.sh | /bin/bash'''
186+
sh '''#! /bin/bash
187+
set -e
188+
docker pull lsiodev/spaces-file-upload:latest
189+
docker run --rm \
190+
-e DESTINATION=\"${IMAGE}/${META_TAG}/shellcheck-result.xml\" \
191+
-e FILE_NAME="shellcheck-result.xml" \
192+
-e MIMETYPE="text/xml" \
193+
-v ${WORKSPACE}:/mnt \
194+
-e SECRET_KEY=\"${DO_SECRET}\" \
195+
-e ACCESS_KEY=\"${DO_KEY}\" \
196+
-t lsiodev/spaces-file-upload:latest \
197+
python /upload.py'''
198+
}
199+
}
200+
}
172201
// Use helper containers to render templated files
173202
stage('Update-Templates') {
174203
when {
@@ -243,7 +272,7 @@ pipeline {
243272
environment name: 'EXIT_STATUS', value: ''
244273
}
245274
steps {
246-
sh "docker build --no-cache -t ${IMAGE}:${META_TAG} \
275+
sh "docker build --no-cache --pull -t ${IMAGE}:${META_TAG} \
247276
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
248277
}
249278
}
@@ -256,7 +285,7 @@ pipeline {
256285
parallel {
257286
stage('Build X86') {
258287
steps {
259-
sh "docker build --no-cache -t ${IMAGE}:amd64-${META_TAG} \
288+
sh "docker build --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
260289
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
261290
}
262291
}
@@ -279,13 +308,13 @@ pipeline {
279308
'''
280309
sh "curl https://lsio-ci.ams3.digitaloceanspaces.com/qemu-arm-static -o qemu-arm-static"
281310
sh "chmod +x qemu-*"
282-
sh "docker build --no-cache -f Dockerfile.armhf -t ${IMAGE}:arm32v6-${META_TAG} \
311+
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
283312
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
284-
sh "docker tag ${IMAGE}:arm32v6-${META_TAG} lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
285-
sh "docker push lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
313+
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
314+
sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
286315
sh '''docker rmi \
287-
${IMAGE}:arm32v6-${META_TAG} \
288-
lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} '''
316+
${IMAGE}:arm32v7-${META_TAG} \
317+
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} '''
289318
}
290319
}
291320
}
@@ -308,7 +337,7 @@ pipeline {
308337
'''
309338
sh "curl https://lsio-ci.ams3.digitaloceanspaces.com/qemu-aarch64-static -o qemu-aarch64-static"
310339
sh "chmod +x qemu-*"
311-
sh "docker build --no-cache -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
340+
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
312341
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
313342
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
314343
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
@@ -338,13 +367,13 @@ pipeline {
338367
fi
339368
if [ "${DIST_IMAGE}" == "alpine" ]; then
340369
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
341-
apk info > packages && \
342-
apk info -v > versions && \
343-
paste -d " " packages versions > /tmp/package_versions.txt && \
370+
apk info -v > /tmp/package_versions.txt && \
371+
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
344372
chmod 777 /tmp/package_versions.txt'
345373
elif [ "${DIST_IMAGE}" == "ubuntu" ]; then
346374
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
347-
apt list -qq --installed | cut -d" " -f1-2 > /tmp/package_versions.txt && \
375+
apt list -qq --installed | sed "s#/.*now ##g" | cut -d" " -f1 > /tmp/package_versions.txt && \
376+
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
348377
chmod 777 /tmp/package_versions.txt'
349378
fi
350379
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
@@ -424,9 +453,9 @@ pipeline {
424453
set -e
425454
docker pull lsiodev/ci:latest
426455
if [ "${MULTIARCH}" == "true" ]; then
427-
docker pull lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}
456+
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
428457
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
429-
docker tag lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v6-${META_TAG}
458+
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
430459
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
431460
fi
432461
docker run --rm \
@@ -503,38 +532,38 @@ pipeline {
503532
'''
504533
sh '''#! /bin/bash
505534
if [ "${CI}" == "false" ]; then
506-
docker pull lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}
535+
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
507536
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
508-
docker tag lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v6-${META_TAG}
537+
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
509538
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
510539
fi'''
511540
sh "docker tag ${IMAGE}:amd64-${META_TAG} ${IMAGE}:amd64-latest"
512-
sh "docker tag ${IMAGE}:arm32v6-${META_TAG} ${IMAGE}:arm32v6-latest"
541+
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ${IMAGE}:arm32v7-latest"
513542
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ${IMAGE}:arm64v8-latest"
514543
sh "docker push ${IMAGE}:amd64-${META_TAG}"
515-
sh "docker push ${IMAGE}:arm32v6-${META_TAG}"
544+
sh "docker push ${IMAGE}:arm32v7-${META_TAG}"
516545
sh "docker push ${IMAGE}:arm64v8-${META_TAG}"
517546
sh "docker push ${IMAGE}:amd64-latest"
518-
sh "docker push ${IMAGE}:arm32v6-latest"
547+
sh "docker push ${IMAGE}:arm32v7-latest"
519548
sh "docker push ${IMAGE}:arm64v8-latest"
520549
sh "docker manifest push --purge ${IMAGE}:latest || :"
521-
sh "docker manifest create ${IMAGE}:latest ${IMAGE}:amd64-latest ${IMAGE}:arm32v6-latest ${IMAGE}:arm64v8-latest"
522-
sh "docker manifest annotate ${IMAGE}:latest ${IMAGE}:arm32v6-latest --os linux --arch arm"
550+
sh "docker manifest create ${IMAGE}:latest ${IMAGE}:amd64-latest ${IMAGE}:arm32v7-latest ${IMAGE}:arm64v8-latest"
551+
sh "docker manifest annotate ${IMAGE}:latest ${IMAGE}:arm32v7-latest --os linux --arch arm"
523552
sh "docker manifest annotate ${IMAGE}:latest ${IMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8"
524553
sh "docker manifest push --purge ${IMAGE}:${META_TAG} || :"
525-
sh "docker manifest create ${IMAGE}:${META_TAG} ${IMAGE}:amd64-${META_TAG} ${IMAGE}:arm32v6-${META_TAG} ${IMAGE}:arm64v8-${META_TAG}"
526-
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm32v6-${META_TAG} --os linux --arch arm"
554+
sh "docker manifest create ${IMAGE}:${META_TAG} ${IMAGE}:amd64-${META_TAG} ${IMAGE}:arm32v7-${META_TAG} ${IMAGE}:arm64v8-${META_TAG}"
555+
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm32v7-${META_TAG} --os linux --arch arm"
527556
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8"
528557
sh "docker manifest push --purge ${IMAGE}:latest"
529558
sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
530559
sh '''docker rmi \
531560
${IMAGE}:amd64-${META_TAG} \
532561
${IMAGE}:amd64-latest \
533-
${IMAGE}:arm32v6-${META_TAG} \
534-
${IMAGE}:arm32v6-latest \
562+
${IMAGE}:arm32v7-${META_TAG} \
563+
${IMAGE}:arm32v7-latest \
535564
${IMAGE}:arm64v8-${META_TAG} \
536565
${IMAGE}:arm64v8-latest \
537-
lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} \
566+
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
538567
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} '''
539568
}
540569
}
@@ -605,7 +634,7 @@ pipeline {
605634
}
606635
steps {
607636
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/issues/${PULL_REQUEST}/comments \
608-
-d '{"body": "I am a bot, here are the test results for this PR '${CI_URL}'"}' '''
637+
-d '{"body": "I am a bot, here are the test results for this PR: \\n'${CI_URL}' \\n'${SHELLCHECK_URL}'"}' '''
609638
}
610639
}
611640
}
@@ -620,12 +649,12 @@ pipeline {
620649
}
621650
else if (currentBuild.currentResult == "SUCCESS"){
622651
sh ''' curl -X POST --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 1681177,\
623-
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**Status:** Success\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
652+
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** Success\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
624653
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
625654
}
626655
else {
627656
sh ''' curl -X POST --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 16711680,\
628-
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**Status:** failure\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
657+
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** failure\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
629658
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
630659
}
631660
}

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ Find us at:
1212
* [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team.
1313
* [IRC](https://irc.linuxserver.io) - on freenode at `#linuxserver.io`. Our primary support channel is Discord.
1414
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
15-
* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
1615

1716
# [linuxserver/ldap-auth](https://github.com/linuxserver/docker-ldap-auth)
1817
[![](https://img.shields.io/discord/354974912613449730.svg?logo=discord&label=LSIO%20Discord&style=flat-square)](https://discord.gg/YWrKVTn)
@@ -39,7 +38,7 @@ The architectures supported by this image are:
3938
| :----: | --- |
4039
| x86-64 | amd64-latest |
4140
| arm64 | arm64v8-latest |
42-
| armhf | arm32v6-latest |
41+
| armhf | arm32v7-latest |
4342

4443

4544
## Usage
@@ -138,6 +137,7 @@ Below are the instructions for updating containers:
138137

139138
## Versions
140139

140+
* **23.03.19:** - Switching to new Base images, shift to arm32v7 tag.
141141
* **22.02.19:** - Rebasing to alpine 3.9.
142142
* **18.09.18:** - Update pip
143143
* **14.09.18:** - Add TZ parameter, remove unnecessary PUID/PGID params

readme-vars.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_
1111
available_architectures:
1212
- { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
1313
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
14-
- { arch: "{{ arch_armhf }}", tag: "arm32v6-latest"}
14+
- { arch: "{{ arch_armhf }}", tag: "arm32v7-latest"}
1515

1616
# container parameters
1717
common_param_env_vars_enabled: false
@@ -34,6 +34,7 @@ app_setup_block: |
3434
3535
# changelog
3636
changelogs:
37+
- { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." }
3738
- { date: "22.02.19:", desc: "Rebasing to alpine 3.9." }
3839
- { date: "18.09.18:", desc: "Update pip" }
3940
- { date: "14.09.18:", desc: "Add TZ parameter, remove unnecessary PUID/PGID params" }

0 commit comments

Comments
 (0)