Files
nixos-config/.gitea/workflows/handy-update.yml
T
2026-03-13 12:38:18 +00:00

76 lines
2.3 KiB
YAML

name: handy update
on:
schedule:
- cron: "40 6 * * *"
workflow_dispatch:
jobs:
update-handy:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: install nix
uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: check latest handy release and update file
id: update
env:
FILE: modules/pkgs/handy.nix
LATEST_RELEASE_URL: https://github.com/cjpais/Handy/releases/latest
DOWNLOAD_URL_TEMPLATE: https://github.com/cjpais/Handy/releases/download/v{version}/Handy_{version}_amd64.AppImage
RELEASE_API_REPO: cjpais/Handy
RELEASE_TAG_TEMPLATE: v{version}
GITHUB_TOKEN: ${{ secrets.github_token || secrets.GITHUB_TOKEN }}
shell: bash
run: bash .gitea/scripts/update-appimage-nix.sh
- name: create branch and commit
if: steps.update.outputs.updated == 'true'
shell: bash
run: |
set -euo pipefail
version="${{ steps.update.outputs.version }}"
BRANCH="bot/handy-${version}" \
FILE="modules/pkgs/handy.nix" \
COMMIT_MESSAGE="update handy to ${version}" \
bash .gitea/scripts/commit-update.sh
- name: open pull request
if: steps.update.outputs.updated == 'true'
env:
GITEA_TOKEN: ${{ secrets.tea_token || secrets.TEA_TOKEN }}
CHANGELOG: ${{ steps.update.outputs.changelog }}
shell: bash
run: |
set -euo pipefail
version="${{ steps.update.outputs.version }}"
previous_version="${{ steps.update.outputs.previous_version }}"
release_url="https://github.com/cjpais/Handy/releases/tag/v${version}"
pr_body=$(cat <<EOF
automated update of handy appimage version and hash
## changelog
from \`${previous_version}\` to \`${version}\`
upstream release: ${release_url}
${CHANGELOG}
EOF
)
GITEA_API="https://gitea.unrail.xyz/api/v1/repos/thomas/nixos-config" \
BRANCH="bot/handy-${version}" \
TITLE="update handy to ${version}" \
BODY="$pr_body" \
bash .gitea/scripts/create-gitea-pr.sh