workspace: base: /go path: src/github.com/drone/drone pipeline: test: image: golang:1.8 commands: - go get -u github.com/drone/drone-ui/dist - go get -u golang.org/x/tools/cmd/cover - go test -cover $(go list ./... | grep -v /vendor/) test_postgres: image: golang:1.8 environment: - DATABASE_DRIVER=postgres - DATABASE_CONFIG=host=postgres user=postgres dbname=postgres sslmode=disable commands: - go test github.com/drone/drone/store/datastore test_mysql: image: golang:1.8 environment: - DATABASE_DRIVER=mysql - DATABASE_CONFIG=root@tcp(mysql:3306)/test?parseTime=true commands: - go test github.com/drone/drone/store/datastore build: image: golang:1.8 commands: sh .drone.sh secrets: [ ssh_key ] when: event: [ push, tag ] publish: image: plugins/docker repo: drone/drone secrets: [ docker_username, docker_password ] tag: [ latest ] when: branch: master event: push release: image: plugins/docker repo: drone/drone secrets: [ docker_username, docker_password ] tag: [ 0.7, 0.7.3 ] when: event: tag notify: image: plugins/gitter secrets: [ gitter_webhook ] when: status: [ success, failure ] services: postgres: image: postgres:9.6 environment: - POSTGRES_USER=postgres mysql: image: mysql:5.6.27 environment: - MYSQL_DATABASE=test - MYSQL_ALLOW_EMPTY_PASSWORD=yes