name: CheckLinks
on:
  push:
    branches:
      - gh-pages
  pull_request:
    branches:
      - gh-pages

concurrency:
  group: "pages"
  cancel-in-progress: true

jobs:
  checklinks:
    name: Check website links
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
    steps:
      - uses: actions/checkout@v2
      - name: Ruby
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: 2.6
          bundler-cache: true
      - name: Build jekyll website with drafts
        run: bundle exec jekyll build --drafts
      - name: Check for broken links
        run: |
          bundle exec htmlproofer --assume_extension --checks_to_ignore ImageCheck,ScriptCheck --only_4xx --http_status_ignore 429,403 --allow_hash_href --url_ignore "https://onnxruntime.ai/docs/reference/api/c-api.html,https://www.onnxruntime.ai/docs/reference/execution-providers/TensorRT-ExecutionProvider.html#c-api-example,https://www.onnxruntime.ai/docs/resources/graph-optimizations.html,onnxruntime/capi/onnxruntime_pybind11_state.html" --log-level :info ./_site
