62 lines
No EOL
2.1 KiB
YAML
62 lines
No EOL
2.1 KiB
YAML
name: update-flake-lock
|
|
run-name: ${{ github.actor }} - update-flake-lock
|
|
on:
|
|
schedule:
|
|
- cron: '0 0 * * 1'
|
|
# “At 00:00 on Monday."
|
|
jobs:
|
|
update-flake-lock:
|
|
runs-on: docker
|
|
container:
|
|
image: alpine:edge
|
|
steps:
|
|
- name: "Setup Runner"
|
|
run: |
|
|
apk update
|
|
apk add git nodejs nix --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/
|
|
git config --global user.email "${{github.actor}}"
|
|
git config --global user.name "Albert J. Copeland"
|
|
- uses: actions/checkout@v3
|
|
- name: "Directory Structure"
|
|
run: |
|
|
ls ${{ github.workspace }}/*
|
|
- name: "Git Info"
|
|
run: |
|
|
git -C ${{ github.workspace }} status
|
|
git -C ${{ github.workspace }} log
|
|
git -C ${{ github.workspace }} diff
|
|
- name: "Runner: Node Info"
|
|
run: |
|
|
id
|
|
uname -a
|
|
hostname
|
|
cat /etc/os-release
|
|
- name: "Nix Version"
|
|
run: |
|
|
nix --version
|
|
- name: "Nix Flake Update"
|
|
run: |
|
|
echo "Running Nix Flake Update"
|
|
cd /workspace/albert/nix
|
|
nix --extra-experimental-features "nix-command flakes" flake update
|
|
echo "Git Diff:"
|
|
git diff
|
|
- name: "Commit and Upload"
|
|
run: |
|
|
git commit -am "[ACTIONS] Flake Update (`date +%Y-%m-%d`)"
|
|
git push
|
|
- if: success()
|
|
uses: https://git.sysctl.io/actions/gotify-action@master
|
|
with:
|
|
gotify_api_base: '${{ secrets.GOTIFY_URL }}'
|
|
gotify_app_token: '${{ secrets.GOTIFY_TOKEN }}'
|
|
notification_title: '[ ${{ github.repository }}: ${{ github.workflow }} ] NixOS Flake Updated'
|
|
notification_message: 'Build completed successfully.'
|
|
- if: failure()
|
|
uses: https://git.sysctl.io/actions/gotify-action@master
|
|
with:
|
|
gotify_api_base: '${{ secrets.GOTIFY_URL }}'
|
|
gotify_app_token: '${{ secrets.GOTIFY_TOKEN }}'
|
|
notification_title: '[ ${{ github.repository }}: ${{ github.workflow }} ] Build Failed'
|
|
notification_message: 'Your build has failed. Check Forgejo.'
|
|
name: "Send Notification" |