Cleanup #739
Workflow file for this run
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: Main | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
env: | |
project-name: project_summarizer | |
default-python-version: 3.13 | |
default-pipenv-version: 2023.12.1 | |
jobs: | |
lint: | |
name: Project Quality Analysis | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup Python ${{ env.default-python-version }} | |
uses: actions/[email protected] | |
with: | |
python-version: ${{ env.default-python-version }} | |
- name: Install PipEnv | |
run: | | |
pip install pipenv==${{ env.default-pipenv-version }} | |
- name: Sync With Repository | |
run: | | |
pipenv lock --clear --python ${{ env.default-python-version }} | |
pipenv sync -d | |
pipenv graph | |
- name: Execute Pre-Commit | |
run: | | |
pipenv run pre-commit run --all | |
scenario-tests: | |
name: Scenario Tests | |
strategy: | |
fail-fast: false | |
matrix: | |
python: ["3.13"] | |
platform: [windows-latest, ubuntu-latest, macos-latest] | |
runs-on: ${{ matrix.platform }} | |
needs: [ lint ] | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup Python ${{ matrix.python }} | |
uses: actions/[email protected] | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install PipEnv | |
run: | | |
pip install pipenv==${{ env.default-pipenv-version }} | |
- name: Sync With Repository | |
run: | | |
pipenv lock --clear --python ${{ env.default-python-version }} | |
pipenv sync -d | |
pipenv graph | |
pipenv uninstall pytest-html | |
- name: Execute Tests | |
run: ./ptest.sh --coverage --full-report -nh | |
- name: Archive coverage artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.platform }} Coverage | |
path: | | |
./report/coverage.xml | |
- name: Report Coverage | |
uses: codecov/codecov-action@v4 | |
if: github.event_name != 'schedule' | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
with: | |
file: ./report/coverage.xml | |
name: ${{ matrix.python }} - ${{ matrix.platform }} | |
fail_ci_if_error: true | |
packaging: | |
name: Package Application | |
runs-on: ubuntu-latest | |
needs: [ scenario-tests ] | |
# if: github.ref == 'refs/heads/main' && github.event_name == 'push' | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup Python ${{ matrix.python }} | |
uses: actions/[email protected] | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install PipEnv | |
run: | | |
pip install pipenv==${{ env.default-pipenv-version }} | |
- name: Sync With Repository | |
run: | | |
pipenv lock --clear --python ${{ env.default-python-version }} | |
pipenv sync -d | |
pipenv graph | |
pipenv uninstall pytest-html | |
- name: Build package | |
run: | | |
./package-release.sh | |
- name: Upload Package | |
uses: actions/upload-artifact@v4 | |
with: | |
name: python-package-dist | |
path: ${{github.workspace}}/dist/ | |