Merge pull request #21 from mogeko:dev

update qbittorrent version to 4.4.0beta1
This commit is contained in:
Mogeko 2021-11-20 00:57:42 +01:00 committed by GitHub
commit 688bbbe15f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 40 additions and 33 deletions

View file

@ -11,10 +11,11 @@ jobs:
check: check:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
is_new: ${{ steps.check_ver.outputs.is_new }}
img_ver: ${{ steps.check_ver.outputs.img_ver }} img_ver: ${{ steps.check_ver.outputs.img_ver }}
qbt_ver: ${{ steps.check_ver.outputs.qbt_ver }} qbt_ver: ${{ steps.check_ver.outputs.qbt_ver }}
lib_ver: ${{ steps.check_ver.outputs.lib_ver }} lib_ver: ${{ steps.check_ver.outputs.lib_ver }}
is_new: ${{ steps.check_ver.outputs.is_new }}
latest: ${{ steps.check_ver.outputs.latest }}
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
@ -24,15 +25,17 @@ jobs:
- name: Check version - name: Check version
id: check_ver id: check_ver
run: | run: |
OLD_VER=$(curl -s "${GHCR_URL}" | grep -Po "(\d+\.){2}\d+\-r\d+" | head -1) OLD_VER=$(curl -s "${GHCR_URL}" | grep -Po "(\d+\.)+\d+(|beta\d+|rc\d+)-r\d+" | head -1)
NEW_TAG=$(curl -s "${REPO_TAGS}" | grep -Po "release-(\d+\.){2}\d+\.zip" | head -1) NEW_TAG=$(curl -s "${REPO_TAGS}" | grep -Po "(\d+\.)+\d+(|beta\d+|rc\d+)\.zip" | head -1)
LIB_VER=$(jq -r '.libtorrent' ./latest.json) LIB_VER=$(jq -r '.libtorrent' ./latest.json)
QBT_VER=$(jq -r '.qbittorrent' ./latest.json) QBT_VER=$(jq -r '.qbittorrent' ./latest.json)
PKG_REL=$(jq -r '.pkgrel' ./latest.json) PKG_REL=$(jq -r '.pkgrel' ./latest.json)
if [ ${{ github.event_name }} == 'push' ]; then if echo "${NEW_TAG%.zip}" | grep -Pq "^(\d+\.){2}\d+$"; then
echo "::set-output name=latest::type=raw,latest"
elif [ ${{ github.event_name }} == 'push' ]; then
IMG_VER="${QBT_VER}-r${PKG_REL}" IMG_VER="${QBT_VER}-r${PKG_REL}"
else else
QBT_VER="${NEW_TAG:8:5}" QBT_VER="${NEW_TAG%.zip}"
IMG_VER="${QBT_VER}-r0" IMG_VER="${QBT_VER}-r0"
fi fi
IS_NEW=$([[ "${IMG_VER}" != "${OLD_VER}" ]] && echo "yes" || echo "no") IS_NEW=$([[ "${IMG_VER}" != "${OLD_VER}" ]] && echo "yes" || echo "no")
@ -78,7 +81,7 @@ jobs:
type=edge type=edge
type=schedule,pattern={{date 'YYYYMMDD'}} type=schedule,pattern={{date 'YYYYMMDD'}}
type=raw,${{ needs.check.outputs.img_ver }} type=raw,${{ needs.check.outputs.img_ver }}
type=raw,latest ${{ needs.check.outputs.latest }}
- name: Build and push Docker image - name: Build and push Docker image
id: build id: build

View file

@ -13,12 +13,16 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
new_ver: ${{ steps.check_ver.outputs.new_ver }} new_ver: ${{ steps.check_ver.outputs.new_ver }}
latest: ${{ steps.check_ver.outputs.latest }}
steps: steps:
- name: Check version - name: Check version
id: check_ver id: check_ver
run: | run: |
NEW_TAG=$(curl -s "${REPO_TAGS}" | grep -Po "release-(\d+\.){2}\d+\.zip" | head -1) NEW_TAG=$(curl -s "${REPO_TAGS}" | grep -Po "(\d+\.)+\d+(|beta\d+|rc\d+)\.zip" | head -1)
echo "::set-output name=new_ver::${NEW_TAG:8:5}" if echo "${NEW_TAG%.zip}" | grep -Pq "^(\d+\.){2}\d+$"; then
echo "::set-output name=latest::type=raw,latest"
fi
echo "::set-output name=new_ver::${NEW_TAG%.zip}-r0"
env: env:
REPO_TAGS: https://github.com/qbittorrent/qBittorrent/tags REPO_TAGS: https://github.com/qbittorrent/qBittorrent/tags
@ -44,8 +48,8 @@ jobs:
tags: | tags: |
type=edge type=edge
type=schedule,pattern={{date 'YYYYMMDD'}} type=schedule,pattern={{date 'YYYYMMDD'}}
type=raw,${{ needs.check.outputs.new_ver }}-r0 type=raw,${{ needs.check.outputs.new_ver }}
type=raw,latest ${{ needs.check.outputs.latest }}
- name: Save status - name: Save status
run: echo ${{ toJSON(steps.meta.outputs.json) }} > ${{ github.workspace }}/status.json run: echo ${{ toJSON(steps.meta.outputs.json) }} > ${{ github.workspace }}/status.json

