Skip to content

Use Poetry to build project #32

Use Poetry to build project

Use Poetry to build project #32

Workflow file for this run

name: Build
on:
push:
branches:
- main
pull_request:
jobs:
build:
name: Build
strategy:
matrix:
python-version: [ "3.9", "3.10", "3.11", "3.12" ]
poetry-version: [ "1.7.1", "1.8.3" ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Run image
uses: abatilo/actions-poetry@v3
with:
poetry-version: ${{ matrix.poetry-version }}
- name: Setup environment
run: poetry install
- name: Run Tests
run: |
poetry run pytest --cov blitzortung --cov-report xml --cov-report term --junitxml=junit.xml tests
- name: Build
run: |
poetry build
- uses: sonarsource/sonarqube-scan-action@v3
if: matrix.python-version == '3.10' && matrix.poetry-version == '1.7.1'
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}
# If you wish to fail your job when the Quality Gate is red, uncomment the
# following lines. This would typically be used to fail a deployment.
# - uses: sonarsource/sonarqube-quality-gate-action@master
# timeout-minutes: 5
# env:
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}