47 lines
1.1 KiB
YAML
47 lines
1.1 KiB
YAML
name: CI
|
|
|
|
on: [pull_request, push]
|
|
|
|
permissions: {}
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: ${{ github.head_ref != '' }}
|
|
|
|
jobs:
|
|
ci:
|
|
name: Check
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12-dev']
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: Install tools
|
|
run: pip install pycodestyle pyflakes
|
|
|
|
- name: Lint code
|
|
run: pyflakes nova3/engines/*.py
|
|
|
|
- name: Format code
|
|
run: |
|
|
# skipping E265, fixing it will break plugin usage on older qbt instances (< v4.1.2)
|
|
pycodestyle \
|
|
--ignore=E265,W503 \
|
|
--max-line-length=100 \
|
|
--statistics \
|
|
nova3/engines/*.py
|
|
|
|
- name: Build code
|
|
run: |
|
|
python -m compileall nova3/engines/*.py
|