+ check-secrets:
+ runs-on: ubuntu-latest
+ outputs:
+ sonar-token-exists: ${{ steps.sonar-token.outputs.defined }}
+ steps:
+ - name: Check for SonarCloud Token Availability
+ id: sonar-token
+ shell: bash
+ run: |
+ if [ "${{ secrets.SONAR_TOKEN }}" != '' ]; then
+ echo "defined=true" >> $GITHUB_OUTPUT;
+ else
+ echo "defined=false" >> $GITHUB_OUTPUT;
+ fi
+ build-ocpp-server:
+ strategy:
+ matrix:
+ python:
+ - 3.12
+ name: Build OCPP mock server with Python ${{ matrix.python }}
+ runs-on: ubuntu-latest
+ defaults:
+ run:
+ working-directory: tests/ocpp-server
+ steps:
+ - uses: actions/checkout@v4
+ - name: Install Poetry
+ run: pipx install poetry
+ - name: Setup Python ${{ matrix.python }}
+ uses: actions/setup-python@v5
+ with:
+ python-version: ${{ matrix.python }}
+ cache: poetry
+ - name: Install Dependencies
+ run: poetry install --no-root
+ - name: Lint
+ run: poetry run task lint
+ build-simulator:
+ needs: [check-secrets]