Compare commits
19 Commits
release-4.
...
qbt-1.7
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0ff8121521 | ||
|
|
df6b84fcee | ||
|
|
9a6fca93a4 | ||
|
|
3f1abde2d5 | ||
|
|
aa53903516 | ||
|
|
11399fc0b8 | ||
|
|
d86db02334 | ||
|
|
7c0eb4e676 | ||
|
|
f4688d02a6 | ||
|
|
e219ebb68a | ||
|
|
6b33e52b99 | ||
|
|
d8521268eb | ||
|
|
0589233f7e | ||
|
|
73869214a6 | ||
|
|
4ca216b6a5 | ||
|
|
7e84208a53 | ||
|
|
7c6e03cbee | ||
|
|
0d8a8358bc | ||
|
|
d8875f90f2 |
3
.github/workflows/external_trigger.yml
vendored
3
.github/workflows/external_trigger.yml
vendored
@@ -18,7 +18,8 @@ jobs:
|
||||
fi
|
||||
echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_QBITTORRENT_MASTER\". ****"
|
||||
echo "**** Retrieving external version ****"
|
||||
EXT_RELEASE=$(echo release-$(curl -s 'https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog' | grep -Po '^\w{3} \w{3} \d{2} \d{4} - .* - \K(v\d+\.\d+\.\d+\.?\d?)$' | head -1 | cut -c2-))
|
||||
EXT_RELEASE=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
|
||||
&& awk '/^P:'"qbittorrent-nox"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://')
|
||||
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
|
||||
echo "**** Can't retrieve external version, exiting ****"
|
||||
FAILURE_REASON="Can't retrieve external version for qbittorrent branch master"
|
||||
|
||||
105
Dockerfile
105
Dockerfile
@@ -1,83 +1,9 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.15 as build-stage
|
||||
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
|
||||
ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add -U --update --no-cache --virtual=build-dependencies \
|
||||
autoconf \
|
||||
automake \
|
||||
boost-dev \
|
||||
build-base \
|
||||
cmake \
|
||||
curl \
|
||||
git \
|
||||
grep \
|
||||
libtool \
|
||||
linux-headers \
|
||||
perl \
|
||||
pkgconf \
|
||||
python3-dev \
|
||||
re2c \
|
||||
icu-dev \
|
||||
libexecinfo-dev \
|
||||
openssl-dev \
|
||||
qt6-qtbase-dev \
|
||||
qt6-qttools-dev \
|
||||
qt6-qtsvg-dev \
|
||||
zlib-dev && \
|
||||
mkdir -p /build && \
|
||||
echo "**** build ninja ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/ninja-build/ninja.git ~/ninja && cd ~/ninja && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v*" | head -n 1)" && \
|
||||
cmake -Wno-dev -B build \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build libtorrent ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/arvidn/libtorrent.git ~/libtorrent && cd ~/libtorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v2*" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_LIBDIR="lib" \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build qbittorrent ****" && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION="release-"$(curl -s "https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog" | grep -Po '^\w{3} \w{3} \d{2} \d{4} - .* - \K(v\d+\.\d+\.\d+\.?\d?)$' | head -1 | cut -c2-); \
|
||||
fi && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/qbittorrent/qBittorrent.git ~/qbittorrent && cd ~/qbittorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "${QBITTORRENT_VERSION}" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_CXX_STANDARD_LIBRARIES="/usr/lib/libexecinfo.so" \
|
||||
-D CMAKE_INSTALL_PREFIX="/build/usr" \
|
||||
-D GUI=OFF \
|
||||
-D QT6=ON && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** cleanup ****" && \
|
||||
apk del --purge \
|
||||
build-dependencies && \
|
||||
rm -rf \
|
||||
/config/* \
|
||||
/tmp/*
|
||||
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.15
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:edge
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
ARG QBT_VERSION
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="thespad"
|
||||
@@ -87,25 +13,18 @@ ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
#copy build artifacts from build-stage
|
||||
COPY --from=build-stage /build/usr/ /usr/
|
||||
COPY --from=build-stage /usr/lib/libtorrent-rasterbar.so.* /usr/lib/
|
||||
|
||||
# install runtime packages and qbitorrent-cli
|
||||
RUN \
|
||||
apk add -U --update --no-cache \
|
||||
p7zip \
|
||||
geoip \
|
||||
unzip \
|
||||
bash \
|
||||
curl \
|
||||
icu-libs\
|
||||
libexecinfo \
|
||||
openssl \
|
||||
python3 \
|
||||
qt6-qtbase \
|
||||
zlib && \
|
||||
apk add -U --upgrade --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main/ unrar && \
|
||||
python3 && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
|
||||
&& awk '/^P:qbittorrent-nox$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
|
||||
fi && \
|
||||
apk add -U --upgrade --no-cache \
|
||||
qbittorrent-nox==${QBITTORRENT_VERSION} && \
|
||||
echo "***** install qbitorrent-cli ****" && \
|
||||
if [ -z ${QBT_VERSION+x} ]; then \
|
||||
QBT_VERSION=$(curl -sX GET "https://api.github.com/repos/ludviglundgren/qbittorrent-cli/releases/latest" \
|
||||
@@ -120,12 +39,12 @@ RUN \
|
||||
mv /tmp/qbt /usr/bin && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/* \
|
||||
/var/tmp/*
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY root/ /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 6881 6881/udp 8080
|
||||
EXPOSE 8080 6881 6881/udp
|
||||
|
||||
VOLUME /config
|
||||
|
||||
@@ -1,83 +1,9 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.15 as build-stage
|
||||
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
|
||||
ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add -U --update --no-cache --virtual=build-dependencies \
|
||||
autoconf \
|
||||
automake \
|
||||
boost-dev \
|
||||
build-base \
|
||||
cmake \
|
||||
curl \
|
||||
git \
|
||||
grep \
|
||||
libtool \
|
||||
linux-headers \
|
||||
perl \
|
||||
pkgconf \
|
||||
python3-dev \
|
||||
re2c \
|
||||
icu-dev \
|
||||
libexecinfo-dev \
|
||||
openssl-dev \
|
||||
qt6-qtbase-dev \
|
||||
qt6-qttools-dev \
|
||||
qt6-qtsvg-dev \
|
||||
zlib-dev && \
|
||||
mkdir -p /build && \
|
||||
echo "**** build ninja ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/ninja-build/ninja.git ~/ninja && cd ~/ninja && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v*" | head -n 1)" && \
|
||||
cmake -Wno-dev -B build \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build libtorrent ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/arvidn/libtorrent.git ~/libtorrent && cd ~/libtorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v2*" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_LIBDIR="lib" \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build qbittorrent ****" && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION="release-"$(curl -s "https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog" | grep -Po '^\w{3} \w{3} \d{2} \d{4} - .* - \K(v\d+\.\d+\.\d+\.?\d?)$' | head -1 | cut -c2-); \
|
||||
fi && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/qbittorrent/qBittorrent.git ~/qbittorrent && cd ~/qbittorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "${QBITTORRENT_VERSION}" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_CXX_STANDARD_LIBRARIES="/usr/lib/libexecinfo.so" \
|
||||
-D CMAKE_INSTALL_PREFIX="/build/usr" \
|
||||
-D GUI=OFF \
|
||||
-D QT6=ON && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** cleanup ****" && \
|
||||
apk del --purge \
|
||||
build-dependencies && \
|
||||
rm -rf \
|
||||
/config/* \
|
||||
/tmp/*
|
||||
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.15
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-edge
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
ARG QBT_VERSION
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="thespad"
|
||||
@@ -87,25 +13,18 @@ ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
#copy build artifacts from build-stage
|
||||
COPY --from=build-stage /build/usr/ /usr/
|
||||
COPY --from=build-stage /usr/lib/libtorrent-rasterbar.so.* /usr/lib/
|
||||
|
||||
# install runtime packages and qbitorrent-cli
|
||||
RUN \
|
||||
apk add -U --update --no-cache \
|
||||
p7zip \
|
||||
geoip \
|
||||
unzip \
|
||||
bash \
|
||||
curl \
|
||||
icu-libs \
|
||||
libexecinfo \
|
||||
openssl \
|
||||
python3 \
|
||||
qt6-qtbase \
|
||||
zlib && \
|
||||
apk add -U --upgrade --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main/ unrar && \
|
||||
python3 && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/edge/community/aarch64/APKINDEX.tar.gz" | tar -xz -C /tmp \
|
||||
&& awk '/^P:qbittorrent-nox$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
|
||||
fi && \
|
||||
apk add -U --upgrade --no-cache \
|
||||
qbittorrent-nox==${QBITTORRENT_VERSION} && \
|
||||
echo "***** install qbitorrent-cli ****" && \
|
||||
if [ -z ${QBT_VERSION+x} ]; then \
|
||||
QBT_VERSION=$(curl -sX GET "https://api.github.com/repos/ludviglundgren/qbittorrent-cli/releases/latest" \
|
||||
@@ -113,19 +32,19 @@ RUN \
|
||||
fi && \
|
||||
curl -o \
|
||||
/tmp/qbt.tar.gz -L \
|
||||
"https://github.com/ludviglundgren/qbittorrent-cli/releases/download/${QBT_VERSION}/qbittorrent-cli_$(echo $QBT_VERSION | cut -c2-)_linux_amd64.tar.gz" && \
|
||||
"https://github.com/ludviglundgren/qbittorrent-cli/releases/download/${QBT_VERSION}/qbittorrent-cli_$(echo $QBT_VERSION | cut -c2-)_linux_arm64.tar.gz" && \
|
||||
tar xzf \
|
||||
/tmp/qbt.tar.gz -C \
|
||||
/tmp && \
|
||||
mv /tmp/qbt /usr/bin && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/* \
|
||||
/var/tmp/*
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY root/ /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 6881 6881/udp 8080
|
||||
EXPOSE 8080 6881 6881/udp
|
||||
|
||||
VOLUME /config
|
||||
|
||||
107
Dockerfile.armhf
107
Dockerfile.armhf
@@ -1,83 +1,9 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.15 as build-stage
|
||||
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
|
||||
ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add -U --update --no-cache --virtual=build-dependencies \
|
||||
autoconf \
|
||||
automake \
|
||||
boost-dev \
|
||||
build-base \
|
||||
cmake \
|
||||
curl \
|
||||
git \
|
||||
grep \
|
||||
libtool \
|
||||
linux-headers \
|
||||
perl \
|
||||
pkgconf \
|
||||
python3-dev \
|
||||
re2c \
|
||||
icu-dev \
|
||||
libexecinfo-dev \
|
||||
openssl-dev \
|
||||
qt6-qtbase-dev \
|
||||
qt6-qttools-dev \
|
||||
qt6-qtsvg-dev \
|
||||
zlib-dev && \
|
||||
mkdir -p /build && \
|
||||
echo "**** build ninja ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/ninja-build/ninja.git ~/ninja && cd ~/ninja && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v*" | head -n 1)" && \
|
||||
cmake -Wno-dev -B build \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build libtorrent ****" && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/arvidn/libtorrent.git ~/libtorrent && cd ~/libtorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "v2*" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_INSTALL_LIBDIR="lib" \
|
||||
-D CMAKE_INSTALL_PREFIX="/usr" && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** build qbittorrent ****" && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION="release-"$(curl -s "https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog" | grep -Po '^\w{3} \w{3} \d{2} \d{4} - .* - \K(v\d+\.\d+\.\d+\.?\d?)$' | head -1 | cut -c2-); \
|
||||
fi && \
|
||||
git clone --shallow-submodules --recurse-submodules https://github.com/qbittorrent/qBittorrent.git ~/qbittorrent && cd ~/qbittorrent && \
|
||||
git checkout "$(git tag -l --sort=-v:refname "${QBITTORRENT_VERSION}" | head -n 1)" && \
|
||||
cmake -Wno-dev -G Ninja -B build \
|
||||
-D CMAKE_BUILD_TYPE="release" \
|
||||
-D CMAKE_CXX_STANDARD=17 \
|
||||
-D CMAKE_CXX_STANDARD_LIBRARIES="/usr/lib/libexecinfo.so" \
|
||||
-D CMAKE_INSTALL_PREFIX="/build/usr" \
|
||||
-D GUI=OFF \
|
||||
-D QT6=ON && \
|
||||
cmake --build build && \
|
||||
cmake --install build && \
|
||||
echo "**** cleanup ****" && \
|
||||
apk del --purge \
|
||||
build-dependencies && \
|
||||
rm -rf \
|
||||
/config/* \
|
||||
/tmp/*
|
||||
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.15
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-edge
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG QBITTORRENT_VERSION
|
||||
ARG QBT_VERSION
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="thespad"
|
||||
@@ -87,25 +13,18 @@ ENV HOME="/config" \
|
||||
XDG_CONFIG_HOME="/config" \
|
||||
XDG_DATA_HOME="/config"
|
||||
|
||||
#copy build artifacts from build-stage
|
||||
COPY --from=build-stage /build/usr/ /usr/
|
||||
COPY --from=build-stage /usr/lib/libtorrent-rasterbar.so.* /usr/lib/
|
||||
|
||||
# install runtime packages and qbitorrent-cli
|
||||
RUN \
|
||||
apk add -U --update --no-cache \
|
||||
p7zip \
|
||||
geoip \
|
||||
unzip \
|
||||
bash \
|
||||
curl \
|
||||
icu-libs \
|
||||
libexecinfo \
|
||||
openssl \
|
||||
python3 \
|
||||
qt6-qtbase \
|
||||
zlib && \
|
||||
apk add -U --upgrade --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main/ unrar && \
|
||||
python3 && \
|
||||
if [ -z ${QBITTORRENT_VERSION+x} ]; then \
|
||||
QBITTORRENT_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/edge/community/armhf/APKINDEX.tar.gz" | tar -xz -C /tmp \
|
||||
&& awk '/^P:qbittorrent-nox$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
|
||||
fi && \
|
||||
apk add -U --upgrade --no-cache \
|
||||
qbittorrent-nox==${QBITTORRENT_VERSION} && \
|
||||
echo "***** install qbitorrent-cli ****" && \
|
||||
if [ -z ${QBT_VERSION+x} ]; then \
|
||||
QBT_VERSION=$(curl -sX GET "https://api.github.com/repos/ludviglundgren/qbittorrent-cli/releases/latest" \
|
||||
@@ -113,19 +32,19 @@ RUN \
|
||||
fi && \
|
||||
curl -o \
|
||||
/tmp/qbt.tar.gz -L \
|
||||
"https://github.com/ludviglundgren/qbittorrent-cli/releases/download/${QBT_VERSION}/qbittorrent-cli_$(echo $QBT_VERSION | cut -c2-)_linux_amd64.tar.gz" && \
|
||||
"https://github.com/ludviglundgren/qbittorrent-cli/releases/download/${QBT_VERSION}/qbittorrent-cli_$(echo $QBT_VERSION | cut -c2-)_linux_armv6.tar.gz" && \
|
||||
tar xzf \
|
||||
/tmp/qbt.tar.gz -C \
|
||||
/tmp && \
|
||||
mv /tmp/qbt /usr/bin && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/* \
|
||||
/var/tmp/*
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY root/ /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 6881 6881/udp 8080
|
||||
EXPOSE 8080 6881 6881/udp
|
||||
|
||||
VOLUME /config
|
||||
|
||||
16
Jenkinsfile
vendored
16
Jenkinsfile
vendored
@@ -25,6 +25,9 @@ pipeline {
|
||||
DEV_DOCKERHUB_IMAGE = 'lsiodev/qbittorrent'
|
||||
PR_DOCKERHUB_IMAGE = 'lspipepr/qbittorrent'
|
||||
DIST_IMAGE = 'alpine'
|
||||
DIST_TAG = 'edge'
|
||||
DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/edge/community/'
|
||||
DIST_REPO_PACKAGES = 'qbittorrent-nox'
|
||||
MULTIARCH='true'
|
||||
CI='true'
|
||||
CI_WEB='true'
|
||||
@@ -99,14 +102,15 @@ pipeline {
|
||||
/* ########################
|
||||
External Release Tagging
|
||||
######################## */
|
||||
// If this is a custom command to determine version use that command
|
||||
stage("Set tag custom bash"){
|
||||
// If this is an alpine repo change for external version determine an md5 from the version string
|
||||
stage("Set tag Alpine Repo"){
|
||||
steps{
|
||||
script{
|
||||
env.EXT_RELEASE = sh(
|
||||
script: ''' echo release-$(curl -s 'https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog' | grep -Po '^\\w{3} \\w{3} \\d{2} \\d{4} - .* - \\K(v\\d+\\.\\d+\\.\\d+\\.?\\d?)$' | head -1 | cut -c2-) ''',
|
||||
script: '''curl -sL "${DIST_REPO}x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
|
||||
&& awk '/^P:'"${DIST_REPO_PACKAGES}"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://' ''',
|
||||
returnStdout: true).trim()
|
||||
env.RELEASE_LINK = 'custom_command'
|
||||
env.RELEASE_LINK = 'alpine_repo'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -909,11 +913,11 @@ pipeline {
|
||||
"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 "Updating external repo packages to ${EXT_RELEASE_CLEAN}" > releasebody.json
|
||||
echo '{"tag_name":"'${META_TAG}'",\
|
||||
"target_commitish": "master",\
|
||||
"name": "'${META_TAG}'",\
|
||||
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
|
||||
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Repo Changes:**\\n\\n' > start
|
||||
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'''
|
||||
|
||||
@@ -264,6 +264,9 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
||||
|
||||
## Versions
|
||||
|
||||
* **01.03.22:** - Add python for search plugin support.
|
||||
* **23.02.22:** - Rebase to Alpine Edge, install from Alpine repos.
|
||||
* **19.02.22:** - Add jq to build-stage
|
||||
* **07.01.22:** - Rebase to Alpine, build from source.
|
||||
* **06.01.22:** - Deprecate unstable branch.
|
||||
* **10.02.21:** - Rebase to focal.
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
|
||||
# jenkins variables
|
||||
project_name: docker-qbittorrent
|
||||
external_type: na
|
||||
custom_version_command: "echo release-$(curl -s 'https://raw.githubusercontent.com/qbittorrent/qBittorrent/HEAD/Changelog' | grep -Po '^\\\\w{3} \\\\w{3} \\\\d{2} \\\\d{4} - .* - \\\\K(v\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.?\\\\d?)$' | head -1 | cut -c2-)"
|
||||
external_type: alpine_repo
|
||||
release_type: stable
|
||||
release_tag: latest
|
||||
ls_branch: master
|
||||
@@ -16,6 +15,9 @@ repo_vars:
|
||||
- DEV_DOCKERHUB_IMAGE = 'lsiodev/qbittorrent'
|
||||
- PR_DOCKERHUB_IMAGE = 'lspipepr/qbittorrent'
|
||||
- DIST_IMAGE = 'alpine'
|
||||
- DIST_TAG = 'edge'
|
||||
- DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/edge/community/'
|
||||
- DIST_REPO_PACKAGES = 'qbittorrent-nox'
|
||||
- MULTIARCH='true'
|
||||
- CI='true'
|
||||
- CI_WEB='true'
|
||||
|
||||
@@ -1,45 +1,42 @@
|
||||
alpine-baselayout-3.2.0-r18
|
||||
alpine-baselayout-3.2.0-r19
|
||||
alpine-keys-2.4-r1
|
||||
apk-tools-2.12.7-r3
|
||||
bash-5.1.8-r0
|
||||
brotli-libs-1.0.9-r5
|
||||
busybox-1.34.1-r3
|
||||
ca-certificates-20191127-r7
|
||||
ca-certificates-bundle-20191127-r7
|
||||
coreutils-9.0-r2
|
||||
curl-7.80.0-r0
|
||||
dbus-libs-1.12.20-r4
|
||||
double-conversion-3.1.5-r0
|
||||
expat-2.4.3-r0
|
||||
gdbm-1.22-r0
|
||||
geoip-1.6.12-r2
|
||||
glib-2.70.1-r0
|
||||
icu-libs-69.1-r1
|
||||
apk-tools-2.12.9-r1
|
||||
bash-5.1.16-r0
|
||||
brotli-libs-1.0.9-r6
|
||||
busybox-1.35.0-r3
|
||||
ca-certificates-20211220-r0
|
||||
ca-certificates-bundle-20211220-r0
|
||||
coreutils-9.0-r3
|
||||
curl-7.81.0-r1
|
||||
dbus-libs-1.12.22-r0
|
||||
expat-2.4.6-r0
|
||||
gdbm-1.23-r0
|
||||
glib-2.70.4-r0
|
||||
icu-libs-70.1-r0
|
||||
libacl-2.2.53-r0
|
||||
libattr-2.5.1-r1
|
||||
libb2-0.98.1-r1
|
||||
libblkid-2.37.2-r1
|
||||
libbsd-0.11.3-r1
|
||||
libblkid-2.37.4-r1
|
||||
libbsd-0.11.5-r0
|
||||
libbz2-1.0.8-r1
|
||||
libc-utils-0.7.2-r3
|
||||
libcrypto1.1-1.1.1l-r8
|
||||
libcurl-7.80.0-r0
|
||||
libcrypto1.1-1.1.1m-r2
|
||||
libcurl-7.81.0-r1
|
||||
libexecinfo-1.1-r1
|
||||
libffi-3.4.2-r1
|
||||
libgcc-10.3.1_git20211027-r0
|
||||
libgomp-10.3.1_git20211027-r0
|
||||
libgcc-11.2.1_git20220219-r1
|
||||
libice-1.0.10-r0
|
||||
libintl-0.21-r0
|
||||
libintl-0.21-r1
|
||||
libmd-1.0.3-r0
|
||||
libmount-2.37.2-r1
|
||||
libmount-2.37.4-r1
|
||||
libpcre2-16-10.39-r0
|
||||
libproc-3.3.17-r0
|
||||
libretls-3.3.4-r2
|
||||
libproc-3.3.17-r1
|
||||
libretls-3.4.2-r0
|
||||
libsm-1.2.3-r0
|
||||
libssl1.1-1.1.1l-r8
|
||||
libstdc++-10.3.1_git20211027-r0
|
||||
libuuid-2.37.2-r1
|
||||
libx11-1.7.2-r0
|
||||
libssl1.1-1.1.1m-r2
|
||||
libstdc++-11.2.1_git20220219-r1
|
||||
libtorrent-rasterbar-2.0.5-r2
|
||||
libuuid-2.37.4-r1
|
||||
libx11-1.7.3.1-r0
|
||||
libxau-1.0.9-r0
|
||||
libxcb-1.14-r2
|
||||
libxdmcp-1.1.3-r0
|
||||
@@ -50,30 +47,26 @@ linux-pam-1.5.2-r0
|
||||
mpdecimal-2.5.1-r1
|
||||
musl-1.2.2-r7
|
||||
musl-utils-1.2.2-r7
|
||||
ncurses-libs-6.3_p20211120-r0
|
||||
ncurses-terminfo-base-6.3_p20211120-r0
|
||||
nghttp2-libs-1.46.0-r0
|
||||
openssl-1.1.1l-r8
|
||||
p7zip-16.02-r4
|
||||
pcre-8.45-r1
|
||||
procps-3.3.17-r0
|
||||
python3-3.9.7-r4
|
||||
qt6-qtbase-6.2.1-r2
|
||||
readline-8.1.1-r0
|
||||
s6-ipcserver-2.11.0.0-r0
|
||||
ncurses-libs-6.3_p20220219-r0
|
||||
ncurses-terminfo-base-6.3_p20220219-r0
|
||||
nghttp2-libs-1.47.0-r0
|
||||
pcre-8.45-r2
|
||||
procps-3.3.17-r1
|
||||
python3-3.10.2-r0
|
||||
qbittorrent-nox-4.4.1-r0
|
||||
qt5-qtbase-5.15.3_git20220217-r0
|
||||
readline-8.1.2-r0
|
||||
scanelf-1.3.3-r0
|
||||
shadow-4.8.1-r1
|
||||
skalibs-2.11.0.0-r0
|
||||
sqlite-libs-3.36.0-r0
|
||||
ssl_client-1.34.1-r3
|
||||
shadow-4.10-r3
|
||||
skalibs-2.11.1.0-r0
|
||||
sqlite-libs-3.37.2-r0
|
||||
ssl_client-1.35.0-r3
|
||||
tzdata-2021e-r0
|
||||
unrar-6.0.7-r0
|
||||
unzip-6.0-r9
|
||||
utmps-0.1.0.3-r0
|
||||
xdg-utils-1.1.3-r0
|
||||
utmps-libs-0.1.1.0-r2
|
||||
xdg-utils-1.1.3-r2
|
||||
xprop-1.2.5-r0
|
||||
xset-1.2.4-r0
|
||||
xz-5.2.5-r0
|
||||
xz-libs-5.2.5-r0
|
||||
zlib-1.2.11-r3
|
||||
zstd-libs-1.5.0-r0
|
||||
zstd-libs-1.5.2-r0
|
||||
|
||||
@@ -69,6 +69,9 @@ app_setup_block: |
|
||||
|
||||
# changelog
|
||||
changelogs:
|
||||
- { date: "01.03.22:", desc: "Add python for search plugin support." }
|
||||
- { date: "23.02.22:", desc: "Rebase to Alpine Edge, install from Alpine repos." }
|
||||
- { date: "19.02.22:", desc: "Add jq to build-stage" }
|
||||
- { date: "07.01.22:", desc: "Rebase to Alpine, build from source." }
|
||||
- { date: "06.01.22:", desc: "Deprecate unstable branch." }
|
||||
- { date: "10.02.21:", desc: "Rebase to focal." }
|
||||
|
||||
@@ -5,22 +5,22 @@ mkdir -p /config/qBittorrent
|
||||
|
||||
# copy config
|
||||
[[ ! -e /config/qBittorrent/qBittorrent.conf ]] && \
|
||||
cp /defaults/qBittorrent.conf /config/qBittorrent/qBittorrent.conf
|
||||
cp /defaults/qBittorrent.conf /config/qBittorrent/qBittorrent.conf
|
||||
|
||||
# v4.3.3 BT_backup migration
|
||||
[[ -d /config/data/qBittorrent/BT_backup/ ]] && \
|
||||
mv /config/qBittorrent/BT_backup/ /config/qBittorrent/BT_backup.bak/ && \
|
||||
mkdir /config/qBittorrent/BT_backup/ && \
|
||||
cp -a /config/data/qBittorrent/BT_backup/. /config/qBittorrent/BT_backup/ && \
|
||||
mv /config/data/qBittorrent/BT_backup/ /config/data/qBittorrent/BT_backup.old/
|
||||
mv /config/qBittorrent/BT_backup/ /config/qBittorrent/BT_backup.bak/ && \
|
||||
mkdir /config/qBittorrent/BT_backup/ && \
|
||||
cp -a /config/data/qBittorrent/BT_backup/. /config/qBittorrent/BT_backup/ && \
|
||||
mv /config/data/qBittorrent/BT_backup/ /config/data/qBittorrent/BT_backup.old/
|
||||
|
||||
# chown download directory if currently not set to abc
|
||||
if [[ -d /downloads ]]; then
|
||||
if [[ "$(stat -c '%U' /downloads)" != "abc" ]]; then
|
||||
chown -R abc:abc /downloads
|
||||
fi
|
||||
if [[ "$(stat -c '%U' /downloads)" != "abc" ]]; then
|
||||
chown -R abc:abc /downloads
|
||||
fi
|
||||
fi
|
||||
|
||||
# permissions
|
||||
chown -R abc:abc \
|
||||
/config
|
||||
/config
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
WEBUI_PORT=${WEBUI_PORT:-8080}
|
||||
|
||||
exec \
|
||||
s6-setuidgid abc /usr/bin/qbittorrent-nox --webui-port="${WEBUI_PORT}"
|
||||
s6-setuidgid abc /usr/bin/qbittorrent-nox --webui-port="${WEBUI_PORT}"
|
||||
|
||||
Reference in New Issue
Block a user