chsrc/.github/workflows/pkg-aur-rel.yml
2024-09-08 17:56:07 +08:00

63 lines
2.2 KiB
YAML

# This workflow will publish the `chsrc` and the `chsrc-bin` packages to the AUR
# when there is a new `released` event.
# Note: only normal version tags like `v1.2.3` will be published.
name: Publish AUR Package (chsrc, chsrc-bin)
on:
release:
types: [ released ]
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Get the release tag
id: get_tag
run: |
echo "tag=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Validate version tag
run: |
if [[ ! $tag =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "Abnormal version tag: $tag"
echo "valid=0" >> $GITHUB_ENV
else
version=$(echo $tag | sed 's/^v//')
echo "version=$version" >> $GITHUB_ENV
echo "valid=1" >> $GITHUB_ENV
fi
- name: Fetch PKGBUILD
run: |
wget https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD\?h\=chsrc-bin -O ./PKGBUILD_bin
- name: Update PKGBUILD
run: |
sed -i "s/pkgver=.*/pkgver=$version/" PKGBUILD_bin
- name: Publish chsrc-bin to AUR
if: env.valid == '1'
uses: KSXGitHub/github-actions-deploy-aur@v3.0.1
with:
pkgname: chsrc-bin
pkgbuild: ./PKGBUILD_bin
updpkgsums: true
test: true # Check that PKGBUILD could be built, and update pkgver
commit_username: ${{ secrets.AUR_USERNAME }}
commit_email: ${{ secrets.AUR_EMAIL }}
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
commit_message: "github-action-auto-publish v${{ env.version }}"
- name: Fetch PKGBUILD
run: |
wget https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD\?h\=chsrc -O ./PKGBUILD
- name: Update PKGBUILD
run: |
sed -i "s/pkgver=.*/pkgver=$version/" PKGBUILD
- name: Publish chsrc to AUR
if: env.valid == '1'
uses: KSXGitHub/github-actions-deploy-aur@v3.0.1
with:
pkgname: chsrc
pkgbuild: ./PKGBUILD
updpkgsums: true
test: true # Check that PKGBUILD could be built, and update pkgver
commit_username: ${{ secrets.AUR_USERNAME }}
commit_email: ${{ secrets.AUR_EMAIL }}
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
commit_message: "github-action-auto-publish v${{ env.version }}"