Skip to content

Commit

Permalink
Change: Use generic reusable workflows
Browse files Browse the repository at this point in the history
Use our new generic reusable workflows where possible.
  • Loading branch information
bjoernricks committed May 17, 2023
1 parent 7a91599 commit 0592dd4
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 86 deletions.
78 changes: 23 additions & 55 deletions .github/workflows/ci-python.yml
Original file line number Diff line number Diff line change
@@ -1,75 +1,43 @@
name: Build and test Python package
name: Check and test Python project

on:
push:
branches: [ main ]
branches:
- main
pull_request:
branches: [ main ]

jobs:
linting:
name: Linting
runs-on: 'ubuntu-latest'
lint-and-test:
strategy:
matrix:
python-version:
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: greenbone/actions/lint-python@v2
with:
packages: autohooks tests
python-version: ${{ matrix.python-version }}
type-checking:
name: Type-checker
runs-on: 'ubuntu-latest'
strategy:
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: greenbone/actions/mypy-python@v2
with:
packages: autohooks
python-version: ${{ matrix.python-version }}
test:
name: Run all tests
runs-on: 'ubuntu-latest'
strategy:
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
steps:
- uses: actions/checkout@v3
- name: Install poetry and dependencies
uses: greenbone/actions/poetry@v2
with:
python-version: ${{ matrix.python-version }}
- name: Run unit tests
run: poetry run python -m unittest

name: Check and test
uses: greenbone/workflows/.github/workflows/ci-python.yml@main
with:
lint-packages: autohooks tests
python-version: ${{ matrix.python-version }}


codecov:
name: Upload coverage to codecov.io
needs: test
runs-on: 'ubuntu-latest'
# run action directly because GitHub has an internal error when using our
# generic reusable workflow
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@v3
- name: Calculate and upload coverage to codecov.io
- name: Install and calculate and upload coverage to codecov.io
uses: greenbone/actions/coverage-python@v2
with:
python-version: "3.10"
cache: "true"
token: ${{ secrets.CODECOV_TOKEN }}

versioning:
name: Check versioning
uses: greenbone/workflows/.github/workflows/check-version.yml@main
8 changes: 2 additions & 6 deletions .github/workflows/deploy-pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,5 @@ on:

jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Build and publish to PyPI
uses: greenbone/actions/pypi-upload@v2
with:
pypi-token: ${{ secrets.PYPI_TOKEN }}
uses: greenbone/workflows/.github/workflows/deploy-pypi.yml@main
secrets: inherit
29 changes: 4 additions & 25 deletions .github/workflows/release-pontos.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Release Python package with pontos
name: Release Python package

on:
pull_request:
Expand All @@ -7,27 +7,6 @@ on:

jobs:
build-and-release:
name: Create a new release with pontos
# If the event is a workflow_dispatch or the label 'make release' is set and PR is closed because of a merge
if: (github.event_name == 'workflow_dispatch') || (contains( github.event.pull_request.labels.*.name, 'make release') && github.event.pull_request.merged == true)
runs-on: "ubuntu-latest"
steps:
- name: Setting the Reference
run: |
if [[ "${{ github.event_name }}" = "workflow_dispatch" ]]; then
echo "RELEASE_REF=${{ github.ref_name }}" >> $GITHUB_ENV
else
echo "RELEASE_REF=${{ github.base_ref }}" >> $GITHUB_ENV
fi
- name: Release with release action
uses: greenbone/actions/release@v2
with:
conventional-commits: true
github-user: ${{ secrets.GREENBONE_BOT }}
github-user-mail: ${{ secrets.GREENBONE_BOT_MAIL }}
github-user-token: ${{ secrets.GREENBONE_BOT_TOKEN }}
gpg-key: ${{ secrets.GPG_KEY }}
gpg-fingerprint: ${{ secrets.GPG_FINGERPRINT }}
gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }}
strategy: calendar
ref: ${{ env.RELEASE_REF }}
name: Create a new release
uses: greenbone/workflows/.github/workflows/release-python.yml@main
secrets: inherit
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -81,4 +81,5 @@ pre-commit = ['autohooks.plugins.black', 'autohooks.plugins.isort', 'autohooks.p
version-module-file = "autohooks/plugins/pylint/__version__.py"

[tool.mypy]
files = "autohooks"
ignore_missing_imports = true

0 comments on commit 0592dd4

Please sign in to comment.