# use the default golang container from Docker Hub box: golang services: - id: mariadb:10.0 env: MYSQL_DATABASE: gorm MYSQL_USER: gorm MYSQL_PASSWORD: gorm MYSQL_RANDOM_ROOT_PASSWORD: "yes" - id: postgres env: POSTGRES_USER: gorm POSTGRES_PASSWORD: gorm POSTGRES_DB: gorm # The steps that will be executed in the build pipeline build: # The steps that will be executed on build steps: # Sets the go workspace and places you package # at the right place in the workspace tree - setup-go-workspace # Gets the dependencies - script: name: go get code: | cd $WERCKER_SOURCE_DIR go version go get -t ./... # Build the project - script: name: go build code: | go build ./... # Test the project - script: name: test sqlite code: | go test ./... - script: name: test mysql code: | GORM_DIALECT=mysql GORM_DBADDRESS=mariadb:3306 go test ./... - script: name: test postgres code: | GORM_DIALECT=postgres GORM_DBHOST=postgres go test ./...