Release - Alpha #45
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release - Alpha | |
on: | |
schedule: | |
- cron: '0 0 * * 0' | |
workflow_dispatch: # allow trigger it manually | |
permissions: | |
packages: write | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
platform: | |
- "linux/amd64" | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Set platform name | |
id: set-platform-name | |
run: | | |
echo "PLATFORM_NAME=${{ matrix.platform }}" | sed 's|/|-|g' >> $GITHUB_OUTPUT | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
with: | |
platforms: ${{ matrix.platform }} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
config-inline: | | |
[worker.oci] | |
max-parallelism = 1 | |
- name: Build | |
uses: docker/build-push-action@v5 | |
with: | |
build-args: | | |
QBT_VERSION=devel | |
LIBBT_VERSION=devel | |
LIBBT_CMAKE_FLAGS=-Ddeprecated-functions=ON | |
load: true | |
platforms: ${{ matrix.platform }} | |
labels: | | |
org.opencontainers.image.description=An advanced BitTorrent client programmed in C++, based on Qt toolkit and libtorrent-rasterbar | |
org.opencontainers.image.documentation=https://github.com/qbittorrent/docker-qbittorrent-nox | |
org.opencontainers.image.licenses=GPL-3.0+ | |
org.opencontainers.image.revision=${{ github.sha }} | |
org.opencontainers.image.source=https://github.com/qbittorrent/docker-qbittorrent-nox | |
org.opencontainers.image.title=qbittorrent-nox docker image | |
org.opencontainers.image.url=https://github.com/qbittorrent/docker-qbittorrent-nox | |
org.opencontainers.image.vendor=qBittorrent | |
org.opencontainers.image.version=master | |
tags: | | |
qbittorrentofficial/qbittorrent-nox:alpha | |
ghcr.io/qbittorrent/docker-qbittorrent-nox:alpha | |
- name: Test run | |
run: | | |
docker run \ | |
--entrypoint "/usr/bin/qbittorrent-nox" \ | |
--platform ${{ matrix.platform }} \ | |
qbittorrentofficial/qbittorrent-nox:alpha \ | |
--version | |
# To run the image locally: | |
# 1. `docker load < artifact` | |
# 2. remove `build` field and replace `image` field with the imported image in docker-compose.yml | |
# 3. `docker compose up` | |
- name: Export image | |
run: | | |
docker save \ | |
--output qbittorrent-nox_alpha_${{ steps.set-platform-name.outputs.PLATFORM_NAME }} \ | |
qbittorrentofficial/qbittorrent-nox:alpha | |
- name: Upload build artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: qbittorrent-nox_alpha_${{ steps.set-platform-name.outputs.PLATFORM_NAME }} | |
path: qbittorrent-nox_alpha_${{ steps.set-platform-name.outputs.PLATFORM_NAME }} | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKER_HUB_USERNAME }} | |
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | |
- name: Login to GitHub Container registry | |
uses: docker/login-action@v3 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ github.token }} | |
- name: Upload to registries | |
run: | | |
docker push qbittorrentofficial/qbittorrent-nox:alpha | |
docker push ghcr.io/qbittorrent/docker-qbittorrent-nox:alpha |