--- kind: pipeline name: testing steps: - name: test-vet image: golang:1.11 # The lowest golang requirement environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" commands: - make vet - make test - make fmt-check when: event: - push - pull_request --- kind: pipeline name: test-sqlite depends_on: - testing steps: - name: test-sqlite image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" commands: - make test-sqlite - TEST_CACHE_ENABLE=true make test-sqlite - TEST_QUOTE_POLICY=reserved make test-sqlite --- kind: pipeline name: test-mysql depends_on: - test-sqlite steps: - name: test-mysql image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MYSQL_HOST: mysql TEST_MYSQL_CHARSET: utf8 TEST_MYSQL_DBNAME: xorm_test TEST_MYSQL_USERNAME: root TEST_MYSQL_PASSWORD: commands: - make test-mysql - TEST_CACHE_ENABLE=true make test-mysql - TEST_QUOTE_POLICY=reserved make test-mysql - name: test-mysql-utf8mb4 image: golang:1.12 depends_on: - test-mysql environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MYSQL_HOST: mysql TEST_MYSQL_CHARSET: utf8mb4 TEST_MYSQL_DBNAME: xorm_test TEST_MYSQL_USERNAME: root TEST_MYSQL_PASSWORD: commands: - make test-mysql - TEST_CACHE_ENABLE=true make test-mysql - TEST_QUOTE_POLICY=reserved make test-mysql - name: test-mymysql pull: default image: golang:1.12 depends_on: - test-mysql-utf8mb4 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MYSQL_HOST: mysql:3306 TEST_MYSQL_DBNAME: xorm_test TEST_MYSQL_USERNAME: root TEST_MYSQL_PASSWORD: commands: - make test-mymysql - TEST_CACHE_ENABLE=true make test-mymysql - TEST_QUOTE_POLICY=reserved make test-mymysql services: - name: mysql pull: default image: mysql:5.7 environment: MYSQL_ALLOW_EMPTY_PASSWORD: yes MYSQL_DATABASE: xorm_test --- kind: pipeline name: test-mysql8 depends_on: - test-mysql steps: - name: test-mysql8 image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MYSQL_HOST: mysql8 TEST_MYSQL_CHARSET: utf8mb4 TEST_MYSQL_DBNAME: xorm_test TEST_MYSQL_USERNAME: root TEST_MYSQL_PASSWORD: commands: - make test-mysql - TEST_CACHE_ENABLE=true make test-mysql - TEST_QUOTE_POLICY=reserved make test-mysql services: - name: mysql8 pull: default image: mysql:8.0 environment: MYSQL_ALLOW_EMPTY_PASSWORD: yes MYSQL_DATABASE: xorm_test --- kind: pipeline name: test-mariadb depends_on: - test-mysql8 steps: - name: test-mariadb image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MYSQL_HOST: mariadb TEST_MYSQL_CHARSET: utf8mb4 TEST_MYSQL_DBNAME: xorm_test TEST_MYSQL_USERNAME: root TEST_MYSQL_PASSWORD: commands: - make test-mysql - TEST_CACHE_ENABLE=true make test-mysql - TEST_QUOTE_POLICY=reserved make test-mysql services: - name: mariadb pull: default image: mariadb:10.4 environment: MYSQL_ALLOW_EMPTY_PASSWORD: yes MYSQL_DATABASE: xorm_test --- kind: pipeline name: test-postgres depends_on: - test-mariadb steps: - name: test-postgres pull: default image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_PGSQL_HOST: pgsql TEST_PGSQL_DBNAME: xorm_test TEST_PGSQL_USERNAME: postgres TEST_PGSQL_PASSWORD: postgres commands: - make test-postgres - TEST_CACHE_ENABLE=true make test-postgres - TEST_QUOTE_POLICY=reserved make test-postgres - name: test-postgres-schema pull: default image: golang:1.12 depends_on: - test-postgres environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_PGSQL_HOST: pgsql TEST_PGSQL_SCHEMA: xorm TEST_PGSQL_DBNAME: xorm_test TEST_PGSQL_USERNAME: postgres TEST_PGSQL_PASSWORD: postgres commands: - make test-postgres - TEST_CACHE_ENABLE=true make test-postgres - TEST_QUOTE_POLICY=reserved make test-postgres services: - name: pgsql pull: default image: postgres:9.5 environment: POSTGRES_DB: xorm_test POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres --- kind: pipeline name: test-mssql depends_on: - test-postgres steps: - name: test-mssql pull: default image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_MSSQL_HOST: mssql TEST_MSSQL_DBNAME: xorm_test TEST_MSSQL_USERNAME: sa TEST_MSSQL_PASSWORD: "yourStrong(!)Password" commands: - make test-mssql - TEST_CACHE_ENABLE=true make test-mssql - TEST_QUOTE_POLICY=reserved make test-mssql - TEST_MSSQL_DEFAULT_VARCHAR=NVARCHAR TEST_MSSQL_DEFAULT_CHAR=NCHAR make test-mssql services: - name: mssql pull: default image: microsoft/mssql-server-linux:latest environment: ACCEPT_EULA: Y SA_PASSWORD: yourStrong(!)Password MSSQL_PID: Developer --- kind: pipeline name: test-tidb depends_on: - test-mssql steps: - name: test-tidb pull: default image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_TIDB_HOST: "tidb:4000" TEST_TIDB_DBNAME: xorm_test TEST_TIDB_USERNAME: root TEST_TIDB_PASSWORD: commands: - make test-tidb - TEST_CACHE_ENABLE=true make test-tidb - TEST_QUOTE_POLICY=reserved make test-tidb services: - name: tidb pull: default image: pingcap/tidb:v3.0.3 --- kind: pipeline name: test-cockroach depends_on: - test-tidb steps: - name: test-cockroach pull: default image: golang:1.13 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" TEST_COCKROACH_HOST: "cockroach:26257" TEST_COCKROACH_DBNAME: xorm_test TEST_COCKROACH_USERNAME: root TEST_COCKROACH_PASSWORD: commands: - sleep 10 - make test-cockroach - TEST_CACHE_ENABLE=true make test-cockroach services: - name: cockroach pull: default image: cockroachdb/cockroach:v19.2.4 commands: - /cockroach/cockroach start --insecure --- kind: pipeline name: merge_coverage depends_on: - testing - test-sqlite - test-mysql - test-mysql8 - test-mymysql - test-postgres - test-postgres-schema - test-mssql - test-tidb - test-cockroach steps: - name: merge_coverage pull: default image: golang:1.12 environment: GO111MODULE: "on" GOPROXY: "https://goproxy.cn" commands: - make coverage when: branch: - master event: - push - pull_request