1+ # Copyright 2025 Google LLC
2+ #
3+ # Licensed under the Apache License, Version 2.0 (the "License");
4+ # you may not use this file except in compliance with the License.
5+ # You may obtain a copy of the License at
6+ #
7+ # http://www.apache.org/licenses/LICENSE-2.0
8+ #
9+ # Unless required by applicable law or agreed to in writing, software
10+ # distributed under the License is distributed on an "AS IS" BASIS,
11+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+ # See the License for the specific language governing permissions and
13+ # limitations under the License.
14+
15+ steps :
16+ - id : enable-fuse-config
17+ name : ' gcr.io/cloud-builders/docker'
18+ entrypoint : sudo
19+ args :
20+ - ' -c'
21+ - |
22+ sed -i 's/#user_allow_other/user_allow_other/g' /etc/fuse.conf
23+
24+ - id : run mysql integration tests
25+ name : golang:${_VERSION}
26+ env :
27+ - " IP_TYPE=${_IP_TYPE}"
28+ - " GOOGLE_CLOUD_PROJECT=${PROJECT_ID}"
29+ secretEnv : ['MYSQL_CONNECTION_NAME','MYSQL_USER','MYSQL_PASS','MYSQL_DB','POSTGRES_CONNECTION_NAME','POSTGRES_USER','POSTGRES_USER_IAM','POSTGRES_PASS','POSTGRES_DB','POSTGRES_CAS_CONNECTION_NAME','POSTGRES_CAS_PASS','POSTGRES_CUSTOMER_CAS_CONNECTION_NAME','POSTGRES_CUSTOMER_CAS_PASS','POSTGRES_CUSTOMER_CAS_DOMAIN_NAME','SQLSERVER_CONNECTION_NAME','SQLSERVER_USER','SQLSERVER_PASS','SQLSERVER_DB']
30+ entrypoint : bash
31+ args :
32+ - -c
33+ - |
34+ go test -race -v ./...
35+ substitutions :
36+ _VERSION : ${_VERSION}
37+ _IP_TYPE : ${_IP_TYPE}
38+ availableSecrets :
39+ secretManager :
40+ - versionName : ' projects/$PROJECT_ID/secrets/MYSQL_CONNECTION_NAME/versions/latest'
41+ env : ' MYSQL_CONNECTION_NAME'
42+ - versionName : ' projects/$PROJECT_ID/secrets/MYSQL_USER/versions/latest'
43+ env : ' MYSQL_USER'
44+ - versionName : ' projects/$PROJECT_ID/secrets/MYSQL_PASS/versions/latest'
45+ env : ' MYSQL_PASS'
46+ - versionName : ' projects/$PROJECT_ID/secrets/MYSQL_DB/versions/latest'
47+ env : ' MYSQL_DB'
48+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CONNECTION_NAME/versions/latest'
49+ env : ' POSTGRES_CONNECTION_NAME'
50+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_USER/versions/latest'
51+ env : ' POSTGRES_USER'
52+ - versionName : ' projects/$PROJECT_ID/secrets/CLOUD_BUILD_POSTGRES_IAM_USER/versions/latest'
53+ env : ' POSTGRES_USER_IAM'
54+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_PASS/versions/latest'
55+ env : ' POSTGRES_PASS'
56+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_DB/versions/latest'
57+ env : ' POSTGRES_DB'
58+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CAS_CONNECTION_NAME/versions/latest'
59+ env : ' POSTGRES_CAS_CONNECTION_NAME'
60+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CAS_PASS/versions/latest'
61+ env : ' POSTGRES_CAS_PASS'
62+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CUSTOMER_CAS_CONNECTION_NAME/versions/latest'
63+ env : ' POSTGRES_CUSTOMER_CAS_CONNECTION_NAME'
64+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CUSTOMER_CAS_PASS/versions/latest'
65+ env : ' POSTGRES_CUSTOMER_CAS_PASS'
66+ - versionName : ' projects/$PROJECT_ID/secrets/POSTGRES_CUSTOMER_CAS_DOMAIN_NAME/versions/latest'
67+ env : ' POSTGRES_CUSTOMER_CAS_DOMAIN_NAME'
68+ - versionName : ' projects/$PROJECT_ID/secrets/SQLSERVER_CONNECTION_NAME/versions/latest'
69+ env : ' SQLSERVER_CONNECTION_NAME'
70+ - versionName : ' projects/$PROJECT_ID/secrets/SQLSERVER_USER/versions/latest'
71+ env : ' SQLSERVER_USER'
72+ - versionName : ' projects/$PROJECT_ID/secrets/SQLSERVER_PASS/versions/latest'
73+ env : ' SQLSERVER_PASS'
74+ - versionName : ' projects/$PROJECT_ID/secrets/SQLSERVER_DB/versions/latest'
75+ env : ' SQLSERVER_DB'
76+ - versionName : ' projects/$PROJECT_ID/secrets/CLOUD_BUILD_SA/versions/latest'
77+ env : ' IMPERSONATED_USER'
78+ options :
79+ dynamicSubstitutions : true
80+ pool :
81+ name : ${_POOL_NAME}
82+ logging : CLOUD_LOGGING_ONLY
0 commit comments