Skip to content

fix(CI): update filename of version artifact #175

fix(CI): update filename of version artifact

fix(CI): update filename of version artifact #175

Workflow file for this run

# Build and publish a release of InputPlumber 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
# In ".releaserc.yaml" a step is defined to write the release version to
# ".version.txt" upon successful release. This step checks to see if that
# exists to determine if the other jobs need to run.
- id: status
name: Set release status
shell: bash
run: |
if [ -f .version.txt ]; then
echo "was_released=yes" >> "$GITHUB_OUTPUT"
else
echo "was_released=no" >> "$GITHUB_OUTPUT"
fi
# Upload the package build for the AUR publish step
- name: Upload PKGBUILD
uses: actions/upload-artifact@v4
if: steps.status.outputs.was_released == 'yes'
with:
name: PKGBUILD
path: ./pkg/archlinux/PKGBUILD
if-no-files-found: error
- name: Upload Release Version
uses: actions/upload-artifact@v4
if: steps.status.outputs.was_released == 'yes'
with:
name: version.txt
path: .version.txt
if-no-files-found: error
include-hidden-files: true
outputs:
should_publish: ${{ steps.status.outputs.was_released }}
publish-to-copr:
name: 🟤 Publish to COPR
needs: release
if: needs.release.outputs.should_publish == 'yes'
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
if: needs.release.outputs.should_publish == 'yes'
runs-on: ubuntu-latest
steps:
- name: Download PKGBUILD
uses: actions/download-artifact@v4
with:
name: PKGBUILD
- name: Download Release Version
uses: actions/download-artifact@v4
with:
name: version.txt
- name: Setup SSH
uses: MrSquaare/ssh-setup-action@v3
with:
host: aur.archlinux.org
private-key: ${{ secrets.AUR_SSH_KEY }}
- name: Checkout AUR bin
run: git clone ssh://[email protected]/inputplumber-bin.git
- name: Copy PKGBUILD to bin repo
run: cp ./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
- name: Checkout AUR git
run: git clone ssh://[email protected]/inputplumber-git.git
- 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 AUR
run: git clone ssh://[email protected]/inputplumber.git
- name: Copy Makefile from git package and update PKGBUILD
run: |
cp inputplumber-git/Makefile inputplumber/Makefile
cp inputplumber-git/Dockerfile inputplumber/Dockerfile
curl -sL https://github.com/ShadowBlip/InputPlumber/archive/refs/tags/v$(cat .version.txt).tar.gz | sha256sum | cut -d' ' -f1 > hash.txt
sed -i "s/^pkgver=.*/pkgver=$(cat .version.txt)/g" inputplumber/PKGBUILD
sed -i "s/^sha256sums=.*/sha256sums=('$(cat hash.txt)')/g" inputplumber/PKGBUILD
- name: Build package
working-directory: inputplumber
run: |
make in-docker
- name: Commit and publish package
shell: bash
working-directory: inputplumber
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