1+ on :
2+ pull_request :
3+ paths :
4+ - ' packages/google-cloud-bigtable/**'
5+ - ' .github/workflows/bigtable-conformance.yaml'
6+ push :
7+ branches :
8+ - main
9+ paths :
10+ - ' packages/google-cloud-bigtable/**'
11+ - ' .github/workflows/bigtable-conformance.yaml'
12+
13+ defaults :
14+ run :
15+ working-directory : packages/google-cloud-bigtable
16+
17+ name : Conformance
18+ jobs :
19+ check_changes :
20+ runs-on : ubuntu-latest
21+ outputs :
22+ run_bigtable : ${{ steps.filter.outputs.bigtable }}
23+ steps :
24+ - uses : actions/checkout@v4
25+ - uses : dorny/paths-filter@v3
26+ id : filter
27+ with :
28+ filters : |
29+ bigtable:
30+ - 'packages/google-cloud-bigtable/**'
31+ - '.github/workflows/bigtable-conformance.yaml'
32+
33+ system-tests :
34+ needs : check_changes
35+ if : ${{ needs.check_changes.outputs.run_bigtable == 'true' }}
36+ runs-on : ubuntu-latest
37+
38+ strategy :
39+ matrix :
40+ test-version : [ "v0.0.4" ]
41+ py-version : [ 3.13 ]
42+ client-type : [ "async", "sync"]
43+ # None of the clients currently support reverse scans, execute query plan refresh, retry info, or routing cookie
44+ include :
45+ - client-type : " async"
46+ test_args : " -skip \" PlanRefresh|_Reverse|_WithRetryInfo|_WithRoutingCookie\" "
47+ - client-type : " sync"
48+ test_args : " -skip \" PlanRefresh|_Reverse|_WithRetryInfo|_WithRoutingCookie|_Generic_MultiStream\" "
49+ fail-fast : false
50+ name : " ${{ matrix.client-type }} client / python ${{ matrix.py-version }} / test tag ${{ matrix.test-version }}"
51+ steps :
52+ - uses : actions/checkout@v4
53+ name : " Checkout python-bigtable"
54+ - uses : actions/checkout@v4
55+ name : " Checkout conformance tests"
56+ with :
57+ repository : googleapis/cloud-bigtable-clients-test
58+ ref : ${{ matrix.test-version }}
59+ path : cloud-bigtable-clients-test
60+ - uses : actions/setup-python@v5
61+ with :
62+ python-version : ${{ matrix.py-version }}
63+ - uses : actions/setup-go@v5
64+ with :
65+ go-version : ' >=1.20.2'
66+ - run : chmod +x .kokoro/conformance.sh
67+ - run : pip install -e .
68+ name : " Install python-bigtable from HEAD"
69+ - run : go version
70+ - run : .kokoro/conformance.sh
71+ name : " Run tests"
72+ env :
73+ CLIENT_TYPE : ${{ matrix.client-type }}
74+ PYTHONUNBUFFERED : 1
75+ TEST_ARGS : ${{ matrix.test_args }}
76+ PROXY_PORT : 9999
0 commit comments