mirror of
https://github.com/jrnl-org/jrnl.git
synced 2025-05-10 08:38:32 +02:00
* add some attribtutes to docs template for accessbility * fix colors to meet accessibility guidelines (4.5 contrast ratio for text) * Fix last remaining pa11y error (no button on search form) This fix required moving the mkdocs theme out of the docs directory. It's no in the docs_theme directory, and the mkdocs config is updated accordingly. * Re-enable accessibility testing for docs sit Also, move the pa11y script into the gh actions workflow * clean up linting issues in css * fix and standardize link colors across site * fix twitter button opacity making text fail contrast requirements * move buttons on docs site index nav, tweak font weights * fix footer opacity, tweak spacing of the now more visible sections of the page * change font sizes on index page to meet WCAG * udpate font sizes site-wide for accessibility * fix sidebar for accessibility (font sizes and color contrasts) * restyle code blocks to have dark background, and meet accessibility requirements * standardize (accessible) colors across docs site
103 lines
2.7 KiB
YAML
103 lines
2.7 KiB
YAML
name: Docs
|
|
|
|
on:
|
|
push:
|
|
branches: [ develop, release ]
|
|
paths:
|
|
- 'docs/**'
|
|
- 'docs_theme/**'
|
|
- 'mkdocs.yml'
|
|
- 'readthedocs.yml'
|
|
- '.github/workflows/docs.yaml'
|
|
pull_request_target:
|
|
branches: [ develop ]
|
|
paths:
|
|
- 'docs/**'
|
|
- 'docs_theme/**'
|
|
- 'mkdocs.yml'
|
|
- 'readthedocs.yml'
|
|
- '.github/workflows/docs.yaml'
|
|
|
|
jobs:
|
|
accessibility:
|
|
if: contains(toJson(github.event.commits), '[ci skip]') == false
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: 3.9
|
|
|
|
- name: Setup Node.js environment
|
|
uses: actions/setup-node@main
|
|
|
|
- name: poetry cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: .venv
|
|
key: ${{ runner.os }}-${{ hashFiles('poetry.lock') }}-${{ matrix.python-version }}
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install poetry
|
|
poetry config --local virtualenvs.in-project true
|
|
poetry install --no-root --remove-untracked
|
|
npm install pa11y pa11y-reporter-junit
|
|
|
|
- name: Start docs server
|
|
run: poetry run mkdocs serve &
|
|
|
|
- name: Accessibility testing (Pa11y)
|
|
env:
|
|
site_url: http://127.0.0.1:8000
|
|
exit_code: 0
|
|
run: |
|
|
set +e
|
|
|
|
poetry run mkdocs build
|
|
mkdir -p "reports"
|
|
|
|
printf -- 'scanning: /\n'
|
|
./node_modules/.bin/pa11y "$site_url" --reporter junit > "reports/root.xml" || exit_code=2
|
|
|
|
for file in $(poetry run xq '.urlset.url[].loc' site/sitemap.xml -r | sed -r 's!https://jrnl.sh/(.*?)/$!\1!'); do
|
|
printf -- 'scanning: /%s\n' "$file"
|
|
./node_modules/.bin/pa11y "$site_url/$file" --reporter junit > "reports/$file.xml" || exit_code=2
|
|
done
|
|
|
|
exit $exit_code
|
|
|
|
- name: Upload Unit Test Results
|
|
if: always()
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Unit Test Results (pa11y)
|
|
path: reports/*.xml
|
|
|
|
publish-test-results:
|
|
if: success() || failure()
|
|
name: "Publish Unit Tests Results"
|
|
needs: accessibility
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Download Artifacts
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
path: artifacts
|
|
|
|
- name: Publish Unit Test Results
|
|
uses: EnricoMi/publish-unit-test-result-action@v1.4
|
|
if: success() || failure()
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
check_name: Unit Test Results
|
|
hide_comments: all but latest
|
|
comment_on_pr: true
|
|
files: '**/*.xml'
|
|
report_individual_runs: true
|
|
deduplicate_classes_by_file_name: false
|
|
|