Compare commits
170
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d27e01a33e | ||
|
|
841179d751 | ||
|
|
8eae2962ab | ||
|
|
59cf4a40b6 | ||
|
|
052a0ec4be | ||
|
|
8cef9f74af | ||
|
|
9956886a8a | ||
|
|
2846848dd4 | ||
|
|
d51f14b6db | ||
|
|
e458652cbb | ||
|
|
231d2e4fb7 | ||
|
|
7ff1300e09 | ||
|
|
217e148d4b | ||
|
|
a7125bcdda | ||
|
|
828a9f14ae | ||
|
|
175703b76a | ||
|
|
cf7653e76b | ||
|
|
9200a1c7e9 | ||
|
|
e5ad1973be | ||
|
|
d1d63db219 | ||
|
|
4dd2389a36 | ||
|
|
7a5a2757e1 | ||
|
|
c6c16b4cb1 | ||
|
|
8e9ab55d84 | ||
|
|
6f40cb383c | ||
|
|
4b0e5d798a | ||
|
|
46345e9b41 | ||
|
|
c548b7dfed | ||
|
|
0b4d7cdc29 | ||
|
|
2592ebdf3c | ||
|
|
48d28e4fca | ||
|
|
2e8c2cda66 | ||
|
|
5a94c2d1bb | ||
|
|
74cd2fdf72 | ||
|
|
b5e43e6023 | ||
|
|
553a44d22f | ||
|
|
bf0a73d8a2 | ||
|
|
8e7b83b40f | ||
|
|
40748a545d | ||
|
|
76b6c295d1 | ||
|
|
99c73e2807 | ||
|
|
34436c8ee0 | ||
|
|
8f9dd9b817 | ||
|
|
ecffaa82b0 | ||
|
|
a06506c306 | ||
|
|
66c9c2305f | ||
|
|
1422f3d533 | ||
|
|
acededb0cb | ||
|
|
9e06068d51 | ||
|
|
9549f1a4dc | ||
|
|
dcd841ee9c | ||
|
|
1f41018a92 | ||
|
|
60fbf2502b | ||
|
|
139ce6b7b3 | ||
|
|
7ceb6a4d96 | ||
|
|
22b5969e1f | ||
|
|
e66f4ce1ad | ||
|
|
65930046a0 | ||
|
|
f1b05cdfb6 | ||
|
|
ce75c340c7 | ||
|
|
b90d04aa37 | ||
|
|
4247f5832e | ||
|
|
9317c437bb | ||
|
|
309792b90e | ||
|
|
0d5fb5449d | ||
|
|
dc89ad5776 | ||
|
|
6b13011f6c | ||
|
|
5648c686cb | ||
|
|
265c11cf1d | ||
|
|
534ee73940 | ||
|
|
7e13352048 | ||
|
|
44a9d2c767 | ||
|
|
c0b380852b | ||
|
|
4218b2e2fe | ||
|
|
3cae9b5a84 | ||
|
|
4084034ca9 | ||
|
|
d27b8a7b58 | ||
|
|
dd854558cb | ||
|
|
e9e3c8134f | ||
|
|
4456d1283e | ||
|
|
c2ea830e49 | ||
|
|
326f88b81a | ||
|
|
a6bbbcb438 | ||
|
|
99e75d1230 | ||
|
|
3a0b5e2917 | ||
|
|
673f843517 | ||
|
|
3a15f55495 | ||
|
|
9d88ec2328 | ||
|
|
aabc95b5d7 | ||
|
|
1a00780014 | ||
|
|
2599e18a54 | ||
|
|
4a9afb69b8 | ||
|
|
779a7afa82 | ||
|
|
fc2372856b | ||
|
|
b8688843e5 | ||
|
|
d5edbcd5df | ||
|
|
9d1b080895 | ||
|
|
429de4b0fd | ||
|
|
081333aa71 | ||
|
|
4828a3d541 | ||
|
|
feebe3c6b4 | ||
|
|
8c6f65749d | ||
|
|
215f13c384 | ||
|
|
86619dc69b | ||
|
|
ce13046b95 | ||
|
|
93afb09dfc | ||
|
|
746d788889 | ||
|
|
dd4291e54f | ||
|
|
0b33659239 | ||
|
|
434484ab08 | ||
|
|
b5857f308c | ||
|
|
84aece75eb | ||
|
|
0087caba09 | ||
|
|
a662f4fe63 | ||
|
|
2e34d9bc69 | ||
|
|
da14950d8e | ||
|
|
d787aec1eb | ||
|
|
81d980ddc5 | ||
|
|
359b7ce974 | ||
|
|
2f5b17744e | ||
|
|
93c02816a2 | ||
|
|
6af2707368 | ||
|
|
cbdee9a529 | ||
|
|
3d3be90eb1 | ||
|
|
a155164fcb | ||
|
|
a6108e4307 | ||
|
|
7e045d37ee | ||
|
|
1aaec63108 | ||
|
|
46bce98643 | ||
|
|
80b64b7a59 | ||
|
|
efcba176a0 | ||
|
|
4f2fe8ec5d | ||
|
|
50e5de2d65 | ||
|
|
4551d41ee0 | ||
|
|
573f23d3ab | ||
|
|
e130655a7e | ||
|
|
7126c84d57 | ||
|
|
8089e35e64 | ||
|
|
4eeb966b6e | ||
|
|
fa7c425411 | ||
|
|
141ef4eb66 | ||
|
|
d52de483a9 | ||
|
|
e9fa651898 | ||
|
|
3864489e48 | ||
|
|
7ab2900ed0 | ||
|
|
6cc31ce967 | ||
|
|
e7b02f47ff | ||
|
|
144f755a37 | ||
|
|
5e6c862d71 | ||
|
|
a997e1a59f | ||
|
|
1a21efc3b2 | ||
|
|
c7951e6d30 | ||
|
|
581c0206d5 | ||
|
|
9afe4d1cad | ||
|
|
c664a142d5 | ||
|
|
f478840fae | ||
|
|
389621b9bf | ||
|
|
9a696df4cd | ||
|
|
fae0d9b51f | ||
|
|
01ad1c7dbb | ||
|
|
1bd5fe1582 | ||
|
|
7c7b039a62 | ||
|
|
30ed04dcd4 | ||
|
|
852ac7c6ba | ||
|
|
0efde2869a | ||
|
|
cfcfaf8a07 | ||
|
|
7cf9ec26f6 | ||
|
|
d2d72a0d5a | ||
|
|
25995fa7dc | ||
|
|
cf3e9afb56 |
@@ -24,7 +24,7 @@
|
||||
## Readme
|
||||
|
||||
If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit.
|
||||
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-radarr/edit/develop/readme-vars.yml).
|
||||
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-radarr/edit/master/readme-vars.yml).
|
||||
|
||||
These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play.
|
||||
Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io/images/docker-radarr)
|
||||
@@ -115,7 +115,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
||||
|
||||
## Update the changelog
|
||||
|
||||
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-radarr/tree/develop/root), add an entry to the changelog
|
||||
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-radarr/tree/master/root), add an entry to the changelog
|
||||
|
||||
```yml
|
||||
changelogs:
|
||||
|
||||
@@ -67,10 +67,10 @@ body:
|
||||
- type: textarea
|
||||
attributes:
|
||||
description: |
|
||||
Provide a full docker log, output of "docker logs radarr"
|
||||
Provide a full docker log, output of "docker logs linuxserver.io"
|
||||
label: Container logs
|
||||
placeholder: |
|
||||
Output of `docker logs radarr`
|
||||
Output of `docker logs linuxserver.io`
|
||||
render: bash
|
||||
validations:
|
||||
required: true
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
------------------------------
|
||||
|
||||
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-radarr/blob/develop/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
|
||||
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-radarr/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
|
||||
|
||||
------------------------------
|
||||
|
||||
|
||||
@@ -4,26 +4,26 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
external-trigger-develop:
|
||||
external-trigger-master:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.1.0
|
||||
|
||||
- name: External Trigger
|
||||
if: github.ref == 'refs/heads/develop'
|
||||
if: github.ref == 'refs/heads/master'
|
||||
run: |
|
||||
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP }}" ]; then
|
||||
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP is set; skipping trigger. ****"
|
||||
echo "Github secret \`PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_RADARR_MASTER }}" ]; then
|
||||
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_RADARR_MASTER is set; skipping trigger. ****"
|
||||
echo "Github secret \`PAUSE_EXTERNAL_TRIGGER_RADARR_MASTER\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
fi
|
||||
echo "**** External trigger running off of develop branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP\". ****"
|
||||
echo "External trigger running off of develop branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP\`" >> $GITHUB_STEP_SUMMARY
|
||||
echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_RADARR_MASTER\". ****"
|
||||
echo "External trigger running off of master branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_RADARR_MASTER\`" >> $GITHUB_STEP_SUMMARY
|
||||
echo "**** Retrieving external version ****"
|
||||
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version')
|
||||
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/master/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version')
|
||||
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
|
||||
echo "**** Can't retrieve external version, exiting ****"
|
||||
FAILURE_REASON="Can't retrieve external version for radarr branch develop"
|
||||
FAILURE_REASON="Can't retrieve external version for radarr branch master"
|
||||
GHA_TRIGGER_URL="https://github.com/linuxserver/docker-radarr/actions/runs/${{ github.run_id }}"
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
|
||||
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n**Trigger URL:** '"${GHA_TRIGGER_URL}"' \n"}],
|
||||
@@ -35,7 +35,7 @@ jobs:
|
||||
echo "External version: ${EXT_RELEASE}" >> $GITHUB_STEP_SUMMARY
|
||||
echo "**** Retrieving last pushed version ****"
|
||||
image="linuxserver/radarr"
|
||||
tag="develop"
|
||||
tag="latest"
|
||||
token=$(curl -sX GET \
|
||||
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Fradarr%3Apull" \
|
||||
| jq -r '.token')
|
||||
@@ -61,7 +61,7 @@ jobs:
|
||||
IMAGE_VERSION=$(echo ${IMAGE_RELEASE} | awk -F'-ls' '{print $1}')
|
||||
if [ -z "${IMAGE_VERSION}" ]; then
|
||||
echo "**** Can't retrieve last pushed version, exiting ****"
|
||||
FAILURE_REASON="Can't retrieve last pushed version for radarr tag develop"
|
||||
FAILURE_REASON="Can't retrieve last pushed version for radarr tag latest"
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
|
||||
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n"}],
|
||||
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
echo "**** Version ${EXT_RELEASE} already pushed, exiting ****"
|
||||
echo "Version ${EXT_RELEASE} already pushed, exiting" >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
|
||||
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/master/lastBuild/api/json | jq -r '.building') == "true" ]; then
|
||||
echo "**** New version ${EXT_RELEASE} found; but there already seems to be an active build on Jenkins; exiting ****"
|
||||
echo "New version ${EXT_RELEASE} found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
@@ -81,7 +81,7 @@ jobs:
|
||||
echo "**** New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build ****"
|
||||
echo "New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build" >> $GITHUB_STEP_SUMMARY
|
||||
response=$(curl -iX POST \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/buildWithParameters?PACKAGE_CHECK=false \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/master/buildWithParameters?PACKAGE_CHECK=false \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
|
||||
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
|
||||
echo "**** Sleeping 10 seconds until job starts ****"
|
||||
@@ -97,7 +97,7 @@ jobs:
|
||||
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
|
||||
--data-urlencode "Submit=Submit"
|
||||
echo "**** Notifying Discord ****"
|
||||
TRIGGER_REASON="A version change was detected for radarr tag develop. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
|
||||
TRIGGER_REASON="A version change was detected for radarr tag latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
|
||||
"description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}],
|
||||
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
external-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.1.0
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
|
||||
@@ -9,5 +9,5 @@ jobs:
|
||||
- uses: actions/first-interaction@v1
|
||||
with:
|
||||
issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
|
||||
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-radarr/blob/develop/.github/PULL_REQUEST_TEMPLATE.md)!'
|
||||
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-radarr/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -4,28 +4,28 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
package-trigger-develop:
|
||||
package-trigger-master:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.1.0
|
||||
|
||||
- name: Package Trigger
|
||||
if: github.ref == 'refs/heads/develop'
|
||||
if: github.ref == 'refs/heads/master'
|
||||
run: |
|
||||
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP }}" ]; then
|
||||
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP is set; skipping trigger. ****"
|
||||
echo "Github secret \`PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_RADARR_MASTER }}" ]; then
|
||||
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_RADARR_MASTER is set; skipping trigger. ****"
|
||||
echo "Github secret \`PAUSE_PACKAGE_TRIGGER_RADARR_MASTER\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
fi
|
||||
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
|
||||
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/master/lastBuild/api/json | jq -r '.building') == "true" ]; then
|
||||
echo "**** There already seems to be an active build on Jenkins; skipping package trigger ****"
|
||||
echo "There already seems to be an active build on Jenkins; skipping package trigger" >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
fi
|
||||
echo "**** Package trigger running off of develop branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP\". ****"
|
||||
echo "Package trigger running off of develop branch. To disable, set a Github secret named \`PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP\`" >> $GITHUB_STEP_SUMMARY
|
||||
echo "**** Package trigger running off of master branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_RADARR_MASTER\". ****"
|
||||
echo "Package trigger running off of master branch. To disable, set a Github secret named \`PAUSE_PACKAGE_TRIGGER_RADARR_MASTER\`" >> $GITHUB_STEP_SUMMARY
|
||||
response=$(curl -iX POST \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/buildWithParameters?PACKAGE_CHECK=true \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/master/buildWithParameters?PACKAGE_CHECK=true \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
|
||||
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
|
||||
echo "**** Sleeping 10 seconds until job starts ****"
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
package-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.1.0
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
|
||||
+4
-4
@@ -1,16 +1,16 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.19
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.18
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG RADARR_RELEASE
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="Roxedus,thespad"
|
||||
LABEL maintainer="thelamer"
|
||||
|
||||
# environment settings
|
||||
ARG RADARR_BRANCH="develop"
|
||||
ARG RADARR_BRANCH="master"
|
||||
ENV XDG_CONFIG_HOME="/config/xdg"
|
||||
|
||||
RUN \
|
||||
@@ -31,7 +31,7 @@ RUN \
|
||||
tar xzf \
|
||||
/tmp/radarr.tar.gz -C \
|
||||
/app/radarr/bin --strip-components=1 && \
|
||||
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://www.linuxserver.io/)" > /app/radarr/package_info && \
|
||||
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://linuxserver.io)" > /app/radarr/package_info && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/app/radarr/bin/Radarr.Update \
|
||||
|
||||
+4
-5
@@ -1,16 +1,15 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.19
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.18
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG RADARR_RELEASE
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="Roxedus,thespad"
|
||||
LABEL maintainer="thelamer"
|
||||
|
||||
# environment settings
|
||||
ARG RADARR_BRANCH="develop"
|
||||
ARG RADARR_BRANCH="master"
|
||||
ENV XDG_CONFIG_HOME="/config/xdg"
|
||||
|
||||
RUN \
|
||||
@@ -31,7 +30,7 @@ RUN \
|
||||
tar xzf \
|
||||
/tmp/radarr.tar.gz -C \
|
||||
/app/radarr/bin --strip-components=1 && \
|
||||
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://www.linuxserver.io/)" > /app/radarr/package_info && \
|
||||
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://linuxserver.io)" > /app/radarr/package_info && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/app/radarr/bin/Radarr.Update \
|
||||
|
||||
Vendored
+149
-159
@@ -16,7 +16,6 @@ pipeline {
|
||||
GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab')
|
||||
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
|
||||
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
|
||||
DOCKERHUB_TOKEN=credentials('docker-hub-ci-pat')
|
||||
BUILD_VERSION_ARG = 'RADARR_RELEASE'
|
||||
LS_USER = 'linuxserver'
|
||||
LS_REPO = 'docker-radarr'
|
||||
@@ -32,7 +31,7 @@ pipeline {
|
||||
CI_SSL='false'
|
||||
CI_DELAY='120'
|
||||
CI_DOCKERENV='TZ=US/Pacific'
|
||||
CI_AUTH=''
|
||||
CI_AUTH='user:password'
|
||||
CI_WEBPATH='/system/status'
|
||||
}
|
||||
stages {
|
||||
@@ -48,7 +47,7 @@ pipeline {
|
||||
script{
|
||||
env.EXIT_STATUS = ''
|
||||
env.LS_RELEASE = sh(
|
||||
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:develop 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
||||
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:latest 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
||||
returnStdout: true).trim()
|
||||
env.LS_RELEASE_NOTES = sh(
|
||||
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' ''',
|
||||
@@ -59,16 +58,11 @@ pipeline {
|
||||
env.COMMIT_SHA = sh(
|
||||
script: '''git rev-parse HEAD''',
|
||||
returnStdout: true).trim()
|
||||
env.GH_DEFAULT_BRANCH = sh(
|
||||
script: '''git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||' ''',
|
||||
returnStdout: true).trim()
|
||||
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
|
||||
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
|
||||
env.PULL_REQUEST = env.CHANGE_ID
|
||||
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt'
|
||||
}
|
||||
sh '''#! /bin/bash
|
||||
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
|
||||
script{
|
||||
env.LS_RELEASE_NUMBER = sh(
|
||||
script: '''echo ${LS_RELEASE} |sed 's/^.*-ls//g' ''',
|
||||
@@ -77,7 +71,7 @@ pipeline {
|
||||
script{
|
||||
env.LS_TAG_NUMBER = sh(
|
||||
script: '''#! /bin/bash
|
||||
tagsha=$(git rev-list -n 1 develop-${LS_RELEASE} 2>/dev/null)
|
||||
tagsha=$(git rev-list -n 1 ${LS_RELEASE} 2>/dev/null)
|
||||
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
|
||||
echo ${LS_RELEASE_NUMBER}
|
||||
elif [ -z "${GIT_COMMIT}" ]; then
|
||||
@@ -115,7 +109,7 @@ pipeline {
|
||||
steps{
|
||||
script{
|
||||
env.EXT_RELEASE = sh(
|
||||
script: ''' curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version' ''',
|
||||
script: ''' curl -sL https://radarr.servarr.com/v1/update/master/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version' ''',
|
||||
returnStdout: true).trim()
|
||||
env.RELEASE_LINK = 'custom_command'
|
||||
}
|
||||
@@ -126,7 +120,7 @@ pipeline {
|
||||
steps{
|
||||
script{
|
||||
env.EXT_RELEASE_CLEAN = sh(
|
||||
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/ ]//g' ''',
|
||||
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''',
|
||||
returnStdout: true).trim()
|
||||
|
||||
def semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)\.(\d+)/
|
||||
@@ -144,7 +138,7 @@ pipeline {
|
||||
}
|
||||
|
||||
if (env.SEMVER != null) {
|
||||
if (BRANCH_NAME != "${env.GH_DEFAULT_BRANCH}") {
|
||||
if (BRANCH_NAME != "master" && BRANCH_NAME != "main") {
|
||||
env.SEMVER = "${env.SEMVER}-${BRANCH_NAME}"
|
||||
}
|
||||
println("SEMVER: ${env.SEMVER}")
|
||||
@@ -155,10 +149,10 @@ pipeline {
|
||||
}
|
||||
}
|
||||
}
|
||||
// If this is a develop build use live docker endpoints
|
||||
// If this is a master build use live docker endpoints
|
||||
stage("Set ENV live build"){
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
}
|
||||
steps {
|
||||
@@ -168,20 +162,20 @@ pipeline {
|
||||
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
|
||||
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
|
||||
if (env.MULTIARCH == 'true') {
|
||||
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
} else {
|
||||
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
}
|
||||
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
|
||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||
}
|
||||
}
|
||||
}
|
||||
// If this is a dev build use dev docker endpoints
|
||||
stage("Set ENV dev build"){
|
||||
when {
|
||||
not {branch "develop"}
|
||||
not {branch "master"}
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
}
|
||||
steps {
|
||||
@@ -191,13 +185,13 @@ pipeline {
|
||||
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
|
||||
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
|
||||
if (env.MULTIARCH == 'true') {
|
||||
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
env.CI_TAGS = 'amd64-' + 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
|
||||
} else {
|
||||
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
}
|
||||
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
|
||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
|
||||
}
|
||||
}
|
||||
@@ -214,13 +208,13 @@ pipeline {
|
||||
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
|
||||
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
|
||||
if (env.MULTIARCH == 'true') {
|
||||
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
env.CI_TAGS = 'amd64-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
} else {
|
||||
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
}
|
||||
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
|
||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
|
||||
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
|
||||
}
|
||||
@@ -245,11 +239,9 @@ pipeline {
|
||||
-v ${WORKSPACE}:/mnt \
|
||||
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
|
||||
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
|
||||
ghcr.io/linuxserver/baseimage-alpine:3.19 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
|
||||
apk add --no-cache python3 && \
|
||||
python3 -m venv /lsiopy && \
|
||||
pip install --no-cache-dir -U pip && \
|
||||
pip install --no-cache-dir s3cmd && \
|
||||
ghcr.io/linuxserver/baseimage-alpine:3.17 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
|
||||
apk add --no-cache py3-pip && \
|
||||
pip install s3cmd && \
|
||||
s3cmd put --no-preserve --acl-public -m text/xml /mnt/shellcheck-result.xml s3://ci-tests.linuxserver.io/${IMAGE}/${META_TAG}/shellcheck-result.xml" || :'''
|
||||
}
|
||||
}
|
||||
@@ -257,7 +249,7 @@ pipeline {
|
||||
// Use helper containers to render templated files
|
||||
stage('Update-Templates') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
expression {
|
||||
env.CONTAINER_NAME != null
|
||||
@@ -268,34 +260,26 @@ pipeline {
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
docker pull ghcr.io/linuxserver/jenkins-builder:latest
|
||||
# Cloned repo paths for templating:
|
||||
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch develop of ${LS_USER}/${LS_REPO} for running the jenkins builder on
|
||||
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch develop of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
|
||||
# ${TEMPDIR}/docs/docker-documentation: Cloned docs repo for pushing docs updates to Github
|
||||
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
|
||||
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
|
||||
git clone --branch develop --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true -e PUID=$(id -u) -e PGID=$(id -g) ghcr.io/linuxserver/jenkins-builder:latest
|
||||
echo "Starting Stage 1 - Jenkinsfile update"
|
||||
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
|
||||
# Stage 1 - Jenkinsfile update
|
||||
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f develop
|
||||
git checkout -f master
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
|
||||
git add Jenkinsfile
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Updating Jenkinsfile and exiting build, new one will trigger based on commit"
|
||||
echo "Updating Jenkinsfile"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "Jenkinsfile is up to date."
|
||||
fi
|
||||
echo "Starting Stage 2 - Delete old templates"
|
||||
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml"
|
||||
# Stage 2 - Delete old templates
|
||||
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf"
|
||||
for i in ${OLD_TEMPLATES}; do
|
||||
if [[ -f "${i}" ]]; then
|
||||
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
|
||||
@@ -305,21 +289,20 @@ pipeline {
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f develop
|
||||
git checkout -f master
|
||||
for i in ${TEMPLATES_TO_DELETE}; do
|
||||
git rm "${i}"
|
||||
done
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Deleting old/deprecated templates and exiting build, new one will trigger based on commit"
|
||||
echo "Deleting old and deprecated templates"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "No templates to delete"
|
||||
fi
|
||||
echo "Starting Stage 3 - Update templates"
|
||||
# Stage 3 - Update templates
|
||||
CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
@@ -327,7 +310,7 @@ pipeline {
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f develop
|
||||
git checkout -f master
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
|
||||
@@ -340,34 +323,19 @@ pipeline {
|
||||
fi
|
||||
git add readme-vars.yml ${TEMPLATED_FILES}
|
||||
git commit -m 'Bot Updating Templated Files'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Updating templates and exiting build, new one will trigger based on commit"
|
||||
rm -Rf ${TEMPDIR}
|
||||
exit 0
|
||||
else
|
||||
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "No templates to update"
|
||||
fi
|
||||
echo "Starting Stage 4 - External repo updates: Docs, Unraid Template and Readme Sync to Docker Hub"
|
||||
mkdir -p ${TEMPDIR}/docs
|
||||
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
|
||||
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/
|
||||
cd ${TEMPDIR}/docs/docker-documentation
|
||||
GH_DOCS_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
git add docs/images/docker-${CONTAINER_NAME}.md
|
||||
echo "Updating docs repo"
|
||||
git commit -m 'Bot Updating Documentation'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} || \
|
||||
(MAXWAIT="10" && echo "Push to docs failed, trying again in ${MAXWAIT} seconds" && \
|
||||
sleep $((RANDOM % MAXWAIT)) && \
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} --rebase && \
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH})
|
||||
else
|
||||
echo "Docs update not needed, skipping"
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
|
||||
fi
|
||||
mkdir -p ${TEMPDIR}/unraid
|
||||
git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
|
||||
@@ -377,13 +345,9 @@ pipeline {
|
||||
elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
|
||||
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
|
||||
fi
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
|
||||
echo "Updating Unraid template"
|
||||
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
|
||||
cd ${TEMPDIR}/unraid/templates/
|
||||
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list && [[ -f ${TEMPDIR}/unraid/templates/unraid/deprecated/${CONTAINER_NAME}.xml ]]; then
|
||||
echo "Image is on the ignore list, and already in the deprecation folder."
|
||||
elif grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
||||
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
||||
echo "Image is on the ignore list, marking Unraid template as deprecated"
|
||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||
git add -u unraid/${CONTAINER_NAME}.xml
|
||||
@@ -394,42 +358,7 @@ pipeline {
|
||||
git add unraid/${CONTAINER_NAME}.xml
|
||||
git commit -m 'Bot Updating Unraid Template'
|
||||
fi
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} || \
|
||||
(MAXWAIT="10" && echo "Push to unraid templates failed, trying again in ${MAXWAIT} seconds" && \
|
||||
sleep $((RANDOM % MAXWAIT)) && \
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} --rebase && \
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH})
|
||||
else
|
||||
echo "No updates to Unraid template needed, skipping"
|
||||
fi
|
||||
if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then
|
||||
if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) -gt 25000 ]]; then
|
||||
echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite"
|
||||
else
|
||||
echo "Syncing readme to Docker Hub"
|
||||
DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md"
|
||||
fi
|
||||
if curl -s https://hub.docker.com/v2/namespaces/${DOCKERHUB_IMAGE%%/*}/repositories/${DOCKERHUB_IMAGE##*/}/tags | jq -r '.message' | grep -q 404; then
|
||||
echo "Docker Hub endpoint doesn't exist. Creating endpoint first."
|
||||
DH_TOKEN=$(curl -d '{"username":"linuxserverci", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
|
||||
curl -s \
|
||||
-H "Authorization: JWT ${DH_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-X POST \
|
||||
-d '{"name":"'${DOCKERHUB_IMAGE##*/}'", "namespace":"'${DOCKERHUB_IMAGE%%/*}'"}' \
|
||||
https://hub.docker.com/v2/repositories/ || :
|
||||
fi
|
||||
DH_TOKEN=$(curl -d '{"username":"linuxserverci", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token')
|
||||
curl -s \
|
||||
-H "Authorization: JWT ${DH_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-X PATCH \
|
||||
-d "{\\"full_description\\":$(jq -Rsa . ${DH_README_SYNC_PATH})}" \
|
||||
https://hub.docker.com/v2/repositories/${DOCKERHUB_IMAGE} || :
|
||||
else
|
||||
echo "Not the default Github branch. Skipping readme sync to Docker Hub."
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
|
||||
fi
|
||||
rm -Rf ${TEMPDIR}'''
|
||||
script{
|
||||
@@ -442,7 +371,7 @@ pipeline {
|
||||
// Exit the build if the Templated files were just updated
|
||||
stage('Template-exit') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'FILES_UPDATED', value: 'true'
|
||||
expression {
|
||||
@@ -455,10 +384,10 @@ pipeline {
|
||||
}
|
||||
}
|
||||
}
|
||||
// If this is a develop build check the S6 service file perms
|
||||
// If this is a master build check the S6 service file perms
|
||||
stage("Check S6 Service file Permissions"){
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
}
|
||||
@@ -485,16 +414,14 @@ pipeline {
|
||||
}
|
||||
steps{
|
||||
sh '''curl -H "Content-Type: application/json" -H "Private-Token: ${GITLAB_TOKEN}" -X POST https://gitlab.com/api/v4/projects \
|
||||
-d '{"namespace_id":'${GITLAB_NAMESPACE}',\
|
||||
"name":"'${LS_REPO}'",
|
||||
"mirror":true,\
|
||||
"import_url":"https://github.com/linuxserver/'${LS_REPO}'.git",\
|
||||
"issues_access_level":"disabled",\
|
||||
"merge_requests_access_level":"disabled",\
|
||||
"repository_access_level":"enabled",\
|
||||
"visibility":"public"}' '''
|
||||
sh '''curl -H "Private-Token: ${GITLAB_TOKEN}" -X PUT "https://gitlab.com/api/v4/projects/Linuxserver.io%2F${LS_REPO}" \
|
||||
-d "mirror=true&import_url=https://github.com/linuxserver/${LS_REPO}.git" '''
|
||||
-d '{"namespace_id":'${GITLAB_NAMESPACE}',\
|
||||
"name":"'${LS_REPO}'",
|
||||
"mirror":true,\
|
||||
"import_url":"https://github.com/linuxserver/'${LS_REPO}'.git",\
|
||||
"issues_access_level":"disabled",\
|
||||
"merge_requests_access_level":"disabled",\
|
||||
"repository_access_level":"enabled",\
|
||||
"visibility":"public"}' '''
|
||||
}
|
||||
}
|
||||
/* ###############
|
||||
@@ -525,7 +452,6 @@ pipeline {
|
||||
--label \"org.opencontainers.image.title=Radarr\" \
|
||||
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
|
||||
--no-cache --pull -t ${IMAGE}:${META_TAG} --platform=linux/amd64 \
|
||||
--provenance=false --sbom=false \
|
||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||
}
|
||||
}
|
||||
@@ -557,7 +483,6 @@ pipeline {
|
||||
--label \"org.opencontainers.image.title=Radarr\" \
|
||||
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
|
||||
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} --platform=linux/amd64 \
|
||||
--provenance=false --sbom=false \
|
||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||
}
|
||||
}
|
||||
@@ -586,7 +511,6 @@ pipeline {
|
||||
--label \"org.opencontainers.image.title=Radarr\" \
|
||||
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
|
||||
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} --platform=linux/arm64 \
|
||||
--provenance=false --sbom=false \
|
||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
retry(5) {
|
||||
@@ -605,7 +529,7 @@ pipeline {
|
||||
// Take the image we just built and dump package versions for comparison
|
||||
stage('Update-packages') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
}
|
||||
@@ -613,7 +537,7 @@ pipeline {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" != "true" ]; then
|
||||
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" == "false" ]; then
|
||||
LOCAL_CONTAINER=${IMAGE}:amd64-${META_TAG}
|
||||
else
|
||||
LOCAL_CONTAINER=${IMAGE}:${META_TAG}
|
||||
@@ -628,14 +552,13 @@ pipeline {
|
||||
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
|
||||
if [ "${NEW_PACKAGE_TAG}" != "${PACKAGE_TAG}" ]; then
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/${LS_REPO}
|
||||
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f develop
|
||||
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f master
|
||||
cp ${TEMPDIR}/package_versions.txt ${TEMPDIR}/${LS_REPO}/
|
||||
cd ${TEMPDIR}/${LS_REPO}/
|
||||
wait
|
||||
git add package_versions.txt
|
||||
git commit -m 'Bot Updating Package Versions'
|
||||
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
|
||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
||||
echo "true" > /tmp/packages-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
echo "Package tag updated, stopping build process"
|
||||
else
|
||||
@@ -653,7 +576,7 @@ pipeline {
|
||||
// Exit the build if the package file was just updated
|
||||
stage('PACKAGE-exit') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'PACKAGE_UPDATED', value: 'true'
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
@@ -667,7 +590,7 @@ pipeline {
|
||||
// Exit the build if this is just a package check and there are no changes to push
|
||||
stage('PACKAGECHECK-exit') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'PACKAGE_UPDATED', value: 'false'
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
@@ -710,7 +633,7 @@ pipeline {
|
||||
--shm-size=1gb \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-e IMAGE=\"${IMAGE}\" \
|
||||
-e DOCKER_LOGS_TIMEOUT=\"${CI_DELAY}\" \
|
||||
-e DELAY_START=\"${CI_DELAY}\" \
|
||||
-e TAGS=\"${CI_TAGS}\" \
|
||||
-e META_TAG=\"${META_TAG}\" \
|
||||
-e PORT=\"${CI_PORT}\" \
|
||||
@@ -738,6 +661,12 @@ pipeline {
|
||||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
],
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: 'Quay.io-Robot',
|
||||
@@ -748,18 +677,18 @@ pipeline {
|
||||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
|
||||
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:develop
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
|
||||
fi
|
||||
docker push ${PUSHIMAGE}:develop
|
||||
docker push ${PUSHIMAGE}:latest
|
||||
docker push ${PUSHIMAGE}:${META_TAG}
|
||||
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
@@ -779,6 +708,12 @@ pipeline {
|
||||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
],
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: 'Quay.io-Robot',
|
||||
@@ -789,7 +724,7 @@ pipeline {
|
||||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
@@ -799,10 +734,10 @@ pipeline {
|
||||
fi
|
||||
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
||||
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-develop
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
|
||||
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-develop
|
||||
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
|
||||
@@ -810,21 +745,43 @@ pipeline {
|
||||
fi
|
||||
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
|
||||
docker push ${MANIFESTIMAGE}:amd64-develop
|
||||
docker push ${MANIFESTIMAGE}:amd64-latest
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-develop
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
||||
fi
|
||||
done
|
||||
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
||||
docker buildx imagetools create -t ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:amd64-develop ${MANIFESTIMAGE}:arm64v8-develop
|
||||
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
|
||||
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
||||
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
|
||||
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
|
||||
docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
|
||||
fi
|
||||
token=$(curl -sX GET "https://ghcr.io/token?scope=repository%3Alinuxserver%2F${CONTAINER_NAME}%3Apull" | jq -r '.token')
|
||||
digest=$(curl -s \
|
||||
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
|
||||
--header "Authorization: Bearer ${token}" \
|
||||
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-latest")
|
||||
if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest || :
|
||||
docker manifest create ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:amd64-latest
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest
|
||||
fi
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:latest
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
|
||||
if [ -n "${SEMVER}" ]; then
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
|
||||
fi
|
||||
done
|
||||
'''
|
||||
@@ -835,7 +792,7 @@ pipeline {
|
||||
// If this is a public release tag it in the LS Github
|
||||
stage('Github-Tag-Push-Release') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
expression {
|
||||
env.LS_RELEASE != env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
}
|
||||
@@ -847,17 +804,17 @@ pipeline {
|
||||
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
|
||||
-d '{"tag":"'${META_TAG}'",\
|
||||
"object": "'${COMMIT_SHA}'",\
|
||||
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to develop",\
|
||||
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to master",\
|
||||
"type": "commit",\
|
||||
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
|
||||
echo "Pushing New release for Tag"
|
||||
sh '''#! /bin/bash
|
||||
echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json
|
||||
echo '{"tag_name":"'${META_TAG}'",\
|
||||
"target_commitish": "develop",\
|
||||
"target_commitish": "master",\
|
||||
"name": "'${META_TAG}'",\
|
||||
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
|
||||
printf '","draft": false,"prerelease": true}' >> releasebody.json
|
||||
printf '","draft": false,"prerelease": false}' >> releasebody.json
|
||||
paste -d'\\0' start releasebody.json > releasebody.json.done
|
||||
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
|
||||
}
|
||||
@@ -865,14 +822,14 @@ pipeline {
|
||||
// Add protection to the release branch
|
||||
stage('Github-Release-Branch-Protection') {
|
||||
when {
|
||||
branch "develop"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
}
|
||||
steps {
|
||||
echo "Setting up protection for release branch develop"
|
||||
echo "Setting up protection for release branch master"
|
||||
sh '''#! /bin/bash
|
||||
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/develop/protection \
|
||||
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/master/protection \
|
||||
-d $(jq -c . << EOF
|
||||
{
|
||||
"required_status_checks": null,
|
||||
@@ -897,6 +854,39 @@ EOF
|
||||
) '''
|
||||
}
|
||||
}
|
||||
// Use helper container to sync the current README on master to the dockerhub endpoint
|
||||
stage('Sync-README') {
|
||||
when {
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
}
|
||||
steps {
|
||||
withCredentials([
|
||||
[
|
||||
$class: 'UsernamePasswordMultiBinding',
|
||||
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
|
||||
usernameVariable: 'DOCKERUSER',
|
||||
passwordVariable: 'DOCKERPASS'
|
||||
]
|
||||
]) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
docker pull ghcr.io/linuxserver/jenkins-builder:latest
|
||||
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
|
||||
docker pull ghcr.io/linuxserver/readme-sync
|
||||
docker run --rm=true \
|
||||
-e DOCKERHUB_USERNAME=$DOCKERUSER \
|
||||
-e DOCKERHUB_PASSWORD=$DOCKERPASS \
|
||||
-e GIT_REPOSITORY=${LS_USER}/${LS_REPO} \
|
||||
-e DOCKER_REPOSITORY=${IMAGE} \
|
||||
-e GIT_BRANCH=master \
|
||||
-v ${TEMPDIR}/docker-${CONTAINER_NAME}:/mnt \
|
||||
ghcr.io/linuxserver/readme-sync bash -c 'node sync'
|
||||
rm -Rf ${TEMPDIR} '''
|
||||
}
|
||||
}
|
||||
}
|
||||
// If this is a Pull request send the CI link as a comment on it
|
||||
stage('Pull Request Comment') {
|
||||
when {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- DO NOT EDIT THIS FILE MANUALLY -->
|
||||
<!-- Please read https://github.com/linuxserver/docker-radarr/blob/develop/.github/CONTRIBUTING.md -->
|
||||
<!-- Please read https://github.com/linuxserver/docker-radarr/blob/master/.github/CONTRIBUTING.md -->
|
||||
[](https://linuxserver.io)
|
||||
|
||||
[](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!")
|
||||
@@ -28,7 +28,7 @@ Find us at:
|
||||
|
||||
# [linuxserver/radarr](https://github.com/linuxserver/docker-radarr)
|
||||
|
||||
[](https://scarf.sh)
|
||||
[](https://scarf.sh/gateway/linuxserver-ci/docker/linuxserver%2Fradarr)
|
||||
[](https://github.com/linuxserver/docker-radarr)
|
||||
[](https://github.com/linuxserver/docker-radarr/releases)
|
||||
[](https://github.com/linuxserver/docker-radarr/packages)
|
||||
@@ -36,7 +36,7 @@ Find us at:
|
||||
[](https://quay.io/repository/linuxserver.io/radarr)
|
||||
[](https://hub.docker.com/r/linuxserver/radarr)
|
||||
[](https://hub.docker.com/r/linuxserver/radarr)
|
||||
[](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/)
|
||||
[](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/master/)
|
||||
[](https://ci-tests.linuxserver.io/linuxserver/radarr/latest/index.html)
|
||||
|
||||
[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato.
|
||||
@@ -47,7 +47,7 @@ Find us at:
|
||||
|
||||
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
|
||||
|
||||
Simply pulling `lscr.io/linuxserver/radarr:develop` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
|
||||
Simply pulling `lscr.io/linuxserver/radarr:latest` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
|
||||
|
||||
The architectures supported by this image are:
|
||||
|
||||
@@ -75,12 +75,10 @@ Access the webui at `<your-ip>:7878`, for more information check out [Radarr](ht
|
||||
|
||||
We have set `/movies` and `/downloads` as ***optional paths***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
|
||||
|
||||
Use the optional paths if you don't understand, or don't want hardlinks/atomic moves.
|
||||
Use the optional paths if you dont understand, or dont want hardlinks/atomic moves.
|
||||
|
||||
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
|
||||
|
||||
# changelog
|
||||
|
||||
## Usage
|
||||
|
||||
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
|
||||
@@ -89,18 +87,19 @@ To help you get started creating a container from this image you can either use
|
||||
|
||||
```yaml
|
||||
---
|
||||
version: "2.1"
|
||||
services:
|
||||
radarr:
|
||||
image: lscr.io/linuxserver/radarr:develop
|
||||
image: lscr.io/linuxserver/radarr:latest
|
||||
container_name: radarr
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- /path/to/radarr/data:/config
|
||||
- /path/to/data:/config
|
||||
- /path/to/movies:/movies #optional
|
||||
- /path/to/download-client-downloads:/downloads #optional
|
||||
- /path/to/downloadclient-downloads:/downloads #optional
|
||||
ports:
|
||||
- 7878:7878
|
||||
restart: unless-stopped
|
||||
@@ -115,11 +114,11 @@ docker run -d \
|
||||
-e PGID=1000 \
|
||||
-e TZ=Etc/UTC \
|
||||
-p 7878:7878 \
|
||||
-v /path/to/radarr/data:/config \
|
||||
-v /path/to/data:/config \
|
||||
-v /path/to/movies:/movies `#optional` \
|
||||
-v /path/to/download-client-downloads:/downloads `#optional` \
|
||||
-v /path/to/downloadclient-downloads:/downloads `#optional` \
|
||||
--restart unless-stopped \
|
||||
lscr.io/linuxserver/radarr:develop
|
||||
lscr.io/linuxserver/radarr:latest
|
||||
```
|
||||
|
||||
## Parameters
|
||||
@@ -128,7 +127,7 @@ Containers are configured using parameters passed at runtime (such as those abov
|
||||
|
||||
| Parameter | Function |
|
||||
| :----: | --- |
|
||||
| `-p 7878` | The port for the Radarr web UI |
|
||||
| `-p 7878` | The port for the Radarr webinterface |
|
||||
| `-e PUID=1000` | for UserID - see below for explanation |
|
||||
| `-e PGID=1000` | for GroupID - see below for explanation |
|
||||
| `-e TZ=Etc/UTC` | specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). |
|
||||
@@ -200,12 +199,12 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
|
||||
* Image version number:
|
||||
|
||||
```bash
|
||||
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/radarr:develop
|
||||
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/radarr:latest
|
||||
```
|
||||
|
||||
## Updating Info
|
||||
|
||||
Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (noted in the relevant readme.md), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image.
|
||||
Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (ie. nextcloud, plex), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image.
|
||||
|
||||
Below are the instructions for updating containers:
|
||||
|
||||
@@ -248,7 +247,7 @@ Below are the instructions for updating containers:
|
||||
* Update the image:
|
||||
|
||||
```bash
|
||||
docker pull lscr.io/linuxserver/radarr:develop
|
||||
docker pull lscr.io/linuxserver/radarr:latest
|
||||
```
|
||||
|
||||
* Stop the running container:
|
||||
@@ -270,6 +269,21 @@ Below are the instructions for updating containers:
|
||||
docker image prune
|
||||
```
|
||||
|
||||
### Via Watchtower auto-updater (only use if you don't remember the original parameters)
|
||||
|
||||
* Pull the latest image at its tag and replace it with the same env variables in one run:
|
||||
|
||||
```bash
|
||||
docker run --rm \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
containrrr/watchtower \
|
||||
--run-once radarr
|
||||
```
|
||||
|
||||
* You can also remove the old dangling images: `docker image prune`
|
||||
|
||||
**warning**: We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose).
|
||||
|
||||
### Image Update Notifications - Diun (Docker Image Update Notifier)
|
||||
|
||||
**tip**: We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported.
|
||||
@@ -284,7 +298,7 @@ cd docker-radarr
|
||||
docker build \
|
||||
--no-cache \
|
||||
--pull \
|
||||
-t lscr.io/linuxserver/radarr:develop .
|
||||
-t lscr.io/linuxserver/radarr:latest .
|
||||
```
|
||||
|
||||
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
|
||||
@@ -297,12 +311,14 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
||||
|
||||
## Versions
|
||||
|
||||
* **20.03.24:** - Rebase to Alpine 3.19.
|
||||
* **06.06.23:** - Rebase develop to Alpine 3.18.
|
||||
* **19.12.22:** - Rebase develop branch to Alpine 3.17, migrate to s6v3.
|
||||
* **06.06.23:** - Rebase master to Alpine 3.18, deprecate armhf as per [https://www.linuxserver.io/armhf](https://www.linuxserver.io/armhf).
|
||||
* **17.01.23:** - Rebase master branch to Alpine 3.17, migrate to s6v3.
|
||||
* **06.06.22:** - Rebase master branch to Alpine 3.15.
|
||||
* **20.02.22:** - Rebase develop branch to Alpine.
|
||||
* **04.02.22:** - Rebase nightly branch to Alpine and deprecate nightly-alpine branch.
|
||||
* **27.12.21:** - Add nightly-alpine branch.
|
||||
* **17.10.21:** - Remove `UMASK_SET`.
|
||||
* **11.07.21:** - Make the paths clearer to the user
|
||||
* **08.05.21:** - Make the paths clearer to the user
|
||||
* **17.01.21:** - Deprecate `UMASK_SET` in favor of UMASK in baseimage, see above for more information.
|
||||
* **11.30.20:** - Publish `develop` tag.
|
||||
* **11.28.20:** - Switch to v3 .NET CORE builds (no more mono, `5.14` tag is deprecated). Rebase to Focal (for issues on arm32v7, [see here](https://docs.linuxserver.io/faq#my-host-is-incompatible-with-images-based-on-ubuntu-focal)).
|
||||
|
||||
+5
-5
@@ -2,10 +2,10 @@
|
||||
# jenkins variables
|
||||
project_name: docker-radarr
|
||||
external_type: na
|
||||
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version'
|
||||
release_type: prerelease
|
||||
release_tag: develop
|
||||
ls_branch: develop
|
||||
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/master/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version'
|
||||
release_type: stable
|
||||
release_tag: latest
|
||||
ls_branch: master
|
||||
build_armhf: false
|
||||
repo_vars:
|
||||
- BUILD_VERSION_ARG = 'RADARR_RELEASE'
|
||||
@@ -23,7 +23,7 @@ repo_vars:
|
||||
- CI_SSL='false'
|
||||
- CI_DELAY='120'
|
||||
- CI_DOCKERENV='TZ=US/Pacific'
|
||||
- CI_AUTH=''
|
||||
- CI_AUTH='user:password'
|
||||
- CI_WEBPATH='/system/status'
|
||||
sponsor_links:
|
||||
- { name: "Radarr", url: "https://opencollective.com/radarr" }
|
||||
|
||||
+401
-411
@@ -1,411 +1,401 @@
|
||||
NAME VERSION TYPE
|
||||
Bouncy Castle for .NET (netstandard2.0) 1.9.0.1 dotnet
|
||||
Dapper 2.0.151.35995 dotnet
|
||||
Diacritical 1.0.4.0 dotnet
|
||||
DryIoc 5.4.3.0 dotnet
|
||||
DryIoc.Microsoft.DependencyInjection net6.0 6.2.0.0 dotnet
|
||||
Dynamitey 2.0.9.136 dotnet
|
||||
Equ 2.3.0 dotnet
|
||||
FFMpegCore 4.0.0.0 dotnet
|
||||
FluentMigrator 3.3.2.9 dotnet (+19 duplicates)
|
||||
FluentValidation 9.5.4.0 dotnet
|
||||
ICSharpCode.SharpZipLib 1.3.3.11 dotnet
|
||||
Ical.Net 1.0.0.0 dotnet
|
||||
ImpromptuInterface 7.0.1.0 dotnet
|
||||
Instances 1.0.0.0 dotnet
|
||||
Json.NET 13.0.3.27908 dotnet
|
||||
MailKit 3.6.0.0 dotnet
|
||||
Microsoft.AspNetCore 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Antiforgery 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authentication 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Cookies 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Core 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authentication.OAuth 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authorization 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Authorization.Policy 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Components 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Components.Authorization 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Components.Forms 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Components.Server 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Components.Web 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Connections.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.CookiePolicy 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Cors 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Cryptography.Internal 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Cryptography.KeyDerivation 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.DataProtection 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.DataProtection.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.DataProtection.Extensions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics.HealthChecks 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.HostFiltering 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Hosting 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Hosting.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Hosting.Server.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Html.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Connections 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Connections.Common 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Extensions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Features 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Http.Results 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.HttpLogging 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.HttpOverrides 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.HttpsPolicy 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Identity 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Localization 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Localization.Routing 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Metadata 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.ApiExplorer 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Core 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Cors 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.DataAnnotations 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Formatters.Json 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Formatters.Xml 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Localization 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Razor 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.RazorPages 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.TagHelpers 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Mvc.ViewFeatures 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Razor 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Razor.Runtime 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.ResponseCaching 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.ResponseCaching.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.ResponseCompression 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Rewrite 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Routing 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Routing.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.HttpSys 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.IIS 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.IISIntegration 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Core 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.Session 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.SignalR 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Common 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Core 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Protocols.Json 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.StaticFiles 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.WebSockets 6.0.2924.17108 dotnet
|
||||
Microsoft.AspNetCore.WebUtilities 6.0.2924.17108 dotnet
|
||||
Microsoft.Bcl.AsyncInterfaces 6.0.21.52210 dotnet
|
||||
Microsoft.Bcl.TimeProvider 8.0.23.53103 dotnet
|
||||
Microsoft.CSharp 6.0.2924.17105 dotnet
|
||||
Microsoft.Data.SqlClient 2.1.2+2a61e8301e9d21ada2338a9279cf27653e781757 dotnet
|
||||
Microsoft.Extensions.Caching.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Caching.Memory 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration 6.0.322.12309 dotnet
|
||||
Microsoft.Extensions.Configuration.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Binder 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.CommandLine 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.EnvironmentVariables 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration.FileExtensions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Ini 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Json 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.KeyPerFile 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Configuration.UserSecrets 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration.Xml 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.DependencyInjection 6.0.1022.47605 dotnet
|
||||
Microsoft.Extensions.DependencyInjection.Abstractions 7.0.22.51805 dotnet
|
||||
Microsoft.Extensions.Diagnostics.HealthChecks 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Features 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.FileProviders.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileProviders.Composite 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileProviders.Embedded 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.FileProviders.Physical 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileSystemGlobbing 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Hosting 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Hosting.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Hosting.WindowsServices 6.0.1823.26907 dotnet
|
||||
Microsoft.Extensions.Http 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Identity.Core 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Identity.Stores 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Localization 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Localization.Abstractions 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Logging 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Abstractions 6.0.1823.26907 dotnet
|
||||
Microsoft.Extensions.Logging.Configuration 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Console 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Debug 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.EventLog 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.EventSource 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.TraceSource 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.ObjectPool 6.0.2924.17108 dotnet
|
||||
Microsoft.Extensions.Options 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Options.ConfigurationExtensions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Options.DataAnnotations 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Primitives 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.WebEncoders 6.0.2924.17108 dotnet
|
||||
Microsoft.Identity.Client 4.21.1.0 dotnet
|
||||
Microsoft.IdentityModel.JsonWebTokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Logging 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Protocols 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Protocols.OpenIdConnect 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Tokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.JSInterop 6.0.2924.17108 dotnet
|
||||
Microsoft.Net.Http.Headers 6.0.2924.17108 dotnet
|
||||
Microsoft.OpenApi 1.2.3.0 dotnet
|
||||
Microsoft.VisualBasic 6.0.2924.17105 dotnet
|
||||
Microsoft.VisualBasic.Core 11.100.2924.17105 dotnet
|
||||
Microsoft.Win32.Primitives 6.0.2924.17105 dotnet
|
||||
Microsoft.Win32.Registry 6.0.2924.17105 dotnet
|
||||
Microsoft.Win32.SystemEvents 6.0.21.52210 dotnet
|
||||
MimeKit 3.6.0.0 dotnet
|
||||
Mono.Nat 3.0.1 dotnet
|
||||
Mono.Posix.NETStandard 1.0.0.0 dotnet
|
||||
MonoTorrent 2.0.7 dotnet
|
||||
NLog v5.2.3 5.2.3.1999 dotnet
|
||||
NLog.Extensions.Logging v5.3.3 5.3.3.381 dotnet
|
||||
NLog.Targets.Syslog 7.0.0.0 dotnet
|
||||
NodaTime 3.0.0.0 dotnet
|
||||
Npgsql 7.0.7.0 dotnet
|
||||
Polly 8.3.1.3207 dotnet
|
||||
Polly.Contrib.WaitAndRetry 1.1.1.0+7596d2dacf22d88bbd814bc49c28424fb6e921e9 dotnet
|
||||
Polly.Core 8.3.1.3207 dotnet
|
||||
Radarr 5.6.0.8846 dotnet (+7 duplicates)
|
||||
ReusableTasks 2.0.0 dotnet
|
||||
Sentry 4.0.2.0 dotnet
|
||||
SixLabors.ImageSharp 3.1.4.0 dotnet
|
||||
Swashbuckle.AspNetCore.Swagger 6.5.0.0 dotnet
|
||||
Swashbuckle.AspNetCore.SwaggerGen 6.5.0.0 dotnet
|
||||
System 6.0.2924.17105 dotnet
|
||||
System.AppContext 6.0.2924.17105 dotnet
|
||||
System.Buffers 6.0.2924.17105 dotnet
|
||||
System.Collections 6.0.2924.17105 dotnet
|
||||
System.Collections.Concurrent 6.0.2924.17105 dotnet
|
||||
System.Collections.Immutable 6.0.2924.17105 dotnet
|
||||
System.Collections.NonGeneric 6.0.2924.17105 dotnet
|
||||
System.Collections.Specialized 6.0.2924.17105 dotnet
|
||||
System.ComponentModel 6.0.2924.17105 dotnet
|
||||
System.ComponentModel.Annotations 6.0.2924.17105 dotnet
|
||||
System.ComponentModel.DataAnnotations 6.0.2924.17105 dotnet
|
||||
System.ComponentModel.EventBasedAsync 6.0.2924.17105 dotnet
|
||||
System.ComponentModel.Primitives 6.0.2924.17105 dotnet
|
||||
System.ComponentModel.TypeConverter 6.0.2924.17105 dotnet
|
||||
System.Configuration 6.0.2924.17105 dotnet
|
||||
System.Configuration.ConfigurationManager 6.0.922.41905 dotnet
|
||||
System.Console 6.0.2924.17105 dotnet
|
||||
System.Core 6.0.2924.17105 dotnet
|
||||
System.Data 6.0.2924.17105 dotnet
|
||||
System.Data.Common 6.0.2924.17105 dotnet
|
||||
System.Data.DataSetExtensions 6.0.2924.17105 dotnet
|
||||
System.Data.SQLite 1.0.115.5 dotnet
|
||||
System.Data.SqlServerCe 4.0.8876.1 dotnet
|
||||
System.Diagnostics.Contracts 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.Debug 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.DiagnosticSource 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.EventLog 6.0.21.52210 dotnet
|
||||
System.Diagnostics.FileVersionInfo 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.Process 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.StackTrace 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.TextWriterTraceListener 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.Tools 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.TraceSource 6.0.2924.17105 dotnet
|
||||
System.Diagnostics.Tracing 6.0.2924.17105 dotnet
|
||||
System.Drawing 6.0.2924.17105 dotnet
|
||||
System.Drawing.Common 6.0.21.52210 dotnet
|
||||
System.Drawing.Primitives 6.0.2924.17105 dotnet
|
||||
System.Dynamic.Runtime 6.0.2924.17105 dotnet
|
||||
System.Formats.Asn1 6.0.2924.17105 dotnet
|
||||
System.Globalization 6.0.2924.17105 dotnet
|
||||
System.Globalization.Calendars 6.0.2924.17105 dotnet
|
||||
System.Globalization.Extensions 6.0.2924.17105 dotnet
|
||||
System.IO 6.0.2924.17105 dotnet
|
||||
System.IO.Compression 6.0.2924.17105 dotnet
|
||||
System.IO.Compression.Brotli 6.0.2924.17105 dotnet
|
||||
System.IO.Compression.FileSystem 6.0.2924.17105 dotnet
|
||||
System.IO.Compression.ZipFile 6.0.2924.17105 dotnet
|
||||
System.IO.FileSystem 6.0.2924.17105 dotnet
|
||||
System.IO.FileSystem.AccessControl 6.0.2924.17105 dotnet
|
||||
System.IO.FileSystem.DriveInfo 6.0.2924.17105 dotnet
|
||||
System.IO.FileSystem.Primitives 6.0.2924.17105 dotnet
|
||||
System.IO.FileSystem.Watcher 6.0.2924.17105 dotnet
|
||||
System.IO.IsolatedStorage 6.0.2924.17105 dotnet
|
||||
System.IO.MemoryMappedFiles 6.0.2924.17105 dotnet
|
||||
System.IO.Pipelines 6.0.522.21309 dotnet
|
||||
System.IO.Pipes 6.0.2924.17105 dotnet
|
||||
System.IO.Pipes.AccessControl 6.0.2924.17105 dotnet
|
||||
System.IO.UnmanagedMemoryStream 6.0.2924.17105 dotnet
|
||||
System.IdentityModel.Tokens.Jwt 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
System.Linq 6.0.2924.17105 dotnet
|
||||
System.Linq.Expressions 6.0.2924.17105 dotnet
|
||||
System.Linq.Parallel 6.0.2924.17105 dotnet
|
||||
System.Linq.Queryable 6.0.2924.17105 dotnet
|
||||
System.Memory 6.0.2924.17105 dotnet
|
||||
System.Net 6.0.2924.17105 dotnet
|
||||
System.Net.Http 6.0.2924.17105 dotnet
|
||||
System.Net.Http.Json 6.0.2924.17105 dotnet
|
||||
System.Net.HttpListener 6.0.2924.17105 dotnet
|
||||
System.Net.Mail 6.0.2924.17105 dotnet
|
||||
System.Net.NameResolution 6.0.2924.17105 dotnet
|
||||
System.Net.NetworkInformation 6.0.2924.17105 dotnet
|
||||
System.Net.Ping 6.0.2924.17105 dotnet
|
||||
System.Net.Primitives 6.0.2924.17105 dotnet
|
||||
System.Net.Quic 6.0.2924.17105 dotnet
|
||||
System.Net.Requests 6.0.2924.17105 dotnet
|
||||
System.Net.Security 6.0.2924.17105 dotnet
|
||||
System.Net.ServicePoint 6.0.2924.17105 dotnet
|
||||
System.Net.Sockets 6.0.2924.17105 dotnet
|
||||
System.Net.WebClient 6.0.2924.17105 dotnet
|
||||
System.Net.WebHeaderCollection 6.0.2924.17105 dotnet
|
||||
System.Net.WebProxy 6.0.2924.17105 dotnet
|
||||
System.Net.WebSockets 6.0.2924.17105 dotnet
|
||||
System.Net.WebSockets.Client 6.0.2924.17105 dotnet
|
||||
System.Numerics 6.0.2924.17105 dotnet
|
||||
System.Numerics.Vectors 6.0.2924.17105 dotnet
|
||||
System.ObjectModel 6.0.2924.17105 dotnet
|
||||
System.Private.CoreLib 6.0.2924.17105 dotnet
|
||||
System.Private.DataContractSerialization 6.0.2924.17105 dotnet
|
||||
System.Private.Uri 6.0.2924.17105 dotnet
|
||||
System.Private.Xml 6.0.2924.17105 dotnet
|
||||
System.Private.Xml.Linq 6.0.2924.17105 dotnet
|
||||
System.Reflection 6.0.2924.17105 dotnet
|
||||
System.Reflection.DispatchProxy 6.0.2924.17105 dotnet
|
||||
System.Reflection.Emit 6.0.2924.17105 dotnet
|
||||
System.Reflection.Emit.ILGeneration 6.0.2924.17105 dotnet
|
||||
System.Reflection.Emit.Lightweight 6.0.2924.17105 dotnet
|
||||
System.Reflection.Extensions 6.0.2924.17105 dotnet
|
||||
System.Reflection.Metadata 6.0.2924.17105 dotnet
|
||||
System.Reflection.Primitives 6.0.2924.17105 dotnet
|
||||
System.Reflection.TypeExtensions 6.0.2924.17105 dotnet
|
||||
System.Resources.Reader 6.0.2924.17105 dotnet
|
||||
System.Resources.ResourceManager 6.0.2924.17105 dotnet
|
||||
System.Resources.Writer 6.0.2924.17105 dotnet
|
||||
System.Runtime 6.0.2924.17105 dotnet
|
||||
System.Runtime.Caching 4.700.19.56404 dotnet
|
||||
System.Runtime.CompilerServices.VisualC 6.0.2924.17105 dotnet
|
||||
System.Runtime.Extensions 6.0.2924.17105 dotnet
|
||||
System.Runtime.Handles 6.0.2924.17105 dotnet
|
||||
System.Runtime.InteropServices 6.0.2924.17105 dotnet
|
||||
System.Runtime.InteropServices.RuntimeInformation 6.0.2924.17105 dotnet
|
||||
System.Runtime.Intrinsics 6.0.2924.17105 dotnet
|
||||
System.Runtime.Loader 6.0.2924.17105 dotnet
|
||||
System.Runtime.Numerics 6.0.2924.17105 dotnet
|
||||
System.Runtime.Serialization 6.0.2924.17105 dotnet
|
||||
System.Runtime.Serialization.Formatters 6.0.2924.17105 dotnet
|
||||
System.Runtime.Serialization.Json 6.0.2924.17105 dotnet
|
||||
System.Runtime.Serialization.Primitives 6.0.2924.17105 dotnet
|
||||
System.Runtime.Serialization.Xml 6.0.2924.17105 dotnet
|
||||
System.Security 6.0.2924.17105 dotnet
|
||||
System.Security.AccessControl 6.0.2924.17105 dotnet
|
||||
System.Security.Claims 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Algorithms 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Cng 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Csp 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Encoding 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.OpenSsl 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Pkcs 6.0.1823.26907 dotnet
|
||||
System.Security.Cryptography.Primitives 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.ProtectedData 6.0.21.52210 dotnet
|
||||
System.Security.Cryptography.X509Certificates 6.0.2924.17105 dotnet
|
||||
System.Security.Cryptography.Xml 6.0.822.36306 dotnet
|
||||
System.Security.Permissions 6.0.21.52210 dotnet
|
||||
System.Security.Principal 6.0.2924.17105 dotnet
|
||||
System.Security.Principal.Windows 6.0.2924.17105 dotnet
|
||||
System.Security.SecureString 6.0.2924.17105 dotnet
|
||||
System.ServiceModel.Web 6.0.2924.17105 dotnet
|
||||
System.ServiceProcess 6.0.2924.17105 dotnet
|
||||
System.ServiceProcess.ServiceController 6.0.1823.26907 dotnet
|
||||
System.Text.Encoding 6.0.2924.17105 dotnet
|
||||
System.Text.Encoding.CodePages 6.0.2924.17105 dotnet
|
||||
System.Text.Encoding.Extensions 6.0.2924.17105 dotnet
|
||||
System.Text.Encodings.Web 6.0.2924.17105 dotnet
|
||||
System.Text.Json 6.0.2924.17105 dotnet
|
||||
System.Text.RegularExpressions 6.0.2924.17105 dotnet
|
||||
System.Threading 6.0.2924.17105 dotnet
|
||||
System.Threading.Channels 6.0.2924.17105 dotnet
|
||||
System.Threading.Overlapped 6.0.2924.17105 dotnet
|
||||
System.Threading.Tasks 6.0.2924.17105 dotnet
|
||||
System.Threading.Tasks.Dataflow 6.0.2924.17105 dotnet
|
||||
System.Threading.Tasks.Extensions 6.0.2924.17105 dotnet
|
||||
System.Threading.Tasks.Parallel 6.0.2924.17105 dotnet
|
||||
System.Threading.Thread 6.0.2924.17105 dotnet
|
||||
System.Threading.ThreadPool 6.0.2924.17105 dotnet
|
||||
System.Threading.Timer 6.0.2924.17105 dotnet
|
||||
System.Transactions 6.0.2924.17105 dotnet
|
||||
System.Transactions.Local 6.0.2924.17105 dotnet
|
||||
System.ValueTuple 6.0.2924.17105 dotnet
|
||||
System.Web 6.0.2924.17105 dotnet
|
||||
System.Web.HttpUtility 6.0.2924.17105 dotnet
|
||||
System.Windows 6.0.2924.17105 dotnet
|
||||
System.Windows.Extensions 6.0.21.52210 dotnet
|
||||
System.Xml 6.0.2924.17105 dotnet
|
||||
System.Xml.Linq 6.0.2924.17105 dotnet
|
||||
System.Xml.ReaderWriter 6.0.2924.17105 dotnet
|
||||
System.Xml.Serialization 6.0.2924.17105 dotnet
|
||||
System.Xml.XDocument 6.0.2924.17105 dotnet
|
||||
System.Xml.XPath 6.0.2924.17105 dotnet
|
||||
System.Xml.XPath.XDocument 6.0.2924.17105 dotnet
|
||||
System.Xml.XmlDocument 6.0.2924.17105 dotnet
|
||||
System.Xml.XmlSerializer 6.0.2924.17105 dotnet
|
||||
WindowsBase 6.0.2924.17105 dotnet
|
||||
alpine-baselayout 3.4.3-r2 apk
|
||||
alpine-baselayout-data 3.4.3-r2 apk
|
||||
alpine-keys 2.4-r1 apk
|
||||
alpine-release 3.19.1-r0 apk
|
||||
apk-tools 2.14.4-r0 apk
|
||||
bash 5.2.21-r0 apk
|
||||
brotli-libs 1.1.0-r1 apk
|
||||
busybox 1.36.1-r18 apk
|
||||
busybox-binsh 1.36.1-r18 apk
|
||||
c-ares 1.27.0-r0 apk
|
||||
ca-certificates 20240226-r0 apk
|
||||
ca-certificates-bundle 20240226-r0 apk
|
||||
catatonit 0.2.0-r0 apk
|
||||
coreutils 9.4-r2 apk
|
||||
coreutils-env 9.4-r2 apk
|
||||
coreutils-fmt 9.4-r2 apk
|
||||
coreutils-sha512sum 9.4-r2 apk
|
||||
curl 8.5.0-r0 apk
|
||||
findutils 4.9.0-r5 apk
|
||||
icu-data-en 74.1-r0 apk
|
||||
icu-libs 74.1-r0 apk
|
||||
jq 1.7.1-r0 apk
|
||||
libacl 2.3.1-r4 apk
|
||||
libattr 2.5.1-r5 apk
|
||||
libbsd 0.11.7-r3 apk
|
||||
libc-utils 0.7.2-r5 apk
|
||||
libcrypto3 3.1.5-r0 apk
|
||||
libcurl 8.5.0-r0 apk
|
||||
libgcc 13.2.1_git20231014-r0 apk
|
||||
libgcrypt 1.10.3-r0 apk
|
||||
libgpg-error 1.47-r2 apk
|
||||
libidn2 2.3.4-r4 apk
|
||||
libintl 0.22.3-r0 apk
|
||||
libmd 1.1.0-r0 apk
|
||||
libncursesw 6.4_p20231125-r0 apk
|
||||
libproc2 4.0.4-r0 apk
|
||||
libssl3 3.1.5-r0 apk
|
||||
libstdc++ 13.2.1_git20231014-r0 apk
|
||||
libunistring 1.1-r2 apk
|
||||
libxml2 2.11.8-r0 apk
|
||||
libxslt 1.1.39-r0 apk
|
||||
linux-pam 1.5.3-r7 apk
|
||||
mscorlib 6.0.2924.17105 dotnet
|
||||
musl 1.2.4_git20230717-r4 apk
|
||||
musl-utils 1.2.4_git20230717-r4 apk
|
||||
ncurses-terminfo-base 6.4_p20231125-r0 apk
|
||||
netcat-openbsd 1.226-r0 apk
|
||||
netstandard 6.0.2924.17105 dotnet
|
||||
nghttp2-libs 1.58.0-r0 apk
|
||||
oniguruma 6.9.9-r0 apk
|
||||
procps-ng 4.0.4-r0 apk
|
||||
readline 8.2.1-r2 apk
|
||||
scanelf 1.3.7-r2 apk
|
||||
shadow 4.14.2-r0 apk
|
||||
skalibs 2.14.0.1-r0 apk
|
||||
sqlite-libs 3.44.2-r0 apk
|
||||
ssl_client 1.36.1-r18 apk
|
||||
tzdata 2024a-r0 apk
|
||||
utmps-libs 0.1.2.2-r0 apk
|
||||
xmlstarlet 1.6.1-r2 apk
|
||||
xz-libs 5.4.5-r0 apk
|
||||
zlib 1.3.1-r0 apk
|
||||
NAME VERSION TYPE
|
||||
Bouncy Castle for .NET (netstandard2.0) 1.9.0.1 dotnet
|
||||
Dapper 2.0.143.55328 dotnet
|
||||
Diacritical 1.0.4.0 dotnet
|
||||
DryIoc 5.4.3.0 dotnet
|
||||
DryIoc.Microsoft.DependencyInjection net6.0 6.2.0.0 dotnet
|
||||
Dynamitey 2.0.9.136 dotnet
|
||||
Equ 2.3.0 dotnet
|
||||
FFMpegCore 4.0.0.0 dotnet
|
||||
FluentMigrator 3.3.2.9 dotnet
|
||||
FluentValidation 9.5.4.0 dotnet
|
||||
ICSharpCode.SharpZipLib 1.3.3.11 dotnet
|
||||
Ical.Net 1.0.0.0 dotnet
|
||||
ImpromptuInterface 7.0.1.0 dotnet
|
||||
Instances 1.0.0.0 dotnet
|
||||
Json.NET 13.0.3.27908 dotnet
|
||||
MailKit 3.6.0.0 dotnet
|
||||
Microsoft.AspNetCore 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Antiforgery 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authentication 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Cookies 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authentication.Core 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authentication.OAuth 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authorization 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Authorization.Policy 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Components 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Components.Authorization 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Components.Forms 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Components.Server 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Components.Web 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Connections.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.CookiePolicy 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Cors 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Cryptography.Internal 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Cryptography.KeyDerivation 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.DataProtection 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.DataProtection.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.DataProtection.Extensions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Diagnostics.HealthChecks 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.HostFiltering 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Hosting 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Hosting.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Hosting.Server.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Html.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Connections 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Connections.Common 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Extensions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Features 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Http.Results 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.HttpLogging 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.HttpOverrides 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.HttpsPolicy 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Identity 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Localization 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Localization.Routing 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Metadata 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.ApiExplorer 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Core 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Cors 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.DataAnnotations 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Formatters.Json 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Formatters.Xml 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Localization 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.Razor 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.RazorPages 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.TagHelpers 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Mvc.ViewFeatures 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Razor 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Razor.Runtime 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.ResponseCaching 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.ResponseCaching.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.ResponseCompression 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Rewrite 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Routing 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Routing.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.HttpSys 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.IIS 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.IISIntegration 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Core 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.Session 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.SignalR 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Common 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Core 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.SignalR.Protocols.Json 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.StaticFiles 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.WebSockets 6.0.2523.52315 dotnet
|
||||
Microsoft.AspNetCore.WebUtilities 6.0.2523.52315 dotnet
|
||||
Microsoft.CSharp 6.0.2523.51912 dotnet
|
||||
Microsoft.Data.SqlClient 2.0.20168.4 dotnet
|
||||
Microsoft.Extensions.Caching.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Caching.Memory 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration 6.0.322.12309 dotnet
|
||||
Microsoft.Extensions.Configuration.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Binder 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.CommandLine 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.EnvironmentVariables 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration.FileExtensions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Ini 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.Json 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Configuration.KeyPerFile 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Configuration.UserSecrets 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Configuration.Xml 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.DependencyInjection 6.0.1022.47605 dotnet
|
||||
Microsoft.Extensions.DependencyInjection.Abstractions 7.0.22.51805 dotnet
|
||||
Microsoft.Extensions.Diagnostics.HealthChecks 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Features 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.FileProviders.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileProviders.Composite 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileProviders.Embedded 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.FileProviders.Physical 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.FileSystemGlobbing 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Hosting 6.0.222.6406 dotnet
|
||||
Microsoft.Extensions.Hosting.Abstractions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Hosting.WindowsServices 6.0.1823.26907 dotnet
|
||||
Microsoft.Extensions.Http 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Identity.Core 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Identity.Stores 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Localization 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Localization.Abstractions 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Logging 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Abstractions 6.0.1823.26907 dotnet
|
||||
Microsoft.Extensions.Logging.Configuration 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Console 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.Debug 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.EventLog 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.EventSource 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Logging.TraceSource 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.ObjectPool 6.0.2523.52315 dotnet
|
||||
Microsoft.Extensions.Options 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Options.ConfigurationExtensions 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Options.DataAnnotations 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.Primitives 6.0.21.52210 dotnet
|
||||
Microsoft.Extensions.WebEncoders 6.0.2523.52315 dotnet
|
||||
Microsoft.Identity.Client 4.21.1.0 dotnet
|
||||
Microsoft.IdentityModel.JsonWebTokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Logging 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Protocols 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Protocols.OpenIdConnect 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.IdentityModel.Tokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
Microsoft.JSInterop 6.0.2523.52315 dotnet
|
||||
Microsoft.Net.Http.Headers 6.0.2523.52315 dotnet
|
||||
Microsoft.OpenApi 1.2.3.0 dotnet
|
||||
Microsoft.VisualBasic 6.0.2523.51912 dotnet
|
||||
Microsoft.VisualBasic.Core 11.100.2523.51912 dotnet
|
||||
Microsoft.Win32.Primitives 6.0.2523.51912 dotnet
|
||||
Microsoft.Win32.Registry 6.0.2523.51912 dotnet
|
||||
Microsoft.Win32.SystemEvents 6.0.21.52210 dotnet
|
||||
MimeKit 3.6.0.0 dotnet
|
||||
Mono.Nat 3.0.1-master+6ab1f3f dotnet
|
||||
Mono.Posix.NETStandard 1.0.0.0 dotnet
|
||||
MonoTorrent 2.0.7-monotorrent-2.0+0c4e9bb3 dotnet
|
||||
NLog v5.2.3 5.2.3.1999 dotnet
|
||||
NLog.Extensions.Logging v5.3.3 5.3.3.381 dotnet
|
||||
NLog.Targets.Syslog 7.0.0.0 dotnet
|
||||
NodaTime 3.0.0.0 dotnet
|
||||
Npgsql 7.0.6.0 dotnet
|
||||
Polly.Contrib.WaitAndRetry 1.1.1.0+7596d2dacf22d88bbd814bc49c28424fb6e921e9 dotnet
|
||||
Radarr 5.2.6.8376 dotnet
|
||||
ReusableTasks 2.0.0-master+2aa9a10 dotnet
|
||||
Sentry 3.23.1.0 dotnet
|
||||
SixLabors.ImageSharp 3.0.2.0 dotnet
|
||||
Swashbuckle.AspNetCore.Swagger 6.5.0.0 dotnet
|
||||
Swashbuckle.AspNetCore.SwaggerGen 6.5.0.0 dotnet
|
||||
System 6.0.2523.51912 dotnet
|
||||
System.AppContext 6.0.2523.51912 dotnet
|
||||
System.Buffers 6.0.2523.51912 dotnet
|
||||
System.Collections 6.0.2523.51912 dotnet
|
||||
System.Collections.Concurrent 6.0.2523.51912 dotnet
|
||||
System.Collections.Immutable 6.0.2523.51912 dotnet
|
||||
System.Collections.NonGeneric 6.0.2523.51912 dotnet
|
||||
System.Collections.Specialized 6.0.2523.51912 dotnet
|
||||
System.ComponentModel 6.0.2523.51912 dotnet
|
||||
System.ComponentModel.Annotations 6.0.2523.51912 dotnet
|
||||
System.ComponentModel.DataAnnotations 6.0.2523.51912 dotnet
|
||||
System.ComponentModel.EventBasedAsync 6.0.2523.51912 dotnet
|
||||
System.ComponentModel.Primitives 6.0.2523.51912 dotnet
|
||||
System.ComponentModel.TypeConverter 6.0.2523.51912 dotnet
|
||||
System.Configuration 6.0.2523.51912 dotnet
|
||||
System.Configuration.ConfigurationManager 6.0.922.41905 dotnet
|
||||
System.Console 6.0.2523.51912 dotnet
|
||||
System.Core 6.0.2523.51912 dotnet
|
||||
System.Data 6.0.2523.51912 dotnet
|
||||
System.Data.Common 6.0.2523.51912 dotnet
|
||||
System.Data.DataSetExtensions 6.0.2523.51912 dotnet
|
||||
System.Data.SQLite 1.0.115.5 dotnet
|
||||
System.Data.SqlServerCe 4.0.8876.1 dotnet
|
||||
System.Diagnostics.Contracts 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.Debug 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.DiagnosticSource 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.EventLog 6.0.21.52210 dotnet
|
||||
System.Diagnostics.FileVersionInfo 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.Process 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.StackTrace 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.TextWriterTraceListener 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.Tools 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.TraceSource 6.0.2523.51912 dotnet
|
||||
System.Diagnostics.Tracing 6.0.2523.51912 dotnet
|
||||
System.Drawing 6.0.2523.51912 dotnet
|
||||
System.Drawing.Common 6.0.21.52210 dotnet
|
||||
System.Drawing.Primitives 6.0.2523.51912 dotnet
|
||||
System.Dynamic.Runtime 6.0.2523.51912 dotnet
|
||||
System.Formats.Asn1 6.0.2523.51912 dotnet
|
||||
System.Globalization 6.0.2523.51912 dotnet
|
||||
System.Globalization.Calendars 6.0.2523.51912 dotnet
|
||||
System.Globalization.Extensions 6.0.2523.51912 dotnet
|
||||
System.IO 6.0.2523.51912 dotnet
|
||||
System.IO.Compression 6.0.2523.51912 dotnet
|
||||
System.IO.Compression.Brotli 6.0.2523.51912 dotnet
|
||||
System.IO.Compression.FileSystem 6.0.2523.51912 dotnet
|
||||
System.IO.Compression.ZipFile 6.0.2523.51912 dotnet
|
||||
System.IO.FileSystem 6.0.2523.51912 dotnet
|
||||
System.IO.FileSystem.AccessControl 6.0.2523.51912 dotnet
|
||||
System.IO.FileSystem.DriveInfo 6.0.2523.51912 dotnet
|
||||
System.IO.FileSystem.Primitives 6.0.2523.51912 dotnet
|
||||
System.IO.FileSystem.Watcher 6.0.2523.51912 dotnet
|
||||
System.IO.IsolatedStorage 6.0.2523.51912 dotnet
|
||||
System.IO.MemoryMappedFiles 6.0.2523.51912 dotnet
|
||||
System.IO.Pipelines 6.0.522.21309 dotnet
|
||||
System.IO.Pipes 6.0.2523.51912 dotnet
|
||||
System.IO.Pipes.AccessControl 6.0.2523.51912 dotnet
|
||||
System.IO.UnmanagedMemoryStream 6.0.2523.51912 dotnet
|
||||
System.IdentityModel.Tokens.Jwt 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
|
||||
System.Linq 6.0.2523.51912 dotnet
|
||||
System.Linq.Expressions 6.0.2523.51912 dotnet
|
||||
System.Linq.Parallel 6.0.2523.51912 dotnet
|
||||
System.Linq.Queryable 6.0.2523.51912 dotnet
|
||||
System.Memory 6.0.2523.51912 dotnet
|
||||
System.Net 6.0.2523.51912 dotnet
|
||||
System.Net.Http 6.0.2523.51912 dotnet
|
||||
System.Net.Http.Json 6.0.2523.51912 dotnet
|
||||
System.Net.HttpListener 6.0.2523.51912 dotnet
|
||||
System.Net.Mail 6.0.2523.51912 dotnet
|
||||
System.Net.NameResolution 6.0.2523.51912 dotnet
|
||||
System.Net.NetworkInformation 6.0.2523.51912 dotnet
|
||||
System.Net.Ping 6.0.2523.51912 dotnet
|
||||
System.Net.Primitives 6.0.2523.51912 dotnet
|
||||
System.Net.Quic 6.0.2523.51912 dotnet
|
||||
System.Net.Requests 6.0.2523.51912 dotnet
|
||||
System.Net.Security 6.0.2523.51912 dotnet
|
||||
System.Net.ServicePoint 6.0.2523.51912 dotnet
|
||||
System.Net.Sockets 6.0.2523.51912 dotnet
|
||||
System.Net.WebClient 6.0.2523.51912 dotnet
|
||||
System.Net.WebHeaderCollection 6.0.2523.51912 dotnet
|
||||
System.Net.WebProxy 6.0.2523.51912 dotnet
|
||||
System.Net.WebSockets 6.0.2523.51912 dotnet
|
||||
System.Net.WebSockets.Client 6.0.2523.51912 dotnet
|
||||
System.Numerics 6.0.2523.51912 dotnet
|
||||
System.Numerics.Vectors 6.0.2523.51912 dotnet
|
||||
System.ObjectModel 6.0.2523.51912 dotnet
|
||||
System.Private.CoreLib 6.0.2523.51912 dotnet
|
||||
System.Private.DataContractSerialization 6.0.25-servicing.23519.12+492abbeef0d8a6ea902ac8f90ed339c7b1d18bf4 dotnet
|
||||
System.Private.Uri 6.0.25-servicing.23519.12+492abbeef0d8a6ea902ac8f90ed339c7b1d18bf4 dotnet
|
||||
System.Private.Xml 6.0.25-servicing.23519.12+492abbeef0d8a6ea902ac8f90ed339c7b1d18bf4 dotnet
|
||||
System.Private.Xml.Linq 6.0.25-servicing.23519.12+492abbeef0d8a6ea902ac8f90ed339c7b1d18bf4 dotnet
|
||||
System.Reflection 6.0.2523.51912 dotnet
|
||||
System.Reflection.DispatchProxy 6.0.2523.51912 dotnet
|
||||
System.Reflection.Emit 6.0.2523.51912 dotnet
|
||||
System.Reflection.Emit.ILGeneration 6.0.2523.51912 dotnet
|
||||
System.Reflection.Emit.Lightweight 6.0.2523.51912 dotnet
|
||||
System.Reflection.Extensions 6.0.2523.51912 dotnet
|
||||
System.Reflection.Metadata 6.0.2523.51912 dotnet
|
||||
System.Reflection.Primitives 6.0.2523.51912 dotnet
|
||||
System.Reflection.TypeExtensions 6.0.2523.51912 dotnet
|
||||
System.Resources.Reader 6.0.2523.51912 dotnet
|
||||
System.Resources.ResourceManager 6.0.2523.51912 dotnet
|
||||
System.Resources.Writer 6.0.2523.51912 dotnet
|
||||
System.Runtime 6.0.2523.51912 dotnet
|
||||
System.Runtime.Caching 4.700.19.56404 dotnet
|
||||
System.Runtime.CompilerServices.VisualC 6.0.2523.51912 dotnet
|
||||
System.Runtime.Extensions 6.0.2523.51912 dotnet
|
||||
System.Runtime.Handles 6.0.2523.51912 dotnet
|
||||
System.Runtime.InteropServices 6.0.2523.51912 dotnet
|
||||
System.Runtime.InteropServices.RuntimeInformation 6.0.2523.51912 dotnet
|
||||
System.Runtime.Intrinsics 6.0.2523.51912 dotnet
|
||||
System.Runtime.Loader 6.0.2523.51912 dotnet
|
||||
System.Runtime.Numerics 6.0.2523.51912 dotnet
|
||||
System.Runtime.Serialization 6.0.2523.51912 dotnet
|
||||
System.Runtime.Serialization.Formatters 6.0.2523.51912 dotnet
|
||||
System.Runtime.Serialization.Json 6.0.2523.51912 dotnet
|
||||
System.Runtime.Serialization.Primitives 6.0.2523.51912 dotnet
|
||||
System.Runtime.Serialization.Xml 6.0.2523.51912 dotnet
|
||||
System.Security 6.0.2523.51912 dotnet
|
||||
System.Security.AccessControl 6.0.2523.51912 dotnet
|
||||
System.Security.Claims 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Algorithms 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Cng 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Csp 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Encoding 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.OpenSsl 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Pkcs 6.0.1823.26907 dotnet
|
||||
System.Security.Cryptography.Primitives 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.ProtectedData 6.0.21.52210 dotnet
|
||||
System.Security.Cryptography.X509Certificates 6.0.2523.51912 dotnet
|
||||
System.Security.Cryptography.Xml 6.0.822.36306 dotnet
|
||||
System.Security.Permissions 6.0.21.52210 dotnet
|
||||
System.Security.Principal 6.0.2523.51912 dotnet
|
||||
System.Security.Principal.Windows 6.0.2523.51912 dotnet
|
||||
System.Security.SecureString 6.0.2523.51912 dotnet
|
||||
System.ServiceModel.Web 6.0.2523.51912 dotnet
|
||||
System.ServiceProcess 6.0.2523.51912 dotnet
|
||||
System.ServiceProcess.ServiceController 6.0.1823.26907 dotnet
|
||||
System.Text.Encoding 6.0.2523.51912 dotnet
|
||||
System.Text.Encoding.CodePages 6.0.2523.51912 dotnet
|
||||
System.Text.Encoding.Extensions 6.0.2523.51912 dotnet
|
||||
System.Text.Encodings.Web 6.0.2523.51912 dotnet
|
||||
System.Text.Json 6.0.2523.51912 dotnet
|
||||
System.Text.RegularExpressions 6.0.2523.51912 dotnet
|
||||
System.Threading 6.0.2523.51912 dotnet
|
||||
System.Threading.Channels 6.0.2523.51912 dotnet
|
||||
System.Threading.Overlapped 6.0.2523.51912 dotnet
|
||||
System.Threading.Tasks 6.0.2523.51912 dotnet
|
||||
System.Threading.Tasks.Dataflow 6.0.2523.51912 dotnet
|
||||
System.Threading.Tasks.Extensions 6.0.2523.51912 dotnet
|
||||
System.Threading.Tasks.Parallel 6.0.2523.51912 dotnet
|
||||
System.Threading.Thread 6.0.2523.51912 dotnet
|
||||
System.Threading.ThreadPool 6.0.2523.51912 dotnet
|
||||
System.Threading.Timer 6.0.2523.51912 dotnet
|
||||
System.Transactions 6.0.2523.51912 dotnet
|
||||
System.Transactions.Local 6.0.2523.51912 dotnet
|
||||
System.ValueTuple 6.0.2523.51912 dotnet
|
||||
System.Web 6.0.2523.51912 dotnet
|
||||
System.Web.HttpUtility 6.0.2523.51912 dotnet
|
||||
System.Windows 6.0.2523.51912 dotnet
|
||||
System.Windows.Extensions 6.0.21.52210 dotnet
|
||||
System.Xml 6.0.2523.51912 dotnet
|
||||
System.Xml.Linq 6.0.2523.51912 dotnet
|
||||
System.Xml.ReaderWriter 6.0.2523.51912 dotnet
|
||||
System.Xml.Serialization 6.0.2523.51912 dotnet
|
||||
System.Xml.XDocument 6.0.2523.51912 dotnet
|
||||
System.Xml.XPath 6.0.2523.51912 dotnet
|
||||
System.Xml.XPath.XDocument 6.0.2523.51912 dotnet
|
||||
System.Xml.XmlDocument 6.0.2523.51912 dotnet
|
||||
System.Xml.XmlSerializer 6.0.2523.51912 dotnet
|
||||
WindowsBase 6.0.2523.51912 dotnet
|
||||
alpine-baselayout 3.4.3-r1 apk
|
||||
alpine-baselayout-data 3.4.3-r1 apk
|
||||
alpine-keys 2.4-r1 apk
|
||||
alpine-release 3.18.5-r0 apk
|
||||
apk-tools 2.14.0-r2 apk
|
||||
bash 5.2.15-r5 apk
|
||||
brotli-libs 1.0.9-r14 apk
|
||||
busybox 1.36.1-r5 apk
|
||||
busybox-binsh 1.36.1-r5 apk
|
||||
ca-certificates 20230506-r0 apk
|
||||
ca-certificates-bundle 20230506-r0 apk
|
||||
coreutils 9.3-r1 apk
|
||||
curl 8.5.0-r0 apk
|
||||
icu-data-en 73.2-r2 apk
|
||||
icu-libs 73.2-r2 apk
|
||||
jq 1.6-r4 apk
|
||||
libacl 2.3.1-r3 apk
|
||||
libattr 2.5.1-r4 apk
|
||||
libbsd 0.11.7-r1 apk
|
||||
libc-utils 0.7.2-r5 apk
|
||||
libcrypto3 3.1.4-r1 apk
|
||||
libcurl 8.5.0-r0 apk
|
||||
libgcc 12.2.1_git20220924-r10 apk
|
||||
libgcrypt 1.10.2-r1 apk
|
||||
libgpg-error 1.47-r1 apk
|
||||
libidn2 2.3.4-r1 apk
|
||||
libintl 0.21.1-r7 apk
|
||||
libmd 1.0.4-r2 apk
|
||||
libncursesw 6.4_p20230506-r0 apk
|
||||
libproc2 4.0.4-r0 apk
|
||||
libssl3 3.1.4-r1 apk
|
||||
libstdc++ 12.2.1_git20220924-r10 apk
|
||||
libunistring 1.1-r1 apk
|
||||
libxml2 2.11.6-r0 apk
|
||||
libxslt 1.1.38-r0 apk
|
||||
linux-pam 1.5.2-r10 apk
|
||||
mscorlib 6.0.2523.51912 dotnet
|
||||
musl 1.2.4-r2 apk
|
||||
musl-utils 1.2.4-r2 apk
|
||||
ncurses-terminfo-base 6.4_p20230506-r0 apk
|
||||
netcat-openbsd 1.219-r1 apk
|
||||
netstandard 6.0.2523.51912 dotnet
|
||||
nghttp2-libs 1.57.0-r0 apk
|
||||
oniguruma 6.9.8-r1 apk
|
||||
procps-ng 4.0.4-r0 apk
|
||||
readline 8.2.1-r1 apk
|
||||
scanelf 1.3.7-r1 apk
|
||||
shadow 4.13-r4 apk
|
||||
skalibs 2.13.1.1-r1 apk
|
||||
sqlite-libs 3.41.2-r2 apk
|
||||
ssl_client 1.36.1-r5 apk
|
||||
tzdata 2023d-r0 apk
|
||||
utmps-libs 0.1.2.1-r1 apk
|
||||
xmlstarlet 1.6.1-r2 apk
|
||||
xz-libs 5.4.3-r0 apk
|
||||
zlib 1.2.13-r1 apk
|
||||
|
||||
+16
-9
@@ -24,16 +24,21 @@ development_versions_items:
|
||||
param_container_name: "{{ project_name }}"
|
||||
param_usage_include_vols: true
|
||||
param_volumes:
|
||||
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/data", desc: "Database and Radarr configs" }
|
||||
- { vol_path: "/config", vol_host_path: "/path/to/data", desc: "Database and Radarr configs" }
|
||||
|
||||
opt_param_usage_include_vols: true
|
||||
opt_param_volumes:
|
||||
- { vol_path: "/movies", vol_host_path: "/path/to/movies", desc: "Location of Movie library on disk (See note in Application setup)" }
|
||||
- { vol_path: "/downloads", vol_host_path: "/path/to/download-client-downloads", desc: "Location of download managers output directory (See note in Application setup)" }
|
||||
- { vol_path: "/downloads", vol_host_path: "/path/to/downloadclient-downloads", desc: "Location of download managers output directory (See note in Application setup)" }
|
||||
|
||||
param_usage_include_ports: true
|
||||
param_ports:
|
||||
- { external_port: "7878", internal_port: "7878", port_desc: "The port for the Radarr web UI" }
|
||||
- { external_port: "7878", internal_port: "7878", port_desc: "The port for the Radarr webinterface" }
|
||||
param_usage_include_env: true
|
||||
param_env_vars:
|
||||
- { env_var: "TZ", env_value: "Europe/London", desc: "Specify a timezone to use EG Europe/London, this is required for Radarr"}
|
||||
# optional env variables
|
||||
opt_param_usage_include_env: false
|
||||
|
||||
# application setup block
|
||||
app_setup_block_enabled: true
|
||||
@@ -44,18 +49,20 @@ app_setup_block: |
|
||||
|
||||
We have set `/movies` and `/downloads` as ***optional paths***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
|
||||
|
||||
Use the optional paths if you don't understand, or don't want hardlinks/atomic moves.
|
||||
Use the optional paths if you dont understand, or dont want hardlinks/atomic moves.
|
||||
|
||||
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
|
||||
|
||||
# changelog
|
||||
# changelog
|
||||
changelogs:
|
||||
- { date: "20.03.24:", desc: "Rebase to Alpine 3.19." }
|
||||
- { date: "06.06.23:", desc: "Rebase develop to Alpine 3.18." }
|
||||
- { date: "19.12.22:", desc: "Rebase develop branch to Alpine 3.17, migrate to s6v3." }
|
||||
- { date: "06.06.23:", desc: "Rebase master to Alpine 3.18, deprecate armhf as per [https://www.linuxserver.io/armhf](https://www.linuxserver.io/armhf)." }
|
||||
- { date: "17.01.23:", desc: "Rebase master branch to Alpine 3.17, migrate to s6v3." }
|
||||
- { date: "06.06.22:", desc: "Rebase master branch to Alpine 3.15." }
|
||||
- { date: "20.02.22:", desc: "Rebase develop branch to Alpine." }
|
||||
- { date: "04.02.22:", desc: "Rebase nightly branch to Alpine and deprecate nightly-alpine branch." }
|
||||
- { date: "27.12.21:", desc: "Add nightly-alpine branch." }
|
||||
- { date: "17.10.21:", desc: "Remove `UMASK_SET`." }
|
||||
- { date: "11.07.21:", desc: "Make the paths clearer to the user" }
|
||||
- { date: "08.05.21:", desc: "Make the paths clearer to the user" }
|
||||
- { date: "17.01.21:", desc: "Deprecate `UMASK_SET` in favor of UMASK in baseimage, see above for more information." }
|
||||
- { date: "11.30.20:", desc: "Publish `develop` tag." }
|
||||
- { date: "11.28.20:", desc: "Switch to v3 .NET CORE builds (no more mono, `5.14` tag is deprecated). Rebase to Focal (for issues on arm32v7, [see here](https://docs.linuxserver.io/faq#my-host-is-incompatible-with-images-based-on-ubuntu-focal))." }
|
||||
|
||||
Reference in New Issue
Block a user