| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- name: RPM Packages
- permissions: read-all
- 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/rpm/**' # Only run on changes to the rpm packaging files
- - '.github/workflows/rpm_packages.yml'
- jobs:
- test-package:
- 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@v6
- with:
- fetch-depth: 0
- - name: Build RPM Package
- run: make rpm VERSION=2.2.x_dev
- - name: List generated files
- run: ls -l *.rpm
- build-package-manually:
- if: github.event_name == 'workflow_dispatch'
- name: Build Packages Manually
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v6
- with:
- fetch-depth: 0
- - name: Build RPM Package
- run: make rpm
- - name: Upload package
- uses: actions/upload-artifact@v7
- with:
- name: packages
- path: "*.rpm"
- if-no-files-found: error
- retention-days: 3
- publish-package:
- if: github.event_name == 'push' && github.repository_owner == 'miniflux'
- name: Publish Packages
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v6
- with:
- fetch-depth: 0
- - name: Build RPM Package
- run: make rpm
- - name: List generated files
- run: ls -l *.rpm
- - name: Upload package to repository
- env:
- FURY_TOKEN: ${{ secrets.FURY_TOKEN }}
- run: for f in *.rpm; do curl -F package=@$f https://$FURY_TOKEN@push.fury.io/miniflux/; done
|