chsrc/.github/workflows/pkg-aur-bin.yml
2024-08-29 20:41:09 +08:00

48 lines
1.5 KiB
YAML

# This workflow will publish the `chsrc` package 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)
on:
release:
types: [ released ]
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Get the release tag
id: get_tag
# run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
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 -O ./PKGBUILD
- name: Update PKGBUILD
run: |
sed -i "s/pkgver=.*/pkgver=$version/" PKGBUILD
- name: Publish 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 }}
ssh_private_key: placeholder
commit_message: github-action-auto-publish