diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml index 0b32994..0333557 100644 --- a/.github/workflows/python-app.yml +++ b/.github/workflows/python-app.yml @@ -1,6 +1,3 @@ -# This workflow will install Python dependencies, run tests and lint with a single version of Python -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python - name: Python application on: @@ -14,32 +11,39 @@ permissions: jobs: build: - runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - - uses: actions/checkout@v4 - - name: Set up Python 3.11 + - name: Check out code + uses: actions/checkout@v4 + + - name: Set up Python uses: actions/setup-python@v3 with: - python-version: "3.11" + python-version: ${{ matrix.python-version }} + - name: Set up Java uses: actions/setup-java@v3 with: distribution: 'temurin' java-version: '21' # PlantUML requires Java; set up a compatible Java version. - - name: Download latest PlantUML release run: | # Fetch the latest PlantUML release URL from GitHub API curl -L -o plantuml.jar https://github.com/plantuml/plantuml/releases/download/v1.2024.7/plantuml-mit-1.2024.7.jar + - name: Create .env file for PlantUML run: | echo "PLANTUML_JAR=plantuml.jar" > .env + - name: Install dependencies run: | python -m pip install uv==0.4.9 + - name: Test with pytest run: | uv run pytest