name: Check for broken links

on:
  push:
    branches:
      - master
      - main
    paths:
      - "assets/**"
      - "**.html"
      - "**.js"
      - "**.liquid"
      - "**/*.md"
      - "**.yml"
      - "!.github/workflows/axe.yml"
      - "!.github/workflows/deploy-docker-tag.yml"
      - "!.github/workflows/deploy-image.yml"
      - "!.github/workflows/docker-slim.yml"
      - "!.github/workflows/lighthouse-badger.yml"
      - "!.github/workflows/prettier.yml"
      - "!lighthouse_results/**"
  pull_request:
    branches:
      - master
      - main
    paths:
      - "assets/**"
      - "**.html"
      - "**.js"
      - "**.liquid"
      - "**/*.md"
      - "**.yml"
      - "!.github/workflows/axe.yml"
      - "!.github/workflows/deploy-docker-tag.yml"
      - "!.github/workflows/deploy-image.yml"
      - "!.github/workflows/docker-slim.yml"
      - "!.github/workflows/lighthouse-badger.yml"
      - "!.github/workflows/prettier.yml"
      - "!lighthouse_results/**"

jobs:
  link-checker:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Link Checker 🔗
        uses: lycheeverse/lychee-action@v2.1.0
        with:
          fail: true
          # removed md files that include liquid tags
          args: --user-agent 'curl/7.54' --exclude-path README.md --exclude-path _pages/404.md --exclude-path _pages/blog.md --exclude-path _posts/2018-12-22-distill.md --exclude-path _posts/2023-04-24-videos.md --verbose --no-progress './**/*.md' './**/*.html'
