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

Commit 6c41792

Browse files
Bot Updating Templated Files
1 parent a578cdb commit 6c41792

File tree

2 files changed

+54
-13
lines changed

2 files changed

+54
-13
lines changed

Jenkinsfile

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ pipeline {
3838
script: '''curl -s https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases | jq -r 'first(.[] | select(.prerelease == true)) | .tag_name' ''',
3939
returnStdout: true).trim()
4040
env.LS_RELEASE_NOTES = sh(
41-
script: '''git log -1 --pretty=%B | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
41+
script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
4242
returnStdout: true).trim()
4343
env.GITHUB_DATE = sh(
4444
script: '''date '+%Y-%m-%dT%H:%M:%S%:z' ''',
@@ -282,6 +282,9 @@ pipeline {
282282
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
283283
sh "docker tag ${IMAGE}:arm32v6-${META_TAG} lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
284284
sh "docker push lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER}"
285+
sh '''docker rmi \
286+
${IMAGE}:arm32v6-${META_TAG} \
287+
lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} '''
285288
}
286289
}
287290
}
@@ -308,6 +311,9 @@ pipeline {
308311
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
309312
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
310313
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
314+
sh '''docker rmi \
315+
${IMAGE}:arm64v8-${META_TAG} \
316+
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} '''
311317
}
312318
}
313319
}
@@ -337,7 +343,7 @@ pipeline {
337343
chmod 777 /tmp/package_versions.txt'
338344
elif [ "${DIST_IMAGE}" == "ubuntu" ]; then
339345
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
340-
apt list -qq --installed > /tmp/package_versions.txt && \
346+
apt list -qq --installed | cut -d" " -f1-2 > /tmp/package_versions.txt && \
341347
chmod 777 /tmp/package_versions.txt'
342348
fi
343349
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
@@ -469,6 +475,10 @@ pipeline {
469475
sh "docker tag ${IMAGE}:${META_TAG} ${IMAGE}:LTS"
470476
sh "docker push ${IMAGE}:LTS"
471477
sh "docker push ${IMAGE}:${META_TAG}"
478+
sh '''docker rmi \
479+
${IMAGE}:${META_TAG} \
480+
${IMAGE}:LTS '''
481+
472482
}
473483
}
474484
}
@@ -516,6 +526,15 @@ pipeline {
516526
sh "docker manifest annotate ${IMAGE}:${META_TAG} ${IMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8"
517527
sh "docker manifest push --purge ${IMAGE}:LTS"
518528
sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
529+
sh '''docker rmi \
530+
${IMAGE}:amd64-${META_TAG} \
531+
${IMAGE}:amd64-LTS \
532+
${IMAGE}:arm32v6-${META_TAG} \
533+
${IMAGE}:arm32v6-LTS \
534+
${IMAGE}:arm64v8-${META_TAG} \
535+
${IMAGE}:arm64v8-LTS \
536+
lsiodev/buildcache:arm32v6-${COMMIT_SHA}-${BUILD_NUMBER} \
537+
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} '''
519538
}
520539
}
521540
}
@@ -576,6 +595,18 @@ pipeline {
576595
}
577596
}
578597
}
598+
// If this is a Pull request send the CI link as a comment on it
599+
stage('Pull Request Comment') {
600+
when {
601+
not {environment name: 'CHANGE_ID', value: ''}
602+
environment name: 'CI', value: 'true'
603+
environment name: 'EXIT_STATUS', value: ''
604+
}
605+
steps {
606+
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/issues/${PULL_REQUEST}/comments \
607+
-d '{"body": "I am a bot, here are the test results for this PR '${CI_URL}'"}' '''
608+
}
609+
}
579610
}
580611
/* ######################
581612
Send status to Discord

README.md

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ Here are some example snippets to help you get started creating a container.
5252
```
5353
docker create \
5454
--name=unifi-controller \
55-
-e PUID=1001 \
56-
-e PGID=1001 \
55+
-e PUID=1000 \
56+
-e PGID=1000 \
5757
-p 3478:3478/udp \
5858
-p 10001:10001/udp \
5959
-p 8080:8080 \
@@ -95,8 +95,8 @@ services:
9595
image: linuxserver/unifi-controller
9696
container_name: unifi-controller
9797
environment:
98-
- PUID=1001
99-
- PGID=1001
98+
- PUID=1000
99+
- PGID=1000
100100
volumes:
101101
- <path to data>:/config
102102
ports:
@@ -108,7 +108,6 @@ services:
108108
- 8843:8843
109109
- 8880:8880
110110
- 6789:6789
111-
mem_limit: 4096m
112111
restart: unless-stopped
113112
```
114113

@@ -126,8 +125,8 @@ Container images are configured using parameters passed at runtime (such as thos
126125
| `-p 8843` | Unifi communication port |
127126
| `-p 8880` | Unifi communication port |
128127
| `-p 6789` | For throughput test |
129-
| `-e PUID=1001` | for UserID - see below for explanation |
130-
| `-e PGID=1001` | for GroupID - see below for explanation |
128+
| `-e PUID=1000` | for UserID - see below for explanation |
129+
| `-e PGID=1000` | for GroupID - see below for explanation |
131130
| `-v /config` | All Unifi data stored here |
132131

133132
## User / Group Identifiers
@@ -136,11 +135,11 @@ When using volumes (`-v` flags) permissions issues can arise between the host OS
136135

137136
Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.
138137

139-
In this instance `PUID=1001` and `PGID=1001`, to find yours use `id user` as below:
138+
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
140139

141140
```
142141
$ id username
143-
uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
142+
uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
144143
```
145144

146145

@@ -186,9 +185,20 @@ Below are the instructions for updating containers:
186185
* Start the new container: `docker start unifi-controller`
187186
* You can also remove the old dangling images: `docker image prune`
188187

188+
### Via Taisun auto-updater (especially useful if you don't remember the original parameters)
189+
* Pull the latest image at its tag and replace it with the same env variables in one shot:
190+
```
191+
docker run --rm \
192+
-v /var/run/docker.sock:/var/run/docker.sock taisun/updater \
193+
--oneshot unifi-controller
194+
```
195+
* You can also remove the old dangling images: `docker image prune`
196+
189197
### Via Docker Compose
190-
* Update the image: `docker-compose pull linuxserver/unifi-controller`
191-
* Let compose update containers as necessary: `docker-compose up -d`
198+
* Update all images: `docker-compose pull`
199+
* or update a single image: `docker-compose pull unifi-controller`
200+
* Let compose update all containers as necessary: `docker-compose up -d`
201+
* or update a single container: `docker-compose up -d unifi-controller`
192202
* You can also remove the old dangling images: `docker image prune`
193203

194204
## Versions

0 commit comments

Comments
 (0)