...
1version: "2"
2
3services:
4 postgres:
5 image: "postgres:${POSTGRES_VERSION}"
6 environment:
7 - "POSTGRES_USER=postgres"
8 - "POSTGRES_DB=goqupostgres"
9 - "POSTGRES_HOST_AUTH_METHOD=trust"
10 expose:
11 - "5432"
12 ports:
13 - "5432:5432"
14
15 mysql:
16 image: "mysql:${MYSQL_VERSION}"
17 environment:
18 - "MYSQL_DATABASE=goqumysql"
19 - "MYSQL_ALLOW_EMPTY_PASSWORD=yes"
20 expose:
21 - "3306"
22 ports:
23 - "3306:3306"
24
25 sqlserver:
26 image: "mcr.microsoft.com/mssql/server:${SQLSERVER_VERSION}"
27 environment:
28 - "ACCEPT_EULA=Y"
29 - "SA_PASSWORD=qwe123QWE"
30 expose:
31 - "1433"
32 ports:
33 - "1433:1433"
34
35 goqu:
36 image: "golang:${GO_VERSION}"
37 command: ["./wait-for-it.sh", "postgres:5432", "--", "./wait-for-it.sh", "mysql:3306", "--", "go test -v -race ./..."]
38 working_dir: /go/src/github.com/doug-martin/goqu
39 volumes:
40 - "./:/go/src/github.com/doug-martin/goqu"
41 environment:
42 MYSQL_URI: 'root@tcp(mysql:3306)/goqumysql?parseTime=true'
43 PG_URI: 'postgres://postgres:@postgres:5432/goqupostgres?sslmode=disable'
44 SQLSERVER_URI: 'sqlserver://sa:qwe123QWE@sqlserver:1433?database=master&connection+timeout=30'
45 depends_on:
46 - postgres
47 - mysql
48 - sqlserver
49 goqu-coverage:
50 image: "golang:${GO_VERSION}"
51 command: ["./wait-for-it.sh", "postgres:5432", "--", "./wait-for-it.sh", "mysql:3306", "--", "./go.test.sh"]
52 working_dir: /go/src/github.com/doug-martin/goqu
53 volumes:
54 - "./:/go/src/github.com/doug-martin/goqu"
55 environment:
56 MYSQL_URI: 'root@tcp(mysql:3306)/goqumysql?parseTime=true'
57 PG_URI: 'postgres://postgres:@postgres:5432/goqupostgres?sslmode=disable'
58 SQLSERVER_URI: 'sqlserver://sa:qwe123QWE@sqlserver:1433?database=master&connection+timeout=30'
59 depends_on:
60 - postgres
61 - mysql
62 - sqlserver
View as plain text