Compare commits

...
Author SHA1 Message Date
LinuxServer-CI b2079f29d8 Bot Updating Package Versions 2023-03-26 11:12:05 +02:00
LinuxServer-CI 03e8ab6919 Bot Updating Package Versions 2023-03-12 10:12:20 +01:00
LinuxServer-CI d17127228f Bot Updating Package Versions 2023-03-04 09:24:18 -06:00
LinuxServer-CI 3bb7e2769c Bot Updating Templated Files 2023-03-04 09:20:43 -06:00
LinuxServer-CI 5a7bbbd2cd Bot Updating Package Versions 2023-02-23 22:21:41 +01:00
LinuxServer-CI b15e19a78e Bot Updating Package Versions 2023-02-19 03:14:03 -06:00
LinuxServer-CI 719c33e554 Bot Updating Templated Files 2023-02-12 10:12:21 +01:00
LinuxServer-CI 0dbc9e4776 Bot Updating Templated Files 2023-02-12 10:11:03 +01:00
AdamandGitHub 8350054896 Merge pull request #39 from linuxserver/dev-arm 2023-01-22 21:24:24 +00:00
TheSpad 371eaa001b Remove Windows binaries from generic zip 2023-01-22 20:14:17 +00:00
TheSpad 17f76ff225 Only chmod core if it exists 2023-01-22 19:59:28 +00:00
TheSpad be5e598305 Do build armhf 2023-01-22 19:56:38 +00:00
TheSpad 984d1ce002 Fix errant space 2023-01-22 19:55:36 +00:00
TheSpad d2a45dab21 Update release URL for arch-specific packages 2023-01-22 19:54:48 +00:00
AdamandGitHub 29d77d21ff Merge pull request #34 from linuxserver/revert-33-revert-30-dev-v5 2023-01-21 12:01:03 +00:00
AdamandGitHub b305e2ac4f Revert "Revert "Update deps for v5 (dev)"" 2023-01-20 21:06:03 +00:00
AdamandGitHub 83739880eb Merge pull request #33 from linuxserver/revert-30-dev-v5 2023-01-20 20:46:52 +00:00
AdamandGitHub 9edb19e41a Revert "Update deps for v5 (dev)" 2023-01-20 18:33:35 +00:00
AdamandGitHub 523b87c9d3 Merge pull request #30 from linuxserver/dev-v5 2023-01-20 16:33:45 +00:00
TheSpad 04dddfb191 Clean indentation 2023-01-20 16:03:04 +00:00
TheSpad 90d015f8d0 Formatting fixes 2023-01-20 15:59:26 +00:00
TheSpad e792ece366 Fix filename typo 2023-01-20 15:57:09 +00:00
TheSpad 15bff24561 Update deps for v5 2023-01-20 15:51:27 +00:00
LinuxServer-CI 6464ea8274 Bot Updating Package Versions 2023-01-20 09:25:08 -06:00
LinuxServer-CI 75b42899e1 Bot Updating Package Versions 2023-01-15 03:12:32 -06:00
LinuxServer-CI 6cde2975e3 Bot Updating Package Versions 2022-12-17 21:24:18 +01:00
RoxedusandGitHub 7153ffe3c2 Merge pull request #26 from linuxserver/dev-17
closes https://github.com/linuxserver/docker-nzbhydra2/issues/25
2022-12-17 21:21:32 +01:00
Roxedus 89b49bb454 Grab dev on local builds, purge init files 2022-12-13 23:52:26 +01:00
Roxedus bc06ef9203 V3ify 2022-12-13 21:52:45 +01:00
Roxedus 258087ff96 Rebase to ubuntu 2022-12-13 21:42:52 +01:00
LinuxServer-CI a0a00ee9f7 Bot Updating Package Versions 2022-12-11 10:11:32 +01:00
Roxedus 07d3e123e3 Bump JRE version 2022-12-03 16:48:06 +01:00
LinuxServer-CI c88826accc Bot Updating Templated Files 2022-11-30 19:30:37 +01:00
LinuxServer-CI 293265827e Bot Updating Templated Files 2022-11-30 19:29:10 +01:00
LinuxServer-CI e46461be88 Bot Updating Templated Files 2022-11-30 19:27:53 +01:00
LinuxServer-CI b81e698322 Bot Updating Package Versions 2022-11-13 03:16:31 -06:00
LinuxServer-CI 3650b5db69 Bot Updating Templated Files 2022-11-13 03:13:32 -06:00
LinuxServer-CI 516d3bc0e1 Bot Updating Package Versions 2022-11-06 10:16:04 +01:00
LinuxServer-CI 87f3709526 Bot Updating Package Versions 2022-10-30 04:14:41 -05:00
LinuxServer-CI 329ae2b887 Bot Updating Package Versions 2022-09-25 04:15:40 -05:00
LinuxServer-CI b9c99e04d0 Bot Updating Templated Files 2022-09-18 11:13:51 +02:00
LinuxServer-CI 483194ec49 Bot Updating Package Versions 2022-09-04 04:13:45 -05:00
LinuxServer-CI 30e2b8138d Bot Updating Package Versions 2022-08-23 18:35:23 +02:00
LinuxServer-CI 6f564f6bf5 Bot Updating Package Versions 2022-08-21 04:13:27 -05:00
LinuxServer-CI 8de6e62613 Bot Updating Package Versions 2022-08-09 15:28:44 -05:00
LinuxServer-CI 53177986b4 Bot Updating Package Versions 2022-08-02 14:21:14 -05:00
LinuxServer-CI 69648e4e54 Bot Updating Package Versions 2022-07-31 04:12:56 -05:00
LinuxServer-CI 429dc6a09c Bot Updating Package Versions 2022-07-24 11:13:21 +02:00
LinuxServer-CI 70dbea1b35 Bot Updating Package Versions 2022-07-17 11:13:11 +02:00
LinuxServer-CI f5e1852c28 Bot Updating Package Versions 2022-07-09 11:23:24 +02:00
LinuxServer-CI 10616757ab Bot Updating Package Versions 2022-07-03 04:13:31 -05:00
LinuxServer-CI 423a6401c7 Bot Updating Package Versions 2022-05-22 04:13:15 -05:00
LinuxServer-CI 21e1506643 Bot Updating Package Versions 2022-05-08 11:13:37 +02:00
LinuxServer-CI e32c640c4f Bot Updating Templated Files 2022-05-02 18:37:06 +02:00
LinuxServer-CI 447b095d7e Bot Updating Package Versions 2022-05-01 04:17:36 -05:00
LinuxServer-CI c2d06a9d36 Bot Updating Templated Files 2022-05-01 04:14:46 -05:00
LinuxServer-CI 2e2aa3caad Bot Updating Templated Files 2022-05-01 04:13:26 -05:00
LinuxServer-CI 587a5612ec Bot Updating Package Versions 2022-04-19 13:10:28 -05:00
LinuxServer-CI a1c5c90586 Bot Updating Templated Files 2022-04-19 13:07:34 -05:00
LinuxServer-CI 7ffa7e5683 Bot Updating Templated Files 2022-04-19 20:06:06 +02:00
AdamandGitHub 3839fada56 Merge pull request #16 from linuxserver/dev-alpine 2022-04-19 19:04:52 +01:00
TheSpad d4d6ea92ae Actually change the baseimages for arm 2022-04-18 22:16:44 +01:00
TheSpad 076309b476 Rebase to Alpine 3.15 2022-04-18 22:14:13 +01:00
LinuxServer-CI e33620dad9 Bot Updating Package Versions 2022-04-17 11:13:56 +02:00
LinuxServer-CI dba4c0a5c0 Bot Updating Package Versions 2022-04-03 04:13:32 -05:00
LinuxServer-CI fce7be9c78 Bot Updating Package Versions 2022-03-24 02:23:29 -05:00
LinuxServer-CI 0e10ccb722 Bot Updating Package Versions 2022-03-13 04:12:49 -05:00
LinuxServer-CI ff2bff29dd Bot Updating Package Versions 2022-03-04 09:29:21 +01:00
LinuxServer-CI 11f0d22b86 Bot Updating Package Versions 2022-02-27 10:12:54 +01:00
LinuxServer-CI cc67628e6b Bot Updating Package Versions 2022-02-06 10:11:59 +01:00
LinuxServer-CI e35e2f9efd Bot Updating Package Versions 2022-01-16 10:13:12 +01:00
LinuxServer-CI 1e891332c0 Bot Updating Package Versions 2021-12-26 10:12:37 +01:00
LinuxServer-CI d4624f0da3 Bot Updating Package Versions 2021-12-19 10:16:19 +01:00
LinuxServer-CI ebf4267dce Bot Updating Templated Files 2021-12-19 10:13:28 +01:00
LinuxServer-CI fab68c6812 Bot Updating Templated Files 2021-12-19 10:12:25 +01:00
LinuxServer-CI 3cff9c4a73 Bot Updating Package Versions 2021-12-01 21:26:24 +01:00
LinuxServer-CI 65973d94d2 Bot Updating Package Versions 2021-11-07 10:12:36 +01:00
LinuxServer-CI ca04e506c0 Bot Updating Package Versions 2021-10-17 11:11:35 +02:00
LinuxServer-CI 5dcc0c7d6b Bot Updating Package Versions 2021-10-03 11:15:55 +02:00
LinuxServer-CI 561358af55 Bot Updating Templated Files 2021-10-03 11:12:03 +02:00
LinuxServer-CI 58a19d405d Bot Updating Templated Files 2021-10-03 11:10:55 +02:00
LinuxServer-CI ef56395270 Bot Updating Package Versions 2021-09-25 11:21:32 +02:00
34 changed files with 660 additions and 422 deletions
+1 -1
View File
@@ -15,6 +15,6 @@ trim_trailing_whitespace = false
indent_style = space
indent_size = 2
[{**.sh,root/etc/cont-init.d/**,root/etc/services.d/**}]
[{**.sh,root/etc/s6-overlay/s6-rc.d/**,root/etc/cont-init.d/**,root/etc/services.d/**}]
indent_style = space
indent_size = 4
-40
View File
@@ -1,40 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
---
[linuxserverurl]: https://linuxserver.io
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
<!--- Provide a general summary of the bug in the Title above -->
------------------------------
## Expected Behavior
<!--- Tell us what should happen -->
## Current Behavior
<!--- Tell us what happens instead of the expected behavior -->
## Steps to Reproduce
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->
1.
2.
3.
4.
## Environment
**OS:**
**CPU architecture:** x86_64/arm32/arm64
**How docker service was installed:**
<!--- ie. from the official docker repo, from the distro repo, nas OS provided, etc. -->
<!--- Providing context helps us come up with a solution that is most useful in the real world -->
## Command used to create docker container (run/create/compose/screenshot)
<!--- Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container -->
## Docker logs
<!--- Provide a full docker log, output of "docker logs nzbhydra2" -->
+77
View File
@@ -0,0 +1,77 @@
# Based on the issue template
name: Bug report
description: Create a report to help us improve
title: "[BUG] <title>"
labels: [Bug]
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Current Behavior
description: Tell us what happens instead of the expected behavior.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: Tell us what should happen.
validations:
required: false
- type: textarea
attributes:
label: Steps To Reproduce
description: Steps to reproduce the behavior.
placeholder: |
1. In this environment...
2. With this config...
3. Run '...'
4. See error...
validations:
required: true
- type: textarea
attributes:
label: Environment
description: |
examples:
- **OS**: Ubuntu 20.04
- **How docker service was installed**: distro's packagemanager
value: |
- OS:
- How docker service was installed:
render: markdown
validations:
required: false
- type: dropdown
attributes:
label: CPU architecture
options:
- x86-64
- arm64
- armhf
validations:
required: true
- type: textarea
attributes:
label: Docker creation
description: |
Command used to create docker container
Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container
render: bash
validations:
required: true
- type: textarea
attributes:
description: |
Provide a full docker log, output of "docker logs linuxserver.io"
label: Container logs
placeholder: |
Output of `docker logs linuxserver.io`
render: bash
validations:
required: true
-25
View File
@@ -1,25 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
---
[linuxserverurl]: https://linuxserver.io
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
<!--- If this acts as a feature request please ask yourself if this modification is something the whole userbase will benefit from --->
<!--- If this is a specific change for corner case functionality or plugins please look at making a Docker Mod or local script https://blog.linuxserver.io/2019/09/14/customizing-our-containers/ -->
<!--- Provide a general summary of the request in the Title above -->
------------------------------
## Desired Behavior
<!--- Tell us what should happen -->
## Current Behavior
<!--- Tell us what happens instead of the expected behavior -->
## Alternatives Considered
<!--- Tell us what other options you have tried or considered -->
+31
View File
@@ -0,0 +1,31 @@
# Based on the issue template
name: Feature request
description: Suggest an idea for this project
title: "[FEAT] <title>"
labels: [enhancement]
body:
- type: checkboxes
attributes:
label: Is this a new feature request?
description: Please search to see if a feature request already exists.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Wanted change
description: Tell us what you want to happen.
validations:
required: true
- type: textarea
attributes:
label: Reason for change
description: Justify your request, why do you want it, what is the benefit.
validations:
required: true
- type: textarea
attributes:
label: Proposed code change
description: Do you have a potential code change in mind?
validations:
required: false
+12
View File
@@ -0,0 +1,12 @@
name: Comment on invalid interaction
on:
issues:
types:
- labeled
jobs:
add-comment-on-invalid:
if: github.event.label.name == 'invalid'
permissions:
issues: write
uses: linuxserver/github-workflows/.github/workflows/invalid-interaction-helper.yml@v1
secrets: inherit
+7 -3
View File
@@ -7,7 +7,7 @@ jobs:
external-trigger-dev:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
- name: External Trigger
if: github.ref == 'refs/heads/dev'
@@ -48,8 +48,12 @@ jobs:
| jq -r '.config.digest')
image_info=$(curl -sL \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/blobs/${digest}" \
| jq -r '.container_config')
"https://ghcr.io/v2/${image}/blobs/${digest}")
if [[ $(echo $image_info | jq -r '.container_config') == "null" ]]; then
image_info=$(echo $image_info | jq -r '.config')
else
image_info=$(echo $image_info | jq -r '.container_config')
fi
IMAGE_RELEASE=$(echo ${image_info} | jq -r '.Labels.build_version' | awk '{print $3}')
IMAGE_VERSION=$(echo ${IMAGE_RELEASE} | awk -F'-ls' '{print $1}')
if [ -z "${IMAGE_VERSION}" ]; then
@@ -9,7 +9,7 @@ jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
with:
fetch-depth: '0'
+1 -1
View File
@@ -8,6 +8,6 @@ jobs:
steps:
- uses: actions/first-interaction@v1
with:
issue-message: 'Thanks for opening your first issue here! Be sure to follow the [bug](https://github.com/linuxserver/docker-nzbhydra2/blob/dev/.github/ISSUE_TEMPLATE/issue.bug.md) or [feature](https://github.com/linuxserver/docker-nzbhydra2/blob/dev/.github/ISSUE_TEMPLATE/issue.feature.md) issue templates!'
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-nzbhydra2/blob/dev/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}
+1 -1
View File
@@ -7,7 +7,7 @@ jobs:
package-trigger-dev:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
- name: Package Trigger
if: github.ref == 'refs/heads/dev'
@@ -9,7 +9,7 @@ jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
with:
fetch-depth: '0'
+9
View File
@@ -0,0 +1,9 @@
name: Permission check
on:
pull_request:
paths:
- '**/run'
- '**/finish'
jobs:
permission_check:
uses: linuxserver/github-workflows/.github/workflows/init-svc-executable-permissions.yml@v1
+1 -1
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v3
- uses: actions/stale@v6.0.1
with:
stale-issue-message: "This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
stale-pr-message: "This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
+41 -29
View File
@@ -1,48 +1,60 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:bionic
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy
# set version label
ARG BUILD_DATE
ARG VERSION
ARG NZBHYDRA2_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="aptalca,nemchik"
LABEL maintainer="nemchik"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV NZBHYDRA2_RELEASE_TYPE="Pre-Release"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install -y \
curl \
jq \
unzip && \
apt-get install --no-install-recommends -y \
openjdk-11-jre-headless \
python3 && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-linux.zip" && \
mkdir -p /app/nzbhydra2/bin && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2/bin && \
chmod +x /app/nzbhydra2/bin/nzbhydra2wrapperPy3.py && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
libfreetype6 \
openjdk-17-jre-headless \
python3 \
unzip && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-amd64-linux.zip" && \
mkdir -p /app/nzbhydra2 && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2 && \
chmod +x /app/nzbhydra2/nzbhydra2wrapperPy3.py && \
if [ -f /app/nzbhydra2/core ]; then chmod +x /app/nzbhydra2/core; fi && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
mkdir -p /defaults && \
curl -o \
/defaults/nzbhydra.yml -L \
"https://raw.githubusercontent.com/theotherp/nzbhydra2/v${NZBHYDRA2_VER}/core/src/main/resources/config/baseConfig.yml" && \
sed -i 's/mapIpToHost: true/mapIpToHost: false/' /defaults/nzbhydra.yml && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/* \
/var/log/* \
/app/nzbhydra2/upstart \
/app/nzbhydra2/rc.d \
/app/nzbhydra2/sysv \
/app/nzbhydra2/systemd
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 5076
VOLUME /config
+41 -29
View File
@@ -1,48 +1,60 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-bionic
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-jammy
# set version label
ARG BUILD_DATE
ARG VERSION
ARG NZBHYDRA2_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="aptalca,nemchik"
LABEL maintainer="nemchik"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV NZBHYDRA2_RELEASE_TYPE="Pre-Release"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install -y \
curl \
jq \
unzip && \
apt-get install --no-install-recommends -y \
openjdk-11-jre-headless \
python3 && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-linux.zip" && \
mkdir -p /app/nzbhydra2/bin && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2/bin && \
chmod +x /app/nzbhydra2/bin/nzbhydra2wrapperPy3.py && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
libfreetype6 \
openjdk-17-jre-headless \
python3 \
unzip && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-arm64-linux.zip" && \
mkdir -p /app/nzbhydra2 && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2 && \
chmod +x /app/nzbhydra2/nzbhydra2wrapperPy3.py && \
if [ -f /app/nzbhydra2/core ]; then chmod +x /app/nzbhydra2/core; fi && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
mkdir -p /defaults && \
curl -o \
/defaults/nzbhydra.yml -L \
"https://raw.githubusercontent.com/theotherp/nzbhydra2/v${NZBHYDRA2_VER}/core/src/main/resources/config/baseConfig.yml" && \
sed -i 's/mapIpToHost: true/mapIpToHost: false/' /defaults/nzbhydra.yml && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/* \
/var/log/* \
/app/nzbhydra2/upstart \
/app/nzbhydra2/rc.d \
/app/nzbhydra2/sysv \
/app/nzbhydra2/systemd
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 5076
VOLUME /config
+44 -29
View File
@@ -1,48 +1,63 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-bionic
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-jammy
# set version label
ARG BUILD_DATE
ARG VERSION
ARG NZBHYDRA2_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="aptalca,nemchik"
LABEL maintainer="nemchik"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV NZBHYDRA2_RELEASE_TYPE="Pre-Release"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install -y \
curl \
jq \
unzip && \
apt-get install --no-install-recommends -y \
openjdk-11-jre-headless \
python3 && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-linux.zip" && \
mkdir -p /app/nzbhydra2/bin && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2/bin && \
chmod +x /app/nzbhydra2/bin/nzbhydra2wrapperPy3.py && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
libfreetype6 \
openjdk-17-jre-headless \
python3 \
unzip && \
echo "**** install nzbhydra2 ****" && \
if [ -z ${NZBHYDRA2_RELEASE+x} ]; then \
NZBHYDRA2_RELEASE=$(curl -sX GET "https://api.github.com/repos/theotherp/nzbhydra2/releases" \
| jq -r '.[0] | .tag_name'); \
fi && \
NZBHYDRA2_VER=${NZBHYDRA2_RELEASE#v} && \
curl -o \
/tmp/nzbhydra2.zip -L \
"https://github.com/theotherp/nzbhydra2/releases/download/v${NZBHYDRA2_VER}/nzbhydra2-${NZBHYDRA2_VER}-generic.zip" && \
mkdir -p /app/nzbhydra2 && \
unzip /tmp/nzbhydra2.zip -d /app/nzbhydra2 && \
chmod +x /app/nzbhydra2/nzbhydra2wrapperPy3.py && \
if [ -f /app/nzbhydra2/core ]; then chmod +x /app/nzbhydra2/core; fi && \
echo "ReleaseType=${NZBHYDRA2_RELEASE_TYPE}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/nzbhydra2/package_info && \
mkdir -p /defaults && \
curl -o \
/defaults/nzbhydra.yml -L \
"https://raw.githubusercontent.com/theotherp/nzbhydra2/v${NZBHYDRA2_VER}/core/src/main/resources/config/baseConfig.yml" && \
sed -i 's/mapIpToHost: true/mapIpToHost: false/' /defaults/nzbhydra.yml && \
echo "**** cleanup ****" && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/* \
/var/log/* \
/app/nzbhydra2/upstart \
/app/nzbhydra2/rc.d \
/app/nzbhydra2/sysv \
/app/nzbhydra2/systemd \
/app/nzbhydra2/WindowsService \
/app/nzbhydra2/NZBHydra2.exe \
"/app/nzbhydra2/NZBHydra2 Console.exe"
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 5076
VOLUME /config
Vendored
+151 -53
View File
@@ -16,6 +16,7 @@ pipeline {
GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab')
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
SCARF_TOKEN=credentials('scarf_api_key')
EXT_GIT_BRANCH = 'develop'
EXT_USER = 'theotherp'
EXT_REPO = 'nzbhydra2'
@@ -35,7 +36,7 @@ pipeline {
CI_DELAY='120'
CI_DOCKERENV='TZ=US/Pacific'
CI_AUTH='user:password'
CI_WEBPATH=''
CI_WEBPATH='/system/about'
}
stages {
// Setup all the basic environment variables needed for the build
@@ -58,7 +59,7 @@ pipeline {
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.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt'
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/stale.yml ./.github/workflows/call_invalid_helper.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt'
}
script{
env.LS_RELEASE_NUMBER = sh(
@@ -68,7 +69,7 @@ pipeline {
script{
env.LS_TAG_NUMBER = sh(
script: '''#! /bin/bash
tagsha=$(git rev-list -n 1 ${LS_RELEASE} 2>/dev/null)
tagsha=$(git rev-list -n 1 dev-${LS_RELEASE} 2>/dev/null)
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
echo ${LS_RELEASE_NUMBER}
elif [ -z "${GIT_COMMIT}" ]; then
@@ -126,6 +127,30 @@ pipeline {
env.EXT_RELEASE_CLEAN = sh(
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''',
returnStdout: true).trim()
def semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)\.(\d+)/
if (semver.find()) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${semver[0][3]}"
} else {
semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)(?:\.(\d+))?(.*)/
if (semver.find()) {
if (semver[0][3]) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${semver[0][3]}"
} else if (!semver[0][3] && !semver[0][4]) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${(new Date()).format('YYYYMMdd')}"
}
}
}
if (env.SEMVER != null) {
if (BRANCH_NAME != "master" && BRANCH_NAME != "main") {
env.SEMVER = "${env.SEMVER}-${BRANCH_NAME}"
}
println("SEMVER: ${env.SEMVER}")
} else {
println("No SEMVER detected")
}
}
}
}
@@ -140,6 +165,7 @@ pipeline {
env.IMAGE = env.DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/' + env.CONTAINER_NAME
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-dev-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm32v7-dev-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-dev-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
} else {
@@ -162,6 +188,7 @@ pipeline {
env.IMAGE = env.DEV_DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/lsiodev-' + env.CONTAINER_NAME
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-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm32v7-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
} else {
@@ -184,6 +211,7 @@ pipeline {
env.IMAGE = env.PR_DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/lspipepr-' + env.CONTAINER_NAME
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-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm32v7-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm64v8-dev-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
} else {
@@ -259,7 +287,7 @@ pipeline {
echo "Jenkinsfile is up to date."
fi
# Stage 2 - Delete old templates
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md"
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md\n.github/ISSUE_TEMPLATE/issue.bug.md\n.github/ISSUE_TEMPLATE/issue.feature.md"
for i in ${OLD_TEMPLATES}; do
if [[ -f "${i}" ]]; then
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -325,9 +353,11 @@ pipeline {
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/
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, removing Unraid template"
git rm unraid/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Removing Deprecated Unraid Template' || :
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
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add unraid/${CONTAINER_NAME}.xml
@@ -379,6 +409,36 @@ pipeline {
"visibility":"public"}' '''
}
}
/* #######################
Scarf.sh package registry
####################### */
// Add package to Scarf.sh and set permissions
stage("Scarf.sh package registry"){
when {
branch "dev"
environment name: 'EXIT_STATUS', value: ''
}
steps{
sh '''#! /bin/bash
set -e
PACKAGE_UUID=$(curl -X GET -H "Authorization: Bearer ${SCARF_TOKEN}" https://scarf.sh/api/v1/organizations/linuxserver-ci/packages | jq -r '.[] | select(.name=="linuxserver/nzbhydra2") | .uuid')
if [ -z "${PACKAGE_UUID}" ]; then
echo "Adding package to Scarf.sh"
curl -sX POST https://scarf.sh/api/v1/organizations/linuxserver-ci/packages \
-H "Authorization: Bearer ${SCARF_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"name":"linuxserver/nzbhydra2",\
"shortDescription":"example description",\
"libraryType":"docker",\
"website":"https://github.com/linuxserver/docker-nzbhydra2",\
"backendUrl":"https://ghcr.io/linuxserver/nzbhydra2",\
"publicUrl":"https://lscr.io/linuxserver/nzbhydra2"}' || :
else
echo "Package already exists on Scarf.sh"
fi
'''
}
}
/* ###############
Build Container
############### */
@@ -386,13 +446,14 @@ pipeline {
stage('Build-Single') {
when {
expression {
env.MULTIARCH == 'false' || params.PACKAGE_CHECK == 'true'
env.MULTIARCH == 'false' || params.PACKAGE_CHECK == 'true'
}
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Running on node: ${NODE_NAME}"
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-nzbhydra2/packages\" \
@@ -405,7 +466,7 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Nzbhydra2\" \
--label \"org.opencontainers.image.description=[Nzbhydra2](https://github.com/theotherp/nzbhydra2) is a meta search application for NZB indexers, the spiritual successor to NZBmegasearcH, and an evolution of the original application [NZBHydra](https://github.com/theotherp/nzbhydra). It provides easy access to a number of raw and newznab based indexers. The application NZBHydra 2 is currently in its early stages and is in active development. Be wary that there may be some compatibility issues for those migrating from V1 to V2, so ensure you back up your old configuration before moving over to the new version. \" \
--no-cache --pull -t ${IMAGE}:${META_TAG} \
--no-cache --pull -t ${IMAGE}:${META_TAG} --platform=linux/amd64 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
}
}
@@ -422,7 +483,8 @@ pipeline {
stage('Build X86') {
steps {
echo "Running on node: ${NODE_NAME}"
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-nzbhydra2/packages\" \
@@ -435,7 +497,7 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Nzbhydra2\" \
--label \"org.opencontainers.image.description=[Nzbhydra2](https://github.com/theotherp/nzbhydra2) is a meta search application for NZB indexers, the spiritual successor to NZBmegasearcH, and an evolution of the original application [NZBHydra](https://github.com/theotherp/nzbhydra). It provides easy access to a number of raw and newznab based indexers. The application NZBHydra 2 is currently in its early stages and is in active development. Be wary that there may be some compatibility issues for those migrating from V1 to V2, so ensure you back up your old configuration before moving over to the new version. \" \
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} --platform=linux/amd64 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
}
}
@@ -449,7 +511,8 @@ pipeline {
sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
'''
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile.armhf"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-nzbhydra2/packages\" \
@@ -462,7 +525,7 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Nzbhydra2\" \
--label \"org.opencontainers.image.description=[Nzbhydra2](https://github.com/theotherp/nzbhydra2) is a meta search application for NZB indexers, the spiritual successor to NZBmegasearcH, and an evolution of the original application [NZBHydra](https://github.com/theotherp/nzbhydra). It provides easy access to a number of raw and newznab based indexers. The application NZBHydra 2 is currently in its early stages and is in active development. Be wary that there may be some compatibility issues for those migrating from V1 to V2, so ensure you back up your old configuration before moving over to the new version. \" \
--no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
--no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} --platform=linux/arm/v7 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
retry(5) {
@@ -483,7 +546,8 @@ pipeline {
sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
'''
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile.aarch64"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-nzbhydra2/packages\" \
@@ -496,7 +560,7 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Nzbhydra2\" \
--label \"org.opencontainers.image.description=[Nzbhydra2](https://github.com/theotherp/nzbhydra2) is a meta search application for NZB indexers, the spiritual successor to NZBmegasearcH, and an evolution of the original application [NZBHydra](https://github.com/theotherp/nzbhydra). It provides easy access to a number of raw and newznab based indexers. The application NZBHydra 2 is currently in its early stages and is in active development. Be wary that there may be some compatibility issues for those migrating from V1 to V2, so ensure you back up your old configuration before moving over to the new version. \" \
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} --platform=linux/arm64 \
--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) {
@@ -525,26 +589,12 @@ pipeline {
else
LOCAL_CONTAINER=${IMAGE}:${META_TAG}
fi
if [ "${DIST_IMAGE}" == "alpine" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
apk info -v > /tmp/package_versions.txt && \
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
elif [ "${DIST_IMAGE}" == "ubuntu" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
apt list -qq --installed | sed "s#/.*now ##g" | cut -d" " -f1 > /tmp/package_versions.txt && \
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
elif [ "${DIST_IMAGE}" == "fedora" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
rpm -qa > /tmp/package_versions.txt && \
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
elif [ "${DIST_IMAGE}" == "arch" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
pacman -Q > /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
fi
touch ${TEMPDIR}/package_versions.txt
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \
${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
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
@@ -660,7 +710,7 @@ pipeline {
-e DO_REGION="ams3" \
-e DO_BUCKET="lsio-ci" \
-t ghcr.io/linuxserver/ci:latest \
python /ci/ci.py'''
python3 test_build.py'''
}
}
}
@@ -680,6 +730,12 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry(5) {
@@ -688,22 +744,32 @@ pipeline {
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
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
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}:dev
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
fi
docker push ${PUSHIMAGE}:dev
docker push ${PUSHIMAGE}:${META_TAG}
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker push ${PUSHIMAGE}:${SEMVER}
fi
done
'''
}
sh '''#! /bin/bash
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
docker rmi \
${DELETEIMAGE}:${META_TAG} \
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
${DELETEIMAGE}:dev || :
if [ -n "${SEMVER}" ]; then
docker rmi ${DELETEIMAGE}:${SEMVER} || :
fi
done
'''
}
@@ -722,6 +788,12 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry(5) {
@@ -730,31 +802,42 @@ pipeline {
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
if [ "${CI}" == "false" ]; then
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
fi
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}"; do
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-dev
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-dev
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-dev
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-dev
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-dev
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${SEMVER}
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker push ${MANIFESTIMAGE}:amd64-dev
docker push ${MANIFESTIMAGE}:arm32v7-dev
docker push ${MANIFESTIMAGE}:arm64v8-dev
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker push ${MANIFESTIMAGE}:amd64-dev
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker push ${MANIFESTIMAGE}:arm32v7-dev
docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-dev
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
docker push ${MANIFESTIMAGE}:arm32v7-${SEMVER}
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
docker manifest push --purge ${MANIFESTIMAGE}:dev || :
docker manifest create ${MANIFESTIMAGE}:dev ${MANIFESTIMAGE}:amd64-dev ${MANIFESTIMAGE}:arm32v7-dev ${MANIFESTIMAGE}:arm64v8-dev
docker manifest annotate ${MANIFESTIMAGE}:dev ${MANIFESTIMAGE}:arm32v7-dev --os linux --arch arm
@@ -767,14 +850,23 @@ pipeline {
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
if [ -n "${SEMVER}" ]; then
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm32v7-${SEMVER} --os linux --arch arm
docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
fi
docker manifest push --purge ${MANIFESTIMAGE}:dev
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
'''
}
sh '''#! /bin/bash
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
docker rmi \
${DELETEIMAGE}:amd64-${META_TAG} \
${DELETEIMAGE}:amd64-dev \
@@ -785,6 +877,12 @@ pipeline {
${DELETEIMAGE}:arm64v8-${META_TAG} \
${DELETEIMAGE}:arm64v8-dev \
${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
if [ -n "${SEMVER}" ]; then
docker rmi \
${DELETEIMAGE}:amd64-${SEMVER} \
${DELETEIMAGE}:arm32v7-${SEMVER} \
${DELETEIMAGE}:arm64v8-${SEMVER} || :
fi
done
docker rmi \
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
@@ -879,12 +977,12 @@ pipeline {
sh 'echo "build aborted"'
}
else if (currentBuild.currentResult == "SUCCESS"){
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 1681177,\
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar.png","embeds": [{"color": 1681177,\
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** Success\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
}
else {
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 16711680,\
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar.png","embeds": [{"color": 16711680,\
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** failure\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
}
+27 -21
View File
@@ -29,10 +29,12 @@ Find us at:
# [linuxserver/nzbhydra2](https://github.com/linuxserver/docker-nzbhydra2)
[![Scarf.io pulls](https://scarf.sh/installs-badge/linuxserver-ci/linuxserver%2Fnzbhydra2?color=94398d&label-color=555555&logo-color=ffffff&style=for-the-badge&package-type=docker)](https://scarf.sh/gateway/linuxserver-ci/docker/linuxserver%2Fnzbhydra2)
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-nzbhydra2.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-nzbhydra2)
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-nzbhydra2.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-nzbhydra2/releases)
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub%20Package&logo=github)](https://github.com/linuxserver/docker-nzbhydra2/packages)
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab)](https://gitlab.com/linuxserver.io/docker-nzbhydra2/container_registry)
[![Quay.io](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/nzbhydra2)
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/nzbhydra2.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/linuxserver/nzbhydra2)
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/nzbhydra2.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/linuxserver/nzbhydra2)
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-nzbhydra2%2Fjob%2Fdev%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-nzbhydra2/job/dev/)
@@ -46,27 +48,26 @@ It provides easy access to a number of raw and newznab based indexers. The appli
## Supported Architectures
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
Simply pulling `ghcr.io/linuxserver/nzbhydra2` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
Simply pulling `lscr.io/linuxserver/nzbhydra2:dev` 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:
| Architecture | Tag |
| :----: | --- |
| x86-64 | amd64-latest |
| arm64 | arm64v8-latest |
| armhf | arm32v7-latest |
| Architecture | Available | Tag |
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ✅ | arm32v7-\<version tag\> |
## Version Tags
This image provides various versions that are available via tags. `latest` tag usually provides the latest stable version. Others are considered under development and caution must be exercised when using them.
| Tag | Description |
| :----: | --- |
| latest | Stable releases |
| dev | Prereleases from their GitHub |
This image provides various versions that are available via tags. Please read the descriptions carefully and exercise caution when using unstable or development tags.
| Tag | Available | Description |
| :----: | :----: |--- |
| latest | ✅ | Stable releases |
| dev | ✅ | Prereleases from their GitHub |
## Application Setup
The web interface is at `<your ip>:5076` , to set up indexers and connections to your nzb download applications.
@@ -82,12 +83,12 @@ Here are some example snippets to help you get started creating a container.
version: "2.1"
services:
nzbhydra2:
image: ghcr.io/linuxserver/nzbhydra2
image: lscr.io/linuxserver/nzbhydra2:dev
container_name: nzbhydra2
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- TZ=Etc/UTC
volumes:
- <path to data>:/config
- <nzb download>:/downloads
@@ -103,12 +104,13 @@ docker run -d \
--name=nzbhydra2 \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/London \
-e TZ=Etc/UTC \
-p 5076:5076 \
-v <path to data>:/config \
-v <nzb download>:/downloads \
--restart unless-stopped \
ghcr.io/linuxserver/nzbhydra2
lscr.io/linuxserver/nzbhydra2:dev
```
## Parameters
@@ -120,7 +122,7 @@ Container images are configured using parameters passed at runtime (such as thos
| `-p 5076` | WebUI |
| `-e PUID=1000` | for UserID - see below for explanation |
| `-e PGID=1000` | for GroupID - see below for explanation |
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London. |
| `-e TZ=Etc/UTC` | specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). |
| `-v /config` | Where nzbhydra2 should store config files. |
| `-v /downloads` | NZB download folder. |
@@ -167,7 +169,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
* container version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' nzbhydra2`
* image version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' ghcr.io/linuxserver/nzbhydra2`
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/nzbhydra2:dev`
## Updating Info
@@ -185,7 +187,7 @@ Below are the instructions for updating containers:
### Via Docker Run
* Update the image: `docker pull ghcr.io/linuxserver/nzbhydra2`
* Update the image: `docker pull lscr.io/linuxserver/nzbhydra2:dev`
* Stop the running container: `docker stop nzbhydra2`
* Delete the container: `docker rm nzbhydra2`
* Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and settings will be preserved)
@@ -220,7 +222,7 @@ cd docker-nzbhydra2
docker build \
--no-cache \
--pull \
-t ghcr.io/linuxserver/nzbhydra2:latest .
-t lscr.io/linuxserver/nzbhydra2:dev .
```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
@@ -233,6 +235,10 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **22.01.23:** - Update release URL for arch-specific packages.
* **20.01.23:** - Update dependencies for v5.
* **03.23.22:** - Upgrade JRE to 17, rebase to ubuntu.
* **18.04.22:** - Rebase to Alpine 3.15.
* **01.05.20:** - Reorganize container, Relocate app to /app/nzbhydra2/bin, Create /app/nzbhydra2/package_info, Use nzbhydra2wrapperPy3.py from zip.
* **29.04.20:** - Include stable releases incrementally with dev releases.
* **14.04.20:** - Correct Name, Hydra2 -> Nzbhydra2.
+1 -3
View File
@@ -1,5 +1,4 @@
---
# jenkins variables
project_name: docker-nzbhydra2
external_type: github_devel
@@ -26,7 +25,6 @@ repo_vars:
- CI_DELAY='120'
- CI_DOCKERENV='TZ=US/Pacific'
- CI_AUTH='user:password'
- CI_WEBPATH=''
- CI_WEBPATH='/system/about'
sponsor_links:
- { name: "NZBHydra 2", url: "https://github.com/theotherp/nzbhydra2#donate" }
+183 -165
View File
@@ -1,165 +1,183 @@
adduser3.116ubuntu1
apt1.6.14
apt-utils1.6.14
base-files10.1ubuntu2.11
base-passwd3.5.44
bash4.4.18-2ubuntu1.2
bsdutils1:2.31.1-0.4ubuntu3.7
bzip21.0.6-8.1ubuntu0.2
ca-certificates20210119~18.04.1
ca-certificates-java20180516ubuntu1~18.04.1
coreutils8.28-1ubuntu1
curl7.58.0-2ubuntu3.15
dash0.5.8-2.10
debconf1.5.66ubuntu1
debianutils4.8.4
diffutils1:3.6-1
dpkg1.19.0.5ubuntu2.3
e2fsprogs1.44.1-1ubuntu1.3
fdisk2.31.1-0.4ubuntu3.7
findutils4.6.0+git+20170828-2
fontconfig-config2.12.6-0ubuntu2
fonts-dejavu-core2.37-1
gcc-8-base8.4.0-1ubuntu1~18.04
gpgv2.2.4-1ubuntu1.4
grep3.1-2build1
gzip1.6-5ubuntu1.1
hostname3.20
init-system-helpers1.51
java-common0.68ubuntu1~18.04.1
jq1.5+dfsg-2
krb5-locales1.16-2ubuntu0.2
libacl12.2.52-3build1
libapt-inst2.01.6.14
libapt-pkg5.01.6.14
libasn1-8-heimdal7.5.0+dfsg-1
libasound21.1.3-5ubuntu0.6
libasound2-data1.1.3-5ubuntu0.6
libattr11:2.4.47-2build1
libaudit11:2.8.2-1ubuntu1.1
libaudit-common1:2.8.2-1ubuntu1.1
libavahi-client30.7-3.1ubuntu1.3
libavahi-common30.7-3.1ubuntu1.3
libavahi-common-data0.7-3.1ubuntu1.3
libblkid12.31.1-0.4ubuntu3.7
libbz2-1.01.0.6-8.1ubuntu0.2
libc62.27-3ubuntu1.4
libcap-ng00.7.7-3.1
libc-bin2.27-3ubuntu1.4
libcom-err21.44.1-1ubuntu1.3
libcups22.2.7-1ubuntu2.8
libcurl47.58.0-2ubuntu3.15
libdb5.35.3.28-13.1ubuntu1.1
libdbus-1-31.12.2-1ubuntu1.2
libdebconfclient00.213ubuntu1
libexpat12.2.5-3ubuntu0.2
libext2fs21.44.1-1ubuntu1.3
libfdisk12.31.1-0.4ubuntu3.7
libffi63.2.1-8
libfontconfig12.12.6-0ubuntu2
libfreetype62.8.1-2ubuntu2.1
libgcc11:8.4.0-1ubuntu1~18.04
libgcrypt201.8.1-4ubuntu1.2
libglib2.0-02.56.4-0ubuntu0.18.04.8
libgmp102:6.1.2+dfsg-2
libgnutls303.5.18-1ubuntu1.4
libgpg-error01.27-6
libgraphite2-31.3.11-2
libgssapi3-heimdal7.5.0+dfsg-1
libgssapi-krb5-21.16-2ubuntu0.2
libharfbuzz0b1.7.2-1ubuntu1
libhcrypto4-heimdal7.5.0+dfsg-1
libheimbase1-heimdal7.5.0+dfsg-1
libheimntlm0-heimdal7.5.0+dfsg-1
libhogweed43.4.1-0ubuntu0.18.04.1
libhx509-5-heimdal7.5.0+dfsg-1
libidn2-02.0.4-1.1ubuntu0.2
libjpeg88c-2ubuntu8
libjpeg-turbo81.5.2-0ubuntu5.18.04.4
libjq11.5+dfsg-2
libk5crypto31.16-2ubuntu0.2
libkeyutils11.5.9-9.2ubuntu2
libkrb5-26-heimdal7.5.0+dfsg-1
libkrb5-31.16-2ubuntu0.2
libkrb5support01.16-2ubuntu0.2
liblcms2-22.9-1ubuntu0.1
libldap-2.4-22.4.45+dfsg-1ubuntu1.10
libldap-common2.4.45+dfsg-1ubuntu1.10
liblz4-10.0~r131-2ubuntu3.1
liblzma55.2.2-1.3
libmount12.31.1-0.4ubuntu3.7
libmpdec22.4.2-1ubuntu1
libncurses56.1-1ubuntu1.18.04
libncursesw56.1-1ubuntu1.18.04
libnettle63.4.1-0ubuntu0.18.04.1
libnghttp2-141.30.0-1ubuntu1
libnspr42:4.18-1ubuntu1
libnss32:3.35-2ubuntu2.12
libonig46.7.0-1
libp11-kit00.23.9-2ubuntu0.1
libpam0g1.1.8-3.6ubuntu2.18.04.3
libpam-modules1.1.8-3.6ubuntu2.18.04.3
libpam-modules-bin1.1.8-3.6ubuntu2.18.04.3
libpam-runtime1.1.8-3.6ubuntu2.18.04.3
libpcre32:8.39-9
libpcsclite11.8.23-1
libpng16-161.6.34-1ubuntu0.18.04.2
libprocps62:3.3.12-3ubuntu1.2
libpsl50.19.1-5build1
libpython3.6-minimal3.6.9-1~18.04ubuntu1.4
libpython3.6-stdlib3.6.9-1~18.04ubuntu1.4
libpython3-stdlib3.6.7-1~18.04
libreadline77.0-3
libroken18-heimdal7.5.0+dfsg-1
librtmp12.4+20151223.gitfa8646d.1-1
libsasl2-22.1.27~101-g0780600+dfsg-3ubuntu2.3
libsasl2-modules2.1.27~101-g0780600+dfsg-3ubuntu2.3
libsasl2-modules-db2.1.27~101-g0780600+dfsg-3ubuntu2.3
libseccomp22.5.1-1ubuntu1~18.04.1
libselinux12.7-2build2
libsemanage12.7-2build2
libsemanage-common2.7-2build2
libsepol12.7-1
libsmartcols12.31.1-0.4ubuntu3.7
libsqlite3-03.22.0-1ubuntu0.4
libss21.44.1-1ubuntu1.3
libssl1.11.1.1-1ubuntu2.1~18.04.13
libstdc++68.4.0-1ubuntu1~18.04
libsystemd0237-3ubuntu10.51
libtasn1-64.13-2
libtinfo56.1-1ubuntu1.18.04
libudev1237-3ubuntu10.51
libunistring20.9.9-0ubuntu2
libuuid12.31.1-0.4ubuntu3.7
libwind0-heimdal7.5.0+dfsg-1
libzstd11.3.3+dfsg-2ubuntu1.2
locales2.27-3ubuntu1.4
login1:4.5-1ubuntu2
lsb-base9.20170808ubuntu1
mawk1.3.3-17ubuntu3
mime-support3.60ubuntu1
mount2.31.1-0.4ubuntu3.7
multiarch-support2.27-3ubuntu1.4
ncurses-base6.1-1ubuntu1.18.04
ncurses-bin6.1-1ubuntu1.18.04
openjdk-11-jre-headless11.0.11+9-0ubuntu2~18.04
openssl1.1.1-1ubuntu2.1~18.04.13
passwd1:4.5-1ubuntu2
perl-base5.26.1-6ubuntu0.5
procps2:3.3.12-3ubuntu1.2
publicsuffix20180223.1310-1
python33.6.7-1~18.04
python3.63.6.9-1~18.04ubuntu1.4
python3.6-minimal3.6.9-1~18.04ubuntu1.4
python3-minimal3.6.7-1~18.04
readline-common7.0-3
sed4.4-2
sensible-utils0.0.12
sysvinit-utils2.88dsf-59.10ubuntu1
tar1.29b-2ubuntu0.2
tzdata2021a-0ubuntu0.18.04
ubuntu-keyring2018.09.18.1~18.04.2
ucf3.0038
unzip6.0-21ubuntu1.1
util-linux2.31.1-0.4ubuntu3.7
zlib1g1:1.2.11.dfsg-0ubuntu2
NAME VERSION TYPE
adduser 3.118ubuntu5 deb
apt 2.4.8 deb
apt-utils 2.4.8 deb
base-files 12ubuntu4.3 deb
base-passwd 3.5.52build1 deb
bash 5.1-6ubuntu1 deb
bsdutils 1:2.37.2-4ubuntu3 deb
ca-certificates 20211016ubuntu0.22.04.1 deb
ca-certificates-java java-archive
ca-certificates-java 20190909ubuntu1.1 deb
coreutils 8.32-4.1ubuntu1 deb
curl 7.81.0-1ubuntu1.10 deb
dash 0.5.11+git20210903+057cd650a4ed-3build1 deb
debconf 1.5.79ubuntu1 deb
debianutils 5.5-1ubuntu2 deb
diffutils 1:3.8-0ubuntu2 deb
dirmngr 2.2.27-3ubuntu2.1 deb
dpkg 1.21.1ubuntu2.1 deb
e2fsprogs 1.46.5-2ubuntu1.1 deb
findutils 4.8.0-1ubuntu3 deb
fontconfig-config 2.13.1-4.2ubuntu5 deb
fonts-dejavu-core 2.37-2build1 deb
gcc-12-base 12.1.0-2ubuntu1~22.04 deb
gnupg 2.2.27-3ubuntu2.1 deb
gnupg-l10n 2.2.27-3ubuntu2.1 deb
gnupg-utils 2.2.27-3ubuntu2.1 deb
gpg 2.2.27-3ubuntu2.1 deb
gpg-agent 2.2.27-3ubuntu2.1 deb
gpg-wks-client 2.2.27-3ubuntu2.1 deb
gpg-wks-server 2.2.27-3ubuntu2.1 deb
gpgconf 2.2.27-3ubuntu2.1 deb
gpgsm 2.2.27-3ubuntu2.1 deb
gpgv 2.2.27-3ubuntu2.1 deb
grep 3.7-1build1 deb
gzip 1.10-4ubuntu4.1 deb
hostname 3.23ubuntu2 deb
init-system-helpers 1.62 deb
java-common 0.72build2 deb
jq 1.6-2.1ubuntu3 deb
jrt-fs 17.0.6 java-archive
libacl1 2.3.1-1 deb
libapt-pkg6.0 2.4.8 deb
libasound2 1.2.6.1-1ubuntu1 deb
libasound2-data 1.2.6.1-1ubuntu1 deb
libassuan0 2.5.5-1build1 deb
libattr1 1:2.5.1-1build1 deb
libaudit-common 1:3.0.7-1build1 deb
libaudit1 1:3.0.7-1build1 deb
libavahi-client3 0.8-5ubuntu5 deb
libavahi-common-data 0.8-5ubuntu5 deb
libavahi-common3 0.8-5ubuntu5 deb
libblkid1 2.37.2-4ubuntu3 deb
libbrotli1 1.0.9-2build6 deb
libbsd0 0.11.5-1 deb
libbz2-1.0 1.0.8-5build1 deb
libc-bin 2.35-0ubuntu3.1 deb
libc6 2.35-0ubuntu3.1 deb
libcap-ng0 0.7.9-2.2build3 deb
libcap2 1:2.44-1build3 deb
libcom-err2 1.46.5-2ubuntu1.1 deb
libcrypt1 1:4.4.27-1 deb
libcups2 2.4.1op1-1ubuntu4.1 deb
libcurl4 7.81.0-1ubuntu1.10 deb
libdb5.3 5.3.28+dfsg1-0.8ubuntu3 deb
libdbus-1-3 1.12.20-2ubuntu4.1 deb
libdebconfclient0 0.261ubuntu1 deb
libexpat1 2.4.7-1ubuntu0.2 deb
libext2fs2 1.46.5-2ubuntu1.1 deb
libffi8 3.4.2-4 deb
libfontconfig1 2.13.1-4.2ubuntu5 deb
libfreetype6 2.11.1+dfsg-1ubuntu0.1 deb
libgcc-s1 12.1.0-2ubuntu1~22.04 deb
libgcrypt20 1.9.4-3ubuntu3 deb
libglib2.0-0 2.72.4-0ubuntu1 deb
libgmp10 2:6.2.1+dfsg-3ubuntu1 deb
libgnutls30 3.7.3-4ubuntu1.2 deb
libgpg-error0 1.43-3 deb
libgraphite2-3 1.3.14-1build2 deb
libgssapi-krb5-2 1.19.2-2ubuntu0.1 deb
libharfbuzz0b 2.7.4-1ubuntu3.1 deb
libhogweed6 3.7.3-1build2 deb
libidn2-0 2.3.2-2build1 deb
libjpeg-turbo8 2.1.2-0ubuntu1 deb
libjpeg8 8c-2ubuntu10 deb
libjq1 1.6-2.1ubuntu3 deb
libk5crypto3 1.19.2-2ubuntu0.1 deb
libkeyutils1 1.6.1-2ubuntu3 deb
libkrb5-3 1.19.2-2ubuntu0.1 deb
libkrb5support0 1.19.2-2ubuntu0.1 deb
libksba8 1.6.0-2ubuntu0.2 deb
liblcms2-2 2.12~rc1-2build2 deb
libldap-2.5-0 2.5.14+dfsg-0ubuntu0.22.04.1 deb
libldap-common 2.5.14+dfsg-0ubuntu0.22.04.1 deb
liblz4-1 1.9.3-2build2 deb
liblzma5 5.2.5-2ubuntu1 deb
libmd0 1.0.4-1build1 deb
libmount1 2.37.2-4ubuntu3 deb
libmpdec3 2.5.1-2build2 deb
libncurses6 6.3-2 deb
libncursesw6 6.3-2 deb
libnettle8 3.7.3-1build2 deb
libnghttp2-14 1.43.0-1build3 deb
libnpth0 1.6-3build2 deb
libnsl2 1.3.0-2build2 deb
libnspr4 2:4.32-3build1 deb
libnss3 2:3.68.2-0ubuntu1.2 deb
libonig5 6.9.7.1-2build1 deb
libp11-kit0 0.24.0-6build1 deb
libpam-modules 1.4.0-11ubuntu2.3 deb
libpam-modules-bin 1.4.0-11ubuntu2.3 deb
libpam-runtime 1.4.0-11ubuntu2.3 deb
libpam0g 1.4.0-11ubuntu2.3 deb
libpcre2-8-0 10.39-3ubuntu0.1 deb
libpcre3 2:8.39-13ubuntu0.22.04.1 deb
libpcsclite1 1.9.5-3 deb
libpng16-16 1.6.37-3build5 deb
libprocps8 2:3.3.17-6ubuntu2 deb
libpsl5 0.21.0-1.2build2 deb
libpython3-stdlib 3.10.6-1~22.04 deb
libpython3.10-minimal 3.10.6-1~22.04.2ubuntu1 deb
libpython3.10-stdlib 3.10.6-1~22.04.2ubuntu1 deb
libreadline8 8.1.2-1 deb
librtmp1 2.4+20151223.gitfa8646d.1-2build4 deb
libsasl2-2 2.1.27+dfsg2-3ubuntu1.2 deb
libsasl2-modules 2.1.27+dfsg2-3ubuntu1.2 deb
libsasl2-modules-db 2.1.27+dfsg2-3ubuntu1.2 deb
libseccomp2 2.5.3-2ubuntu2 deb
libselinux1 3.3-1build2 deb
libsemanage-common 3.3-1build2 deb
libsemanage2 3.3-1build2 deb
libsepol2 3.3-1build1 deb
libsmartcols1 2.37.2-4ubuntu3 deb
libsqlite3-0 3.37.2-2ubuntu0.1 deb
libss2 1.46.5-2ubuntu1.1 deb
libssh-4 0.9.6-2build1 deb
libssl3 3.0.2-0ubuntu1.8 deb
libstdc++6 12.1.0-2ubuntu1~22.04 deb
libsystemd0 249.11-0ubuntu3.7 deb
libtasn1-6 4.18.0-4build1 deb
libtinfo6 6.3-2 deb
libtirpc-common 1.3.2-2ubuntu0.1 deb
libtirpc3 1.3.2-2ubuntu0.1 deb
libudev1 249.11-0ubuntu3.7 deb
libunistring2 1.0-1 deb
libuuid1 2.37.2-4ubuntu3 deb
libxxhash0 0.8.1-1 deb
libzstd1 1.4.8+dfsg-3build1 deb
locales 2.35-0ubuntu3.1 deb
login 1:4.8.1-2ubuntu2.1 deb
logsave 1.46.5-2ubuntu1.1 deb
lsb-base 11.1.0ubuntu4 deb
mawk 1.3.4.20200120-3 deb
media-types 7.0.0 deb
mount 2.37.2-4ubuntu3 deb
ncurses-base 6.3-2 deb
ncurses-bin 6.3-2 deb
netcat 1.218-4ubuntu1 deb
netcat-openbsd 1.218-4ubuntu1 deb
openjdk-17-jre-headless 17.0.6+10-0ubuntu1~22.04 deb
openssl 3.0.2-0ubuntu1.8 deb
passwd 1:4.8.1-2ubuntu2.1 deb
perl-base 5.34.0-3ubuntu1.1 deb
pinentry-curses 1.1.1-1build2 deb
procps 2:3.3.17-6ubuntu2 deb
publicsuffix 20211207.1025-1 deb
python 3.10.6 binary
python3 3.10.6-1~22.04 deb
python3-minimal 3.10.6-1~22.04 deb
python3.10 3.10.6-1~22.04.2ubuntu1 deb
python3.10-minimal 3.10.6-1~22.04.2ubuntu1 deb
readline-common 8.1.2-1 deb
sed 4.8-1ubuntu2 deb
sensible-utils 0.0.17 deb
sysvinit-utils 3.01-1ubuntu1 deb
tar 1.34+dfsg-1ubuntu0.1.22.04.1 deb
tzdata 2022g-0ubuntu0.22.04.1 deb
ubuntu-keyring 2021.03.26 deb
ucf 3.0043 deb
unzip 6.0-26ubuntu3.1 deb
usrmerge 25ubuntu2 deb
util-linux 2.37.2-4ubuntu3 deb
zlib1g 1:1.2.11.dfsg-2ubuntu9.2 deb
+4
View File
@@ -56,6 +56,10 @@ app_setup_block: |
# changelog
changelogs:
- { date: "22.01.23:", desc: "Update release URL for arch-specific packages." }
- { date: "20.01.23:", desc: "Update dependencies for v5." }
- { date: "03.23.22:", desc: "Upgrade JRE to 17, rebase to ubuntu." }
- { date: "18.04.22:", desc: "Rebase to Alpine 3.15." }
- { date: "01.05.20:", desc: "Reorganize container, Relocate app to /app/nzbhydra2/bin, Create /app/nzbhydra2/package_info, Use nzbhydra2wrapperPy3.py from zip." }
- { date: "29.04.20:", desc: "Include stable releases incrementally with dev releases." }
- { date: "14.04.20:", desc: "Correct Name, Hydra2 -> Nzbhydra2." }
-9
View File
@@ -1,9 +0,0 @@
#!/usr/bin/with-contenv bash
# make our folders
mkdir -p /config/logs
# permissions
chmod +x /app/nzbhydra2/bin/nzbhydra2
chown -R abc:abc /config
+13
View File
@@ -0,0 +1,13 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash
# make our folders
mkdir -p /config/logs
if [[ ! -f /config/nzbhydra.yml ]]; then
cp /defaults/nzbhydra.yml /config/nzbhydra.yml
fi
# permissions
lsiown -R abc:abc \
/config
@@ -0,0 +1 @@
oneshot
@@ -0,0 +1 @@
/etc/s6-overlay/s6-rc.d/init-nzbhydra2-config/run
@@ -0,0 +1 @@
3
+9
View File
@@ -0,0 +1,9 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash
# unset unraid specific ENV to avoid crashing
unset HOST_OS
exec \
s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z localhost 5076" \
cd /app/nzbhydra2 s6-setuidgid abc /usr/bin/python3 nzbhydra2wrapperPy3.py --nobrowser --datafolder /config
@@ -0,0 +1 @@
longrun
-10
View File
@@ -1,10 +0,0 @@
#!/usr/bin/with-contenv bash
# unset unraid specific ENV to avoid crashing
unset HOST_OS
cd /app/nzbhydra2/bin || exit
exec \
s6-setuidgid abc /usr/bin/python3 nzbhydra2wrapperPy3.py \
--nobrowser --datafolder /config