*: test on itself

What is a CI/CD system if it cannot test itself?
This commit is contained in:
Simone Gotti 2019-03-13 12:14:55 +01:00
parent b05b377d31
commit 41ac92086a
1 changed files with 68 additions and 0 deletions

68
.agola/config.yml Normal file
View File

@ -0,0 +1,68 @@
runtimes:
go1.12:
type: pod
arch: amd64
containers:
- image: golang:1.12-stretch
debian:
type: pod
arch: amd64
containers:
- image: debian:stretch
dind:
type: pod
arch: amd64
containers:
- image: docker:stable-dind
privileged: true
entrypoint: dockerd
tasks:
build-go1.12:
runtime: go1.12
working_dir: /go/src/github.com/sorintlab/agola
environment:
GO111MODULE: "on"
steps:
- run: env
- clone:
- run: SKIP_DOCKER_TESTS=1 go test -v -count 1 ./...
build-docker-tests-go-1.12:
runtime: go1.12
working_dir: /go/src/github.com/sorintlab/agola
environment:
GO111MODULE: "on"
steps:
- run: env
- clone:
- run:
name: build docker tests binary
command: CGO_ENABLED=0 go test -c ./internal/services/runservice/executor/driver -o ./bin/docker-tests
- save_to_workspace:
contents:
- source_dir: ./bin
dest_dir: /bin/
paths:
- "*"
test-docker-driver:
runtime: dind
steps:
- run: env
- restore_workspace:
dest_dir: .
- run: sleep 5
- run: ./bin/docker-tests -test.parallel 1 -test.v
pipelines:
agola build/test:
elements:
build go1.12:
task: build-go1.12
build docker tests go1.12:
task: build-docker-tests-go-1.12
test docker driver:
task: test-docker-driver
depends:
- build docker tests go1.12