chore(CI): consolidate publish workflows so they work correctly #148
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
# Build and publish a release of Gamescope DBus using semantic-release whenever | |
# changes are merged into main. | |
name: "🎉 Release" | |
on: | |
push: | |
branches: | |
- main | |
- v0.x | |
- v1.x | |
paths-ignore: | |
- README.md | |
- "docs/**" | |
# Jobs to run | |
jobs: | |
release: | |
name: 🎉 Publish to GitHub | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup Node.js | |
uses: actions/setup-node@v1 | |
with: | |
node-version: "20" | |
- name: Install Dependencies | |
run: npm install @semantic-release/exec @google/semantic-release-replace-plugin @semantic-release/git | |
- name: Release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: make sem-release | |
publish-to-copr: | |
name: 🟤 Publish to COPR | |
needs: release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Trigger COPR Build | |
run: curl -X POST ${{ secrets.COPR_WEBHOOK_URL }} | |
publish-to-aur: | |
name: 🐧 Publish to AUR | |
needs: release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout AUR git | |
uses: actions/checkout@v4 | |
with: | |
repository: ssh://[email protected]/inputplumber-git.git | |
path: inputplumber-git | |
ssh-key: ${{ secrets.AUR_SSH_KEY }} | |
- name: Build git package | |
working-directory: inputplumber-git | |
run: make in-docker | |
- name: Commit and publish git package | |
shell: bash | |
working-directory: inputplumber-git | |
run: | | |
git config user.name "github-actions[bot]" | |
git config user.email "shadowblip+github-actions[bot]@users.noreply.github.com" | |
git add .SRCINFO PKGBUILD | |
git commit -m "Update to $(grep '^pkgver=' PKGBUILD | cut -d'=' -f2)" | |
git push origin master | |
- name: Checkout InputPlumber | |
uses: actions/checkout@v4 | |
with: | |
path: InputPlumber | |
- name: Checkout AUR bin | |
uses: actions/checkout@v4 | |
with: | |
repository: ssh://[email protected]/inputplumber-bin.git | |
path: inputplumber-bin | |
ssh-key: ${{ secrets.AUR_SSH_KEY }} | |
- name: Copy PKGBUILD to bin repo | |
run: cp ./InputPlumber/pkg/archlinux/PKGBUILD inputplumber-bin/ | |
- name: Build bin package | |
working-directory: inputplumber-bin | |
run: make in-docker | |
- name: Commit and publish bin package | |
shell: bash | |
working-directory: inputplumber-bin | |
run: | | |
git config user.name "github-actions[bot]" | |
git config user.email "shadowblip+github-actions[bot]@users.noreply.github.com" | |
git add .SRCINFO PKGBUILD | |
git commit -m "Update to $(grep '^pkgver=' PKGBUILD | cut -d'=' -f2)" | |
git push origin master | |