on: push: branches: - master workflow_dispatch: jobs: build-deb-amd64: runs-on: docker steps: - name: Checkout uses: actions/checkout@v4 - name: Build uses: https://github.com/addnab/docker-run-action@v3 with: image: trixie-amd64-musl-runner:latest options: -v ${{ github.workspace }}:/work run: | cd work ./debian/make_debian_changelog.sh PATH=$PATH:/opt/x86_64-linux-musl-cross/bin FLAGS="-static" DEB_BUILD_OPTIONS=parallel=$(nproc) dpkg-buildpackage --post-clean --no-sign -aamd64 -t x86_64-linux-musl -i -I -b mv ../*.deb . - name: Upload packages artifacts uses: https://code.forgejo.org/forgejo/upload-artifact@v3 with: name: packages path: "*.deb" build-deb-arm64: runs-on: docker steps: - name: Checkout uses: actions/checkout@v4 - name: Build uses: https://github.com/addnab/docker-run-action@v3 with: image: trixie-amd64-musl-runner:latest options: -v ${{ github.workspace }}:/work run: | cd work ./debian/make_debian_changelog.sh PATH=$PATH:/opt/aarch64-linux-musl-cross/bin FLAGS="-static" DEB_BUILD_OPTIONS=parallel=$(nproc) dpkg-buildpackage --post-clean --no-sign -aarm64 -t aarch64-linux-musl -i -I -b mv ../*.deb . - name: Upload packages artifacts uses: https://code.forgejo.org/forgejo/upload-artifact@v3 with: name: packages path: "*.deb" build-deb-armhf: runs-on: docker steps: - name: Checkout uses: actions/checkout@v4 - name: Build uses: https://github.com/addnab/docker-run-action@v3 with: image: trixie-amd64-musl-runner:latest options: -v ${{ github.workspace }}:/work run: | cd work ./debian/make_debian_changelog.sh PATH=$PATH:/opt/arm-linux-musleabihf-cross/bin FLAGS="-mcpu=arm1176jzf-s -static" DEB_BUILD_OPTIONS=parallel=$(nproc) dpkg-buildpackage --post-clean --no-sign -aarmhf -t arm-linux-musleabihf -i -I -b mv ../*.deb . - name: Upload packages artifacts uses: https://code.forgejo.org/forgejo/upload-artifact@v3 with: name: packages path: "*.deb" buildx: runs-on: docker steps: - name: Checkout uses: actions/checkout@v4 - name: Login to Registry uses: docker/login-action@v3 with: registry: ${{ vars.CONTAINER_REGISTRY }} username: ${{ secrets.REGISTRY_USERNAME }} password: ${{ secrets.REGISTRY_TOKEN }} - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and push uses: docker/build-push-action@v5 with: context: . platforms: linux/amd64,linux/arm64,linux/arm/v7 push: true tags: ${{ vars.CONTAINER_REGISTRY }}/${{ github.repository }}:latest