| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- name: Debian Packages
- permissions:
- contents: read
- on:
- workflow_dispatch:
- push:
- tags:
- - '[0-9]+.[0-9]+.[0-9]+'
- schedule:
- - cron: '0 0 * * 1,4' # Runs at 00:00 UTC on Monday and Thursday
- pull_request:
- branches: [ main ]
- paths:
- - 'packaging/debian/**' # Only run on changes to the debian packaging files
- - '.github/workflows/debian_packages.yml'
- jobs:
- test-packages:
- if: (github.event_name == 'schedule' && github.repository_owner == 'miniflux')
- || github.event_name == 'pull_request'
- name: Test Packages
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- with:
- persist-credentials: false
- fetch-depth: 0
- - name: Set up QEMU
- uses: docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1 # v4.4.0
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@f87e5991a6d7451dcb8d9637bfbc97413f497069 # v4.4.1
- id: buildx
- with:
- install: true
- - name: Available Docker Platforms
- env:
- PLATFORMS: ${{ steps.buildx.outputs.platforms }}
- run: echo "$PLATFORMS"
- - name: Build Debian Packages
- run: make debian-packages
- - name: List generated files
- run: ls -l *.deb
- build-packages-manually:
- if: github.event_name == 'workflow_dispatch'
- name: Build Packages Manually
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- with:
- persist-credentials: false
- fetch-depth: 0
- - name: Set up QEMU
- uses: docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1 # v4.4.0
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@f87e5991a6d7451dcb8d9637bfbc97413f497069 # v4.4.1
- id: buildx
- with:
- install: true
- - name: Available Docker Platforms
- env:
- PLATFORMS: ${{ steps.buildx.outputs.platforms }}
- run: echo "$PLATFORMS"
- - name: Build Debian Packages
- run: make debian-packages
- - name: Upload package
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
- with:
- name: packages
- path: "*.deb"
- if-no-files-found: error
- retention-days: 3
- publish-packages:
- if: github.event_name == 'push' && github.repository_owner == 'miniflux'
- name: Publish Packages
- runs-on: ubuntu-latest
- environment: release
- steps:
- - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- with:
- persist-credentials: false
- fetch-depth: 0
- - name: Set up QEMU
- uses: docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1 # v4.4.0
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@f87e5991a6d7451dcb8d9637bfbc97413f497069 # v4.4.1
- id: buildx
- with:
- install: true
- - name: Available Docker Platforms
- env:
- PLATFORMS: ${{ steps.buildx.outputs.platforms }}
- run: echo "$PLATFORMS"
- - name: Build Debian Packages
- run: make debian-packages
- - name: List generated files
- run: ls -l *.deb
- - name: Upload packages to repository
- env:
- FURY_TOKEN: ${{ secrets.FURY_TOKEN }}
- run: for f in *.deb; do curl -F package=@"$f" https://$FURY_TOKEN@push.fury.io/miniflux/; done
|