docs: fix background color in tests #58
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
branches: [master] | |
jobs: | |
build: | |
name: Build (python-${{ matrix.python-version }}, ${{ matrix.os }}) | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 30 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
#- macos-11 | |
#- macos-12 | |
- macos-latest | |
#- ubuntu-20.04 | |
#- ubuntu-22.04 | |
- ubuntu-latest | |
#- windows-2019 | |
#- windows-2022 | |
- windows-latest | |
python-version: ["3.10", "3.11"] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: "pip" | |
- name: Install dependencies | |
run: | | |
pip install -r requirements.txt | |
pip install -r requirements_dev.txt | |
- name: Build package | |
run: python -m build | |
- name: Store package | |
uses: actions/upload-artifact@v3 | |
with: | |
name: palgen_${{ github.sha }}_${{ matrix.os }}_py${{ matrix.python-version }} | |
path: dist/* | |
test: | |
name: Test (python-${{ matrix.python-version }}, ${{ matrix.os }}) | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
#- macos-11 | |
#- macos-12 | |
- macos-latest | |
#- ubuntu-20.04 | |
#- ubuntu-22.04 | |
- ubuntu-latest | |
#- windows-2019 | |
#- windows-2022 | |
- windows-latest | |
python-version: ["3.10", "3.11"] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: "pip" | |
- name: Install tox | |
run: pip install tox tox-gh-actions | |
#- name: Download Artifacts | |
# uses: actions/download-artifact@v3 | |
# with: | |
# name: palgen_${{ github.sha }}_${{ matrix.os }}_py${{ matrix.python-version }} | |
# path: dist | |
#- name: Install package | |
# run: pip install --no-index --find-links=dist palgen | |
# run: pip install -e . | |
- name: Run tox | |
run: tox --result-json build/test/${{ matrix.os }}-py${{ matrix.python-version }}.json | |
env: | |
PLATFORM: ${{ matrix.os }} | |
- name: Upload test results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
#name: Test Results (Python ${{ matrix.python-version }}, ${{ matrix.os }}) | |
name: test | |
path: build/test | |
publish-test-results: | |
name: Publish test results | |
needs: test | |
runs-on: ubuntu-latest | |
permissions: | |
checks: write | |
pull-requests: write | |
contents: read | |
issues: read | |
if: always() | |
steps: | |
- name: Download artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: test | |
path: build/test | |
- name: Publish test results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
with: | |
files: "build/test/*.xml" | |
lint: | |
name: Lint | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.11 | |
cache: "pip" | |
- name: Install tox | |
run: pip install tox tox-gh-actions | |
- name: Make output directory | |
run: mkdir -p build/lint | |
- name: Lint with pylint | |
continue-on-error: true | |
run: | | |
tox -e lint | |
- name: Run mypy | |
continue-on-error: true | |
run: | | |
tox -e type | |
- name: Upload linting results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: lint | |
path: build/lint | |
build-docs: | |
name: Build documentation | |
needs: [build, test, lint] | |
runs-on: ubuntu-latest | |
if: always() && github.ref == 'refs/heads/master' && github.event_name != 'pull_request' | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Install system dependencies | |
run: sudo apt install -y graphviz | |
- name: Download artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
path: build | |
- name: Run palgen | |
uses: palliate/palgen@master | |
with: | |
requirements: docs/requirements.txt | |
- name: Temporary, print directory | |
run: | | |
pwd | |
ls -R . | |
- name: Upload html render | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: docs | |
path: build/html | |
deploy-docs: | |
name: Deploy documentation to GitHub Pages | |
needs: build-docs | |
runs-on: ubuntu-latest | |
if: always() && github.ref == 'refs/heads/master' && github.event_name != 'pull_request' | |
permissions: | |
pages: write | |
id-token: write | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Download artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
path: build | |
- name: Setup Pages | |
uses: actions/configure-pages@v3 | |
- name: Upload artifact | |
uses: actions/upload-pages-artifact@v2 | |
with: | |
path: build/docs | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v2 |