diff --git a/.github/workflows/link-checker.yaml b/.github/workflows/link-checker.yaml new file mode 100644 index 0000000..c41cfda --- /dev/null +++ b/.github/workflows/link-checker.yaml @@ -0,0 +1,47 @@ +--- +name: Link Checker + +on: + push: null + repository_dispatch: null + workflow_dispatch: null + pull_request: + branches: [main] + types: + [opened, reopened, synchronize] +permissions: + contents: read +jobs: + linkChecker: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Restore lychee cache + uses: actions/cache@v4 + id: restore-cache + with: + path: .lycheecache + key: cache-lychee-${{ github.sha }} + restore-keys: cache-lychee- + + - name: Link Checker + id: lychee + uses: lycheeverse/lychee-action@v2 + with: + args: >- + './**/*.md' + --verbose + --no-progress + --user-agent 'Mozilla/5.0 (X11; Linux x86_64) Chrome/134.0.0.0' + --retry-wait-time 60 + --max-retries 8 + --accept 100..=103,200..=299,429 + --cookie-jar cookies.json + --exclude-all-private + --max-concurrency 4 + --cache + --cache-exclude-status '429, 500..502' + --max-cache-age 1d + format: markdown + fail: true