365 lines
6.6 KiB
YAML
365 lines
6.6 KiB
YAML
---
|
|
kind: pipeline
|
|
name: test-mysql
|
|
environment:
|
|
GO111MODULE: "on"
|
|
GOPROXY: "https://goproxy.io"
|
|
CGO_ENABLED: 1
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-vet
|
|
image: golang:1.15
|
|
pull: always
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
commands:
|
|
- make vet
|
|
- name: test-sqlite3
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
depends_on:
|
|
- test-vet
|
|
commands:
|
|
- make fmt-check
|
|
- make test
|
|
- make test-sqlite3
|
|
- TEST_CACHE_ENABLE=true make test-sqlite3
|
|
- TEST_QUOTE_POLICY=reserved make test-sqlite3
|
|
- make test-sqlite
|
|
- TEST_CACHE_ENABLE=true make test-sqlite
|
|
- TEST_QUOTE_POLICY=reserved make test-sqlite
|
|
- name: test-mysql
|
|
image: golang:1.15
|
|
pull: never
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
depends_on:
|
|
- test-vet
|
|
environment:
|
|
TEST_MYSQL_HOST: mysql
|
|
TEST_MYSQL_CHARSET: utf8
|
|
TEST_MYSQL_DBNAME: xorm_test
|
|
TEST_MYSQL_USERNAME: root
|
|
TEST_MYSQL_PASSWORD:
|
|
commands:
|
|
- TEST_CACHE_ENABLE=true make test-mysql
|
|
|
|
- name: test-mysql-utf8mb4
|
|
image: golang:1.15
|
|
pull: never
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
depends_on:
|
|
- test-mysql
|
|
environment:
|
|
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_QUOTE_POLICY=reserved make test-mysql
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: mysql
|
|
image: mysql:5.7
|
|
environment:
|
|
MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
|
MYSQL_DATABASE: xorm_test
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-mysql8
|
|
depends_on:
|
|
- test-mysql
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-mysql8
|
|
image: golang:1.15
|
|
pull: never
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: mysql8
|
|
image: mysql:8.0
|
|
environment:
|
|
MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
|
MYSQL_DATABASE: xorm_test
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-mariadb
|
|
depends_on:
|
|
- test-mysql8
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-mariadb
|
|
image: golang:1.15
|
|
pull: never
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: mariadb
|
|
image: mariadb:10.4
|
|
environment:
|
|
MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
|
MYSQL_DATABASE: xorm_test
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-postgres
|
|
depends_on:
|
|
- test-mariadb
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-postgres
|
|
pull: never
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
- name: test-postgres-schema
|
|
pull: never
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
depends_on:
|
|
- test-postgres
|
|
environment:
|
|
TEST_PGSQL_HOST: pgsql
|
|
TEST_PGSQL_SCHEMA: xorm
|
|
TEST_PGSQL_DBNAME: xorm_test
|
|
TEST_PGSQL_USERNAME: postgres
|
|
TEST_PGSQL_PASSWORD: postgres
|
|
commands:
|
|
- TEST_QUOTE_POLICY=reserved make test-postgres
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: pgsql
|
|
image: postgres:9.5
|
|
environment:
|
|
POSTGRES_DB: xorm_test
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-mssql
|
|
depends_on:
|
|
- test-postgres
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-mssql
|
|
pull: never
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: mssql
|
|
pull: always
|
|
image: mcr.microsoft.com/mssql/server:latest
|
|
environment:
|
|
ACCEPT_EULA: Y
|
|
SA_PASSWORD: yourStrong(!)Password
|
|
MSSQL_PID: Standard
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-tidb
|
|
depends_on:
|
|
- test-mssql
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-tidb
|
|
pull: never
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: tidb
|
|
image: pingcap/tidb:v3.0.3
|
|
|
|
---
|
|
kind: pipeline
|
|
name: test-cockroach
|
|
depends_on:
|
|
- test-tidb
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: test-cockroach
|
|
pull: never
|
|
image: golang:1.15
|
|
volumes:
|
|
- name: cache
|
|
path: /go/pkg/mod
|
|
environment:
|
|
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
|
|
|
|
volumes:
|
|
- name: cache
|
|
host:
|
|
path: /tmp/cache
|
|
|
|
services:
|
|
- name: cockroach
|
|
image: cockroachdb/cockroach:v19.2.4
|
|
commands:
|
|
- /cockroach/cockroach start --insecure
|
|
|
|
---
|
|
kind: pipeline
|
|
name: merge_coverage
|
|
depends_on:
|
|
- test-mysql
|
|
- test-mysql8
|
|
- test-mariadb
|
|
- test-postgres
|
|
- test-mssql
|
|
- test-tidb
|
|
- test-cockroach
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/pull/*/head
|
|
steps:
|
|
- name: merge_coverage
|
|
image: golang:1.15
|
|
commands:
|
|
- make coverage
|
|
|
|
---
|
|
kind: pipeline
|
|
name: release-tag
|
|
trigger:
|
|
event:
|
|
- tag
|
|
steps:
|
|
- name: release-tag-gitea
|
|
pull: always
|
|
image: plugins/gitea-release:latest
|
|
settings:
|
|
base_url: https://gitea.com
|
|
title: '${DRONE_TAG} is released'
|
|
api_key:
|
|
from_secret: gitea_token |