Rc/6.1.0 #770
Workflow file for this run
This file contains hidden or 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
| # This workflow will install Python dependencies, run tests and lint with a variety of Python versions | |
| # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python | |
| name: Integration tests | |
| # Note: This workflow runs on both internal PRs (secrets available) and external PRs from forks (secrets not available) | |
| # Aura tests will automatically skip when secrets are not available, which is expected behavior for external PRs | |
| on: | |
| pull_request: | |
| branches: [ "master", "rc/**" ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.14", "3.13", "3.12", "3.11", "3.10"] | |
| neo4j-version: ["community", "enterprise", "5.5-enterprise", "4.4-enterprise", "4.4-community"] | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: 'pip' | |
| - name: Creating Neo4j Container | |
| run: | | |
| chmod +x ./docker-scripts/docker-neo4j.sh | |
| sh ./docker-scripts/docker-neo4j.sh ${{ matrix.neo4j-version }} | |
| sleep 30s | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -e '.[dev,extras]' | |
| - name: Test with pytest | |
| env: | |
| # Aura test credentials - only available for internal PRs | |
| # External PRs from forks will have these as empty strings, causing Aura tests to skip | |
| AURA_TEST_DB_USER: ${{ secrets.AURA_TEST_DB_USER || '' }} | |
| AURA_TEST_DB_PASSWORD: ${{ secrets.AURA_TEST_DB_PASSWORD || '' }} | |
| AURA_TEST_DB_HOSTNAME: ${{ secrets.AURA_TEST_DB_HOSTNAME || '' }} | |
| run: | | |
| pytest --cov=neomodel --cov-report=html:coverage_report | |
| - name: Install neo4j-rust-ext and verify it is installed | |
| run: | | |
| pip install -e '.[rust-driver-ext]' | |
| pip list | grep neo4j-rust-ext || exit 1 | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v3 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} # Ensure the token is used here | |
| fail_ci_if_error: false # Optional: specify if CI should fail when codecov fails |