Skip to content

Update pathspec requirement from ~=0.11.1 to ~=0.11.2 #63

Update pathspec requirement from ~=0.11.1 to ~=0.11.2

Update pathspec requirement from ~=0.11.1 to ~=0.11.2 #63

Workflow file for this run

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