Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
permissions:
contents: read

on:
pull_request:
paths:
- 'packages/sqlalchemy-spanner/**'
- '.github/workflows/sqlalchemy-spanner-compliance-tests-against-emulator.yml'
push:
branches:
- main
paths:
- 'packages/sqlalchemy-spanner/**'
- '.github/workflows/sqlalchemy-spanner-compliance-tests-against-emulator.yml'

defaults:
run:
working-directory: packages/sqlalchemy-spanner

name: Run SQLAlchemy Spanner compliance tests against emulator
jobs:
check_changes:
runs-on: ubuntu-latest
outputs:
run_sqlalchemy_spanner: ${{ steps.filter.outputs.sqlalchemy_spanner }}
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
id: filter
with:
filters: |
sqlalchemy_spanner:
- 'packages/sqlalchemy-spanner/**'
- '.github/workflows/sqlalchemy-spanner-compliance-tests-against-emulator.yml'

compliance-tests:
needs: check_changes
if: ${{ needs.check_changes.outputs.run_sqlalchemy_spanner == 'true' }}
runs-on: ubuntu-latest

services:
emulator:
image: gcr.io/cloud-spanner-emulator/emulator:latest # zizmor: ignore[unpinned-images]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for this tip! I was already quite annoyed by the fact that I had to pin the Emulator version for some other repos....

ports:
- 9010:9010
- 9020:9020

steps:
- name: Checkout code
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- name: Set up Python 3.14
uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
with:
python-version: "3.14"
- name: Install nox
run: python -m pip install nox
- name: Run nox compliance_test_20
run: nox -s compliance_test_20
env:
SPANNER_EMULATOR_HOST: localhost:9010
GOOGLE_CLOUD_PROJECT: emulator-test-project
GOOGLE_CLOUD_TESTS_CREATE_SPANNER_INSTANCE: true
Loading