GitHub Action

Automatisér WCAG-scanning i dine pull requests. Få score, fejl og resultater kommenteret direkte på PR'en — og brug dit Inklu-dashboard til at følge udviklingen over tid.

Kræver Professional-plan

CI/CD integration er tilgængelig på Professional og Enterprise. Du kan oprette en API-nøgle på dashboardet.

Kom i gang på 3 trin

  1. 1. Opret en API-nøgle. Gå til Settings → API Keys og generer en ny nøgle.
  2. 2. Tilføj nøglen som GitHub secret. I dit repo: Settings → Secrets → Actions → New repository secret. Navngiv den INKLU_API_KEY.
  3. 3. Opret en workflow-fil. Læg denne fil som .github/workflows/accessibility.yml:
name: Accessibility

on:
  pull_request:
  push:
    branches: [main]

jobs:
  scan:
    runs-on: ubuntu-latest
    permissions:
      pull-requests: write
    steps:
      - uses: inklu-io/scan-action@v1
        with:
          api-key: ${{ secrets.INKLU_API_KEY }}
          url: https://staging.example.com
          fail-on-score-below: 80

Det er det. Hver PR bliver nu scannet automatisk, og buildet fejler hvis scoren falder under 80. Resultaterne vises som en kommentar på PR'en og i dit Inklu-dashboard.

Inputs

InputPåkrævetDefaultBeskrivelse
api-keyJaDin Inklu API-nøgle
urlJaURL'en der skal scannes
fail-on-score-belowNej0Fejl hvis scoren er under denne værdi (0 deaktiverer)
fail-on-criticalNejfalseFejl hvis der findes WCAG-fejl
fail-on-score-dropNejFejl hvis scoren falder mere end N point vs baseline
max-pagesNej10Maksimum antal sider (begrænset af din plan)
comment-on-prNejtruePost en kommentar på PR'en med resultaterne
baseline-branchNejmainBranch at sammenligne PR-scans mod
timeout-secondsNej600Hvor længe der ventes på at scanningen færdiggøres

Eksempler

Fejl kun ved score-fald

Tillader dårlige scores i eksisterende kode, men bloker hvis PR'en gør det værre:

- uses: inklu-io/scan-action@v1
  with:
    api-key: ${{ secrets.INKLU_API_KEY }}
    url: https://staging.example.com
    fail-on-score-drop: 5

Streng mode

Krav om høj score og nul kritiske fejl:

- uses: inklu-io/scan-action@v1
  with:
    api-key: ${{ secrets.INKLU_API_KEY }}
    url: https://staging.example.com
    fail-on-score-below: 90
    fail-on-critical: true

Scan en Vercel preview

jobs:
  scan:
    runs-on: ubuntu-latest
    permissions:
      pull-requests: write
    steps:
      - name: Wait for Vercel preview
        uses: patrickedqvist/wait-for-vercel-preview@v1.3.1
        id: vercel
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          max_timeout: 600

      - uses: inklu-io/scan-action@v1
        with:
          api-key: ${{ secrets.INKLU_API_KEY }}
          url: ${{ steps.vercel.outputs.url }}
          fail-on-score-drop: 3

Scan flere URL'er

strategy:
  matrix:
    url:
      - https://example.com
      - https://example.com/checkout
      - https://example.com/products
steps:
  - uses: inklu-io/scan-action@v1
    with:
      api-key: ${{ secrets.INKLU_API_KEY }}
      url: ${{ matrix.url }}

Outputs

Du kan bruge scan-resultaterne i senere steps:

- uses: inklu-io/scan-action@v1
  id: inklu
  with:
    api-key: ${{ secrets.INKLU_API_KEY }}
    url: https://staging.example.com

- name: Use the results
  run: |
    echo "Score: ${{ steps.inklu.outputs.score }}"
    echo "Errors: ${{ steps.inklu.outputs.errors }}"
    echo "Report: ${{ steps.inklu.outputs.scan-url }}"

Se også