Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
151 changes: 0 additions & 151 deletions .github/workflows/main.yml

This file was deleted.

24 changes: 24 additions & 0 deletions .github/workflows/spellcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Spellcheck

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

workflow_dispatch:

env:
BUILD_VIDEOS: true

jobs:
spellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: codespell-project/actions-codespell@v2
name: Check spelling
with:
skip: "*.pdf,*.svg,*.js,*.map,*.css,*.scss,docs/_data/201[5|6|7]*,docs/_static_html/*"
ignore_words_file: "codespell/ignore.txt"
path: docs
63 changes: 63 additions & 0 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Ubuntu Build

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

workflow_dispatch:

env:
BUILD_VIDEOS: true
NOKOGIRI_USE_SYSTEM_LIBRARIES: true # for faster htmlproofer install


jobs:
sphinx-ubuntu:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8

- name: Cache python env
uses: actions/cache@v4
with:
path: ${{ env.pythonLocation }}
key: v2-${{ env.pythonLocation }}-${{ hashFiles('requirements.txt') }}

- name: Install html-proofer
run: sudo gem install html-proofer -v '<4.4'

- name: Install dependencies
run: |
python -m pip install --upgrade pip wheel
pip install -r requirements.txt

- name: Build
uses: rickstaa/sphinx-action@master
with:
docs-folder: "./docs"
build-command: "sphinx-build -q -W -b dirhtml -d _build/doctrees . _build/html"

# Upload performance is awful on the many small files our build generates,
# so it's compressed locally before uploading
# we archive the html and set it as an artifact prior to checking the links.
# this allows for review should it fail.
- name: Compress site
run: tar -czf html.tar.gz docs/_build/html

- name: Archive site HTML
uses: actions/upload-artifact@v4
with:
name: html
path: html.tar.gz

- name: Check links
if: success()
run: |
htmlproofer --ignore-files "/404/,/2013/,/2014/,/2015/,/2016/,/2017/,/search\/index.html/" --allow-hash-href=true --enforce-https=false --ignore-missing-alt=true --disable-external=true docs/_build/html
62 changes: 62 additions & 0 deletions .github/workflows/vale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Vale

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

workflow_dispatch:

env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
BUILD_VIDEOS: true


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

- name: Linter
uses: errata-ai/vale-action@reviewdog
env:
# Required, set by GitHub actions automatically:
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
with:
files: docs/
vale_flags: "--config=vale/vale.ini"
reporter: github-pr-check
fail_on_error: true
filter_mode: file
version: 3.4.2

- name: Guide Linter
uses: errata-ai/vale-action@reviewdog
env:
# Required, set by GitHub actions automatically:
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
with:
files: docs/guide/
vale_flags: "--config=vale/guide.ini"
reporter: github-pr-check
fail_on_error: true
filter_mode: file
version: 3.4.2

- name: Conf news Linter
uses: errata-ai/vale-action@reviewdog
env:
# Required, set by GitHub actions automatically:
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
with:
files: docs
vale_flags: "--config=vale/news.ini --glob=docs/conf/**/news/*"
reporter: github-pr-check
fail_on_error: true
filter_mode: file
version: 3.4.2
31 changes: 31 additions & 0 deletions .github/workflows/validate_yaml.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Validate YAML

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

workflow_dispatch:

env:
BUILD_VIDEOS: true

jobs:
validate-yaml:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -U yamale ruamel.yaml

- name: Validate YAML
run: docs/_scripts/validate-yaml.sh
40 changes: 40 additions & 0 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Windows Build

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

workflow_dispatch:

env:
BUILD_VIDEOS: true


jobs:
sphinx-windows:
runs-on: windows-latest

steps:
- uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8

- name: Cache python env
uses: actions/cache@v4
with:
path: ${{ env.pythonLocation }}
key: v2-${{ env.pythonLocation }}-${{ hashFiles('requirements.txt') }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip wheel
pip install -r requirements.txt

- name: Build
shell: cmd
working-directory: ./docs
run: make.bat html