Added GitHub action to do axe accessibility tests with [axe cli](https://github.com/dequelabs/axe-core-npm/tree/develop/packages/cli). I believe it is best by default to let this be run only manually, since fixing some of the issues are not straightforward (I haven't fixed them all for this template yet). --------- Signed-off-by: George Araújo <george.gcac@gmail.com>
62 lines
1.6 KiB
YAML
62 lines
1.6 KiB
YAML
name: Axe accessibility testing
|
|
|
|
on:
|
|
# if you want to run this on every push uncomment the following lines
|
|
# push:
|
|
# branches:
|
|
# - master
|
|
# - main
|
|
# pull_request:
|
|
# branches:
|
|
# - master
|
|
# - main
|
|
workflow_dispatch:
|
|
inputs:
|
|
url:
|
|
description: "URL to be checked (e.g.: blog/)"
|
|
required: false
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
env:
|
|
URL: ""
|
|
|
|
jobs:
|
|
check:
|
|
# available images: https://github.com/actions/runner-images#available-images
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout 🛎️
|
|
uses: actions/checkout@v3
|
|
- name: Setup Ruby
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: "3.2.2"
|
|
bundler-cache: true
|
|
- name: Update _config.yml ⚙️
|
|
uses: fjogeleit/yaml-update-action@v0.13.1
|
|
with:
|
|
commitChange: false
|
|
valueFile: "_config.yml"
|
|
changes: |
|
|
{
|
|
"giscus.repo": "${{ github.repository }}",
|
|
"baseurl": ""
|
|
}
|
|
- name: Install and Build 🔧
|
|
run: |
|
|
pip3 install --upgrade jupyter
|
|
npm install -g mermaid.cli
|
|
npm install -g purgecss
|
|
export JEKYLL_ENV=production
|
|
bundle exec jekyll build --lsi
|
|
purgecss -c purgecss.config.js
|
|
- name: Run axe 🪓
|
|
# https://github.com/dequelabs/axe-core-npm/tree/develop/packages/cli
|
|
run: |
|
|
npm install -g @axe-core/cli
|
|
npm install -g http-server
|
|
http-server _site/ &
|
|
axe http://localhost:8080/${{ github.event.inputs.url || env.URL }} --load-delay=1500 --exit
|