Skip to content

Merge pull request #19 from Renumics/dependabot/pip/werkzeug-3.0.6 #97

Merge pull request #19 from Renumics/dependabot/pip/werkzeug-3.0.6

Merge pull request #19 from Renumics/dependabot/pip/werkzeug-3.0.6 #97

Workflow file for this run

name: mesh2vev
on: [push]
permissions:
contents: write
jobs:
prepare-linux:
strategy:
matrix:
python-version: ["3.8", "3.11"]
os-version: ["ubuntu-latest" ]
runs-on: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: ${{ matrix.os-version }}
python-version: ${{ matrix.python-version }}
prepare-win:
strategy:
matrix:
python-version: [ "3.8", "3.11" ]
os-version: [ "windows-latest" ]
runs-on: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: ${{ matrix.os-version }}
python-version: ${{ matrix.python-version }}
check-format:
needs: prepare-linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: check
run: |
poetry run black --check mesh2vec tests scripts docs docs/examples scripts
pylint:
needs: prepare-linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: check
run: |
poetry run pylint mesh2vec tests docs/examples scripts
audit:
needs: [prepare-linux, prepare-win]
strategy:
matrix:
python-version: ["3.8", "3.11"]
os-version: ["windows-latest", "ubuntu-latest"]
runs-on: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: ${{ matrix.os-version }}
python-version: ${{ matrix.python-version }}
- name: check
run: |
poetry run pip-audit --ignore-vuln GHSA-w596-4wvx-j9j6
doctest:
needs: [prepare-linux, prepare-win]
strategy:
matrix:
python-version: ["3.8", "3.11"]
os-version: [ "windows-latest", "ubuntu-latest" ]
runs-on: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: ${{ matrix.os-version }}
python-version: ${{ matrix.python-version }}
- name: test
run: |
poetry run sphinx-build docs/source build/documentation/ -W -b html && poetry run sphinx-build docs/source build/documentation/ -W -b doctest
unit-tests:
needs: [prepare-linux, prepare-win]
strategy:
matrix:
python-version: ["3.8", "3.11"]
os-version: [ "windows-latest", "ubuntu-latest" ]
runs-on: ${{ matrix.os-version }}
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: ${{ matrix.os-version }}
python-version: ${{ matrix.python-version }}
- name: test
run: |
poetry run pytest tests
docs:
needs: prepare-linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: build docs
run: |
poetry run sphinx-build docs/source build/documentation/ -W -b html
- name: Store docs
uses: actions/upload-artifact@v3
with:
name: docs
path: build/documentation/
build:
needs: prepare-linux
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: build wheels
run: |
poetry build -f wheel -vvv && poetry run check-wheel-contents dist/
- name: Store wheels
uses: actions/upload-artifact@v3
with:
name: dist
path: dist/
release-docs:
if: startsWith(github.ref, 'refs/tags/v')
needs: [ check-format, build, unit-tests, doctest, docs, audit, pylint ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: Download docs
uses: actions/download-artifact@v3
with:
name: docs
path: build/documentation/
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build/documentation/
release:
if: startsWith(github.ref, 'refs/tags/v')
needs: [check-format, build, unit-tests, doctest, docs, audit, pylint]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup CI
uses: './.github/actions/ci-setup'
with:
os: "ubuntu-latest"
python-version: "3.9"
- name: Download wheels
uses: actions/download-artifact@v3
with:
name: dist
path: dist/
- name: Publish package to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}