|
22 | 22 | CACHED_BUILD_PATHS: | |
23 | 23 | ${{ github.workspace }}/dist-serverless |
24 | 24 | jobs: |
25 | | - test-dbs-latest: |
26 | | - name: DBs (latest) |
27 | | - timeout-minutes: 30 |
28 | | - runs-on: ${{ matrix.os }} |
29 | | - strategy: |
30 | | - fail-fast: false |
31 | | - matrix: |
32 | | - python-version: ["3.7","3.12","3.13"] |
33 | | - # python3.6 reached EOL and is no longer being supported on |
34 | | - # new versions of hosted runners on Github Actions |
35 | | - # ubuntu-20.04 is the last version that supported python3.6 |
36 | | - # see https://github.com/actions/setup-python/issues/544#issuecomment-1332535877 |
37 | | - os: [ubuntu-22.04] |
38 | | - services: |
39 | | - postgres: |
40 | | - image: postgres |
41 | | - env: |
42 | | - POSTGRES_PASSWORD: sentry |
43 | | - # Set health checks to wait until postgres has started |
44 | | - options: >- |
45 | | - --health-cmd pg_isready |
46 | | - --health-interval 10s |
47 | | - --health-timeout 5s |
48 | | - --health-retries 5 |
49 | | - # Maps tcp port 5432 on service container to the host |
50 | | - ports: |
51 | | - - 5432:5432 |
52 | | - env: |
53 | | - SENTRY_PYTHON_TEST_POSTGRES_HOST: ${{ matrix.python-version == '3.6' && 'postgres' || 'localhost' }} |
54 | | - SENTRY_PYTHON_TEST_POSTGRES_USER: postgres |
55 | | - SENTRY_PYTHON_TEST_POSTGRES_PASSWORD: sentry |
56 | | - # Use Docker container only for Python 3.6 |
57 | | - container: ${{ matrix.python-version == '3.6' && 'python:3.6' || null }} |
58 | | - steps: |
59 | | - |
60 | | - - uses: actions/setup-python@v6 |
61 | | - if: ${{ matrix.python-version != '3.6' }} |
62 | | - with: |
63 | | - python-version: ${{ matrix.python-version }} |
64 | | - allow-prereleases: true |
65 | | - - name: "Setup ClickHouse Server" |
66 | | - |
67 | | - - name: Setup Test Env |
68 | | - run: | |
69 | | - pip install "coverage[toml]" tox |
70 | | - - name: Erase coverage |
71 | | - run: | |
72 | | - coverage erase |
73 | | - - name: Test asyncpg latest |
74 | | - run: | |
75 | | - set -x # print commands that are executed |
76 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-asyncpg-latest" |
77 | | - - name: Test clickhouse_driver latest |
78 | | - run: | |
79 | | - set -x # print commands that are executed |
80 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-clickhouse_driver-latest" |
81 | | - - name: Test pymongo latest |
82 | | - run: | |
83 | | - set -x # print commands that are executed |
84 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-pymongo-latest" |
85 | | - - name: Test redis latest |
86 | | - run: | |
87 | | - set -x # print commands that are executed |
88 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-redis-latest" |
89 | | - - name: Test redis_py_cluster_legacy latest |
90 | | - run: | |
91 | | - set -x # print commands that are executed |
92 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-redis_py_cluster_legacy-latest" |
93 | | - - name: Test sqlalchemy latest |
94 | | - run: | |
95 | | - set -x # print commands that are executed |
96 | | - ./scripts/runtox.sh "py${{ matrix.python-version }}-sqlalchemy-latest" |
97 | | - - name: Generate coverage XML (Python 3.6) |
98 | | - if: ${{ !cancelled() && matrix.python-version == '3.6' }} |
99 | | - run: | |
100 | | - export COVERAGE_RCFILE=.coveragerc36 |
101 | | - coverage combine .coverage-sentry-* |
102 | | - coverage xml --ignore-errors |
103 | | - - name: Generate coverage XML |
104 | | - if: ${{ !cancelled() && matrix.python-version != '3.6' }} |
105 | | - run: | |
106 | | - coverage combine .coverage-sentry-* |
107 | | - coverage xml |
108 | | - - name: Upload coverage to Codecov |
109 | | - if: ${{ !cancelled() }} |
110 | | - |
111 | | - with: |
112 | | - token: ${{ secrets.CODECOV_TOKEN }} |
113 | | - files: coverage.xml |
114 | | - # make sure no plugins alter our coverage reports |
115 | | - plugins: noop |
116 | | - verbose: true |
117 | | - - name: Upload test results to Codecov |
118 | | - if: ${{ !cancelled() }} |
119 | | - uses: codecov/test-results-action@v1 |
120 | | - with: |
121 | | - token: ${{ secrets.CODECOV_TOKEN }} |
122 | | - files: .junitxml |
123 | | - verbose: true |
124 | 25 | test-dbs-pinned: |
125 | 26 | name: DBs (pinned) |
126 | 27 | timeout-minutes: 30 |
|
0 commit comments