3
.gitignore vendored
View file

@ -75,5 +75,6 @@ $RECYCLE.BIN/
# End of https://www.toptal.com/developers/gitignore/api/macos,windows,linux # End of https://www.toptal.com/developers/gitignore/api/macos,windows,linux
# Custom example dirs # Custom example dirs
example/config example/**/*
!example/config/qBittorrent.conf !example/config/qBittorrent.conf
!example/data/.gitkeep

View file

@ -1,35 +1,34 @@
FROM alpine:3.14 as libtorrent_builder FROM alpine:3.14 as libtorrent_builder
RUN apk add --no-cache \ RUN apk add --no-cache boost-dev build-base clang-dev cmake libtool openssl-dev git
autoconf automake binutils boost-dev cppunit-dev libtool linux-headers ncurses-dev openssl-dev zlib-dev \
build-base clang tar
WORKDIR /workspace WORKDIR /workspace
ARG LIBTORRENT_VERSION ARG LIBTORRENT_VERSION
ADD https://github.com/arvidn/libtorrent/archive/refs/tags/v${LIBTORRENT_VERSION}.tar.gz /workspace ARG LIBTORRENT_GIT=https://github.com/arvidn/libtorrent.git
RUN tar -zxf v${LIBTORRENT_VERSION}.tar.gz -C . \ RUN git clone --depth 1 --recurse-submodules -b v${LIBTORRENT_VERSION} ${LIBTORRENT_GIT} .
&& cd libtorrent-${LIBTORRENT_VERSION} \ RUN cmake . -DCMAKE_BUILD_TYPE=Release \
&& ./autotool.sh \ -DCMAKE_INSTALL_PREFIX=/workspace/pkg \
&& ./configure CXXFLAGS="-std=c++14" --prefix=/workspace/pkg --with-libiconv \ -DCMAKE_CXX_STANDARD=17 \
&& CC=clang make -j$(nproc) \ && CC=clang make -j$(nproc) \
&& make install-strip && make install
FROM alpine:3.14 as qbittorrent_builder FROM alpine:3.14 as qbittorrent_builder
RUN apk add --no-cache \ RUN apk add --no-cache boost-dev build-base clang-dev cmake qt5-qtbase-dev qt5-qttools-dev git
boost-dev qt5-qtbase-dev qt5-qttools-dev \
build-base clang tar
WORKDIR /workspace
COPY --from=libtorrent_builder /workspace/pkg /usr COPY --from=libtorrent_builder /workspace/pkg /usr
WORKDIR /workspace
ARG QBITTORRENT_VERSION ARG QBITTORRENT_VERSION
ADD https://github.com/qbittorrent/qBittorrent/archive/refs/tags/release-${QBITTORRENT_VERSION}.tar.gz /workspace ARG QBITTORRENT_GIT=https://github.com/qbittorrent/qBittorrent.git
RUN tar -zxf release-${QBITTORRENT_VERSION}.tar.gz -C . \ RUN git clone --depth 1 --recurse-submodules -b release-${QBITTORRENT_VERSION} ${QBITTORRENT_GIT} .
&& cd qBittorrent-release-${QBITTORRENT_VERSION} \ RUN cmake . -DCMAKE_BUILD_TYPE=Release \
&& ./configure --prefix=/workspace/pkg --disable-gui \ -DCMAKE_INSTALL_PREFIX=/workspace/pkg \
-DCMAKE_CXX_STANDARD=17 \
-DSTACKTRACE=OFF \
-DGUI=OFF \
&& CC=clang make -j$(nproc) \ && CC=clang make -j$(nproc) \
&& make install && make install
@ -37,8 +36,8 @@ FROM alpine:3.14
RUN apk add --no-cache busybox libgcc openssl qt5-qtbase zlib RUN apk add --no-cache busybox libgcc openssl qt5-qtbase zlib
COPY --from=libtorrent_builder /workspace/pkg /usr
COPY --from=qbittorrent_builder /workspace/pkg /usr COPY --from=qbittorrent_builder /workspace/pkg /usr
COPY --from=libtorrent_builder /workspace/pkg /usr
ADD --chown=1000:100 root / ADD --chown=1000:100 root /

View file

@ -1,5 +1,5 @@
{ {
"qbittorrent": "4.3.8", "qbittorrent": "4.4.0beta1",
"libtorrent": "1.2.14", "libtorrent": "2.0.4",
"pkgrel": 1 "pkgrel": 0
} }