infrastructure/.forgejo/workflows/npins.yaml
2023-12-12 11:42:26 +01:00

50 lines
1.4 KiB
YAML

name: npins update
on:
schedule:
# Run at 11 o'clock every day
- cron: "0 12 * * *"
jobs:
npins_update:
runs-on: debian-latest
steps:
- name: Install applications
run: apt-get update && apt-get install sudo
- uses: actions/checkout@v3
- uses: https://github.com/cachix/install-nix-action@v22
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Install npins and tea
run: |
nix-env -iA npins
nix-env -iA tea
- name: Update dependencies
run: |
npins update
- name: Open PR if necessary
run: |
git diff-index --quiet HEAD
if [ $? -eq 1 ]; then
echo "[+] Changes detected, pushing updates."
git add npins
git commit --message "chore(npins): Update"
git push --set-upstream chores/npins-update --force
# Connect to the server with the cli
tea login add \
-n dgnum-chores \
-t {{ secrets.TEA_DGNUM_CHORES_TOKEN }} \
-u https://git.dgnum.eu
# Create a pull request if needed
# i.e. no PR with the same title exists
tea pulls ls -f='title,author' -o simple | grep -q 'chore(npins): Update dgnum-chores') \
&& tea pulls create -D "Automatic npins update" -t "chore(npins): Update" --head chores/npins-update
fi