name: integrationci on: pull_request: types: - labeled pull_request_target: types: - labeled jobs: test: strategy: fail-fast: false matrix: src: - bootstrap - passwordauthn - callbackauthn - querier - ttl sqlstore-provider: - postgres - sqlite clickhouse-version: - 25.5.6 schema-migrator-version: - v0.129.7 postgres-version: - 15 if: | ((github.event_name == 'pull_request' && ! github.event.pull_request.head.repo.fork && github.event.pull_request.user.login != 'dependabot[bot]' && ! contains(github.event.pull_request.labels.*.name, 'safe-to-test')) || (github.event_name == 'pull_request_target' && contains(github.event.pull_request.labels.*.name, 'safe-to-test'))) && contains(github.event.pull_request.labels.*.name, 'safe-to-integrate') runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@v4 - name: python uses: actions/setup-python@v5 with: python-version: 3.13 - name: poetry run: | python -m pip install poetry==2.1.2 python -m poetry config virtualenvs.in-project true cd tests/integration && poetry install --no-root - name: webdriver run: | wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - echo "deb http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee -a /etc/apt/sources.list.d/google-chrome.list sudo apt-get update -qqy sudo apt-get -qqy install google-chrome-stable CHROME_VERSION=$(google-chrome-stable --version) CHROME_FULL_VERSION=${CHROME_VERSION%%.*} CHROME_MAJOR_VERSION=${CHROME_FULL_VERSION//[!0-9]} sudo rm /etc/apt/sources.list.d/google-chrome.list export CHROMEDRIVER_VERSION=`curl -s https://googlechromelabs.github.io/chrome-for-testing/LATEST_RELEASE_${CHROME_MAJOR_VERSION%%.*}` curl -L -O "https://storage.googleapis.com/chrome-for-testing-public/${CHROMEDRIVER_VERSION}/linux64/chromedriver-linux64.zip" unzip chromedriver-linux64.zip && chmod +x chromedriver && sudo mv chromedriver /usr/local/bin chromedriver -version - name: run run: | cd tests/integration && \ poetry run pytest \ --basetemp=./tmp/ \ src/${{matrix.src}} \ --sqlstore-provider ${{matrix.sqlstore-provider}} \ --postgres-version ${{matrix.postgres-version}} \ --clickhouse-version ${{matrix.clickhouse-version}} \ --schema-migrator-version ${{matrix.schema-migrator-version}}