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

Commit 6357786

Browse files
Bot Updating Templated Files
1 parent 06198e6 commit 6357786

File tree

2 files changed

+53
-12
lines changed

2 files changed

+53
-12
lines changed

Jenkinsfile

Lines changed: 32 additions & 1 deletion
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/latest | jq -r '. | .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
}
@@ -469,6 +475,10 @@ pipeline {
469475
sh "docker tag ${IMAGE}:${META_TAG} ${IMAGE}:latest"
470476
sh "docker push ${IMAGE}:latest"
471477
sh "docker push ${IMAGE}:${META_TAG}"
478+
sh '''docker rmi \
479+
${IMAGE}:${META_TAG} \
480+
${IMAGE}:latest '''
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}:latest"
518528
sh "docker manifest push --purge ${IMAGE}:${META_TAG}"
529+
sh '''docker rmi \
530+
${IMAGE}:amd64-${META_TAG} \
531+
${IMAGE}:amd64-latest \
532+
${IMAGE}:arm32v6-${META_TAG} \
533+
${IMAGE}:arm32v6-latest \
534+
${IMAGE}:arm64v8-${META_TAG} \
535+
${IMAGE}:arm64v8-latest \
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
@@ -54,8 +54,8 @@ Here are some example snippets to help you get started creating a container.
5454
```
5555
docker create \
5656
--name=quassel-core \
57-
-e PUID=1001 \
58-
-e PGID=1001 \
57+
-e PUID=1000 \
58+
-e PGID=1000 \
5959
-e TZ=Europe/London \
6060
-p 4242:4242 \
6161
-v <path to data>:/config \
@@ -76,14 +76,13 @@ services:
7676
image: linuxserver/quassel-core
7777
container_name: quassel-core
7878
environment:
79-
- PUID=1001
80-
- PGID=1001
79+
- PUID=1000
80+
- PGID=1000
8181
- TZ=Europe/London
8282
volumes:
8383
- <path to data>:/config
8484
ports:
8585
- 4242:4242
86-
mem_limit: 4096m
8786
restart: unless-stopped
8887
```
8988

@@ -94,8 +93,8 @@ Container images are configured using parameters passed at runtime (such as thos
9493
| Parameter | Function |
9594
| :----: | --- |
9695
| `-p 4242` | The port quassel-core listens for connections on. |
97-
| `-e PUID=1001` | for UserID - see below for explanation |
98-
| `-e PGID=1001` | for GroupID - see below for explanation |
96+
| `-e PUID=1000` | for UserID - see below for explanation |
97+
| `-e PGID=1000` | for GroupID - see below for explanation |
9998
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London. |
10099
| `-v /config` | Database and quassel-core configuration storage. |
101100

@@ -105,11 +104,11 @@ When using volumes (`-v` flags) permissions issues can arise between the host OS
105104

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

108-
In this instance `PUID=1001` and `PGID=1001`, to find yours use `id user` as below:
107+
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
109108

110109
```
111110
$ id username
112-
uid=1001(dockeruser) gid=1001(dockergroup) groups=1001(dockergroup)
111+
uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
113112
```
114113

115114

@@ -149,9 +148,20 @@ Below are the instructions for updating containers:
149148
* Start the new container: `docker start quassel-core`
150149
* You can also remove the old dangling images: `docker image prune`
151150

151+
### Via Taisun auto-updater (especially useful if you don't remember the original parameters)
152+
* Pull the latest image at its tag and replace it with the same env variables in one shot:
153+
```
154+
docker run --rm \
155+
-v /var/run/docker.sock:/var/run/docker.sock taisun/updater \
156+
--oneshot quassel-core
157+
```
158+
* You can also remove the old dangling images: `docker image prune`
159+
152160
### Via Docker Compose
153-
* Update the image: `docker-compose pull linuxserver/quassel-core`
154-
* Let compose update containers as necessary: `docker-compose up -d`
161+
* Update all images: `docker-compose pull`
162+
* or update a single image: `docker-compose pull quassel-core`
163+
* Let compose update all containers as necessary: `docker-compose up -d`
164+
* or update a single container: `docker-compose up -d quassel-core`
155165
* You can also remove the old dangling images: `docker image prune`
156166

157167
## Versions

0 commit comments

Comments
 (0)