Skip to content

Add manual trigger to GitHub Action #470

Add manual trigger to GitHub Action

Add manual trigger to GitHub Action #470

Workflow file for this run

name: "CI"
on:
push:
branches:
- main
pull_request:
release:
types:
- published
schedule:
- cron: '0 12 * * 6'
workflow_dispatch:
jobs:
flake8:
name: flake8
runs-on: 'ubuntu-latest'
defaults:
run:
shell: bash -el {0}
steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: flake8
auto-update-conda: true
miniforge-variant: Mambaforge
- name: Install dependencies
run: mamba install --yes --quiet flake8
- name: Execute flake8
run: flake8 . --max-line-length=99
pycharm-security:
runs-on: ubuntu-latest
name: pycharm-security
steps:
- uses: actions/checkout@v2
- name: Run PyCharm Security
uses: tonybaloney/pycharm-security@master
pytest:
needs: [flake8, pycharm-security]
name: pytest (Python ${{ matrix.python-version }}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -el {0}
strategy:
fail-fast: false
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
python-version: ['3.8', '3.9', '3.10', '3.11']
steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
auto-update-conda: true
miniforge-variant: Mambaforge
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: mamba install --yes --quiet --file requirements.txt --file requirements_test.txt "python=${{ matrix.python-version }}.*=*_cpython" "pandoc=2"
- name: Execute pytest
run: pytest .
- uses: codecov/codecov-action@v1
pytest-pandoc-versions:
needs: [flake8, pycharm-security]
name: pytest (Pandoc ${{ matrix.pandoc-version }})
runs-on: 'ubuntu-latest'
defaults:
run:
shell: bash -el {0}
strategy:
fail-fast: false
matrix:
pandoc-version: ['2.11', '2.12', '2.13', '2.14', '2.15', '2.16', '2.17', '2.18', '2.19']
steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
auto-update-conda: true
miniforge-variant: Mambaforge
- name: Install dependencies
run: mamba install --yes --quiet --file requirements.txt --file requirements_test.txt pandoc=${{ matrix.pandoc-version }}
- name: Execute pytest
run: pytest .
conda-build:
needs: [pytest, pytest-pandoc-versions]
name: conda-build (${{ matrix.os }})
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -el {0}
strategy:
fail-fast: false
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Fetch history for all branches and tags
run: git fetch --prune
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
miniforge-variant: Mambaforge
- name: Install conda-build
run: mamba install --yes --quiet conda-build boa
- name: Execute conda-build
run: conda mambabuild --output-folder conda-bld conda.recipe
- uses: actions/upload-artifact@v2
with:
name: python-${{ matrix.os }}
path: conda-bld/*/*.tar.bz2
pypi-packages:
needs: [pytest, pytest-pandoc-versions]
name: pypi-packages
runs-on: 'ubuntu-latest'
defaults:
run:
shell: bash -el {0}
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Fetch history for all branches and tags
run: git fetch --prune
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
miniforge-variant: Mambaforge
- name: Install setuptools setuptools-scm and wheel
run: mamba install --yes --quiet build setuptools setuptools-scm wheel
- name: Build source-distribution and wheel
run: python -m build
- uses: actions/upload-artifact@v2
with:
name: pypi-packages
path: dist/*