Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #81
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: Build | |
on: | |
pull_request: | |
push: | |
branches: | |
- "main" | |
tags: | |
- "v*" | |
jobs: | |
black: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Black Check | |
uses: jpetrucciani/black-check@20.8b1 | |
mypy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: "3.9" | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry install | |
- run: poetry run mypy --py2 sysaudit/ tests/ | |
name: Mypy Check Python2 | |
- run: poetry run mypy sysaudit/ tests/ | |
name: Mypy Check Python3 | |
bandit: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: "3.9" | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry install | |
- run: poetry run bandit -r sysaudit/ | |
name: Bandit check | |
vulture: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: "3.9" | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry install | |
- run: poetry run vulture sysaudit/ tests/ | |
name: Vulture check | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9"] | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry check | |
- run: poetry install | |
- run: poetry run pytest tests/ | |
docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: "3.9" | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry install | |
- run: poetry run sphinx-build -a -W -n -E docs/ docs/_build | |
- uses: actions/upload-artifact@v2 | |
with: | |
name: docs | |
path: ./docs/_build/ | |
build_wheels: | |
name: Build wheels on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macOS-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
- name: Install cibuildwheel | |
run: python -m pip install cibuildwheel~=1.9.0 | |
- name: Build wheels | |
run: python -m cibuildwheel --output-dir wheelhouse | |
- uses: actions/upload-artifact@v2 | |
with: | |
name: wheelhouse | |
path: ./wheelhouse/*.whl | |
build_sdist: | |
name: Build sdist | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: 3.9 | |
- run: pip install "poetry~=1.1.4" | |
- run: poetry config experimental.new-installer false | |
name: Disable new installer | |
- run: poetry check | |
- run: poetry install | |
- run: poetry build --format sdist | |
- uses: actions/upload-artifact@v2 | |
with: | |
name: wheelhouse | |
path: ./dist/*.tar.gz | |
test_install: | |
name: Test install on ${{ matrix.os }} / ${{ matrix.python-version }} | |
needs: [black, mypy, bandit, vulture, docs, test, build_wheels, build_sdist] | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macOS-latest] | |
python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "pypy-2.7", "pypy-3.6", "pypy-3.7"] | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- uses: actions/download-artifact@v4.1.7 | |
with: | |
name: wheelhouse | |
path: dist | |
- run: pip install --no-index --find-links=./dist sysaudit | |
name: Install sysaudit from wheels | |
- run: python -c "import sysaudit; sysaudit.audit('event')" | |
name: Check module is importable | |
upload_pypi: | |
needs: [test_install] | |
runs-on: ubuntu-latest | |
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') | |
steps: | |
- uses: actions/download-artifact@v4.1.7 | |
with: | |
name: wheelhouse | |
path: dist | |
- uses: pypa/gh-action-pypi-publish@master | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_TOKEN }} | |
# To test: repository_url: https://test.pypi.org/legacy/ |