diff options
Diffstat (limited to '.github/workflows/check-links.yml')
| -rw-r--r-- | .github/workflows/check-links.yml | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/.github/workflows/check-links.yml b/.github/workflows/check-links.yml new file mode 100644 index 0000000..97ddc8a --- /dev/null +++ b/.github/workflows/check-links.yml @@ -0,0 +1,54 @@ +name: Check links + +"on": + pull_request: + branches: [main] + paths: + - "**.md" + - .github/workflows/check-links.yaml + - flake.lock + push: + branches: [main] + paths: + - "**.md" + - .github/workflows/check-links.yaml + - flake.lock + schedule: + # Run once a month on the 28th. + - cron: "0 0 28 * *" + workflow_dispatch: + +jobs: + lychee: + runs-on: ubuntu-latest + permissions: + issues: write + steps: + - uses: actions/checkout@v4 + - uses: DeterminateSystems/nix-installer-action@v16 + - uses: DeterminateSystems/magic-nix-cache-action@v8 + - name: Build the site + run: nix build --print-build-logs + - name: Restore lychee cache + uses: actions/cache/restore@v4 + with: + path: .lycheecache + key: lychee-cache + - name: Check links + id: lychee + uses: lycheeverse/lychee-action@v2 + with: + fail: false + - name: Save lychee cache + uses: actions/cache/save@v4 + if: always() + with: + key: lychee-cache + path: .lycheecache + - name: Create issue + if: steps.lychee.outputs.exit_code != 0 + uses: peter-evans/create-issue-from-file@v5 + with: + title: "[lychee] Broken links" + content-filepath: ./lychee/out.md + labels: bug, automated issue |
