1
0
mirror of https://blitiri.com.ar/repos/chasquid synced 2025-12-18 14:47:03 +00:00

gitlab-ci.yml: Run integration tests against submitted and latest deps

It is useful to run the integration tests both against the submitted
dependencies, based on Go module versions from the repository, as well
as the latest ones, to catch integration problems early.

This patch extends the .gitlab-ci.yml configuration to do that, by
optionally passing a flag to "go get" to update the modules.
This commit is contained in:
Alberto Bertogli
2019-10-19 00:26:59 +01:00
parent 3aa7bb4555
commit 9dea372d96
2 changed files with 14 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ stages:
- test - test
- docker_image - docker_image
# Integration test, using the module versions from the repository.
integration_test: integration_test:
stage: test stage: test
image: docker:stable image: docker:stable
@@ -14,6 +15,18 @@ integration_test:
- docker run chasquid-test env - docker run chasquid-test env
- docker run chasquid-test make test - docker run chasquid-test make test
# Integration test, using the latest module versions.
integration_test_latest:
stage: test
image: docker:stable
services:
- docker:dind
script:
- docker info
- docker build -t chasquid-test --build-arg GO_GET_ARGS="-u=patch" -f test/Dockerfile .
- docker run chasquid-test env
- docker run chasquid-test make test
image_build: image_build:
stage: docker_image stage: docker_image
image: docker:stable image: docker:stable

View File

@@ -56,7 +56,7 @@ RUN useradd -m chasquid && chown -R chasquid:chasquid .
# Do it as chasquid because that is what the tests will run as. # Do it as chasquid because that is what the tests will run as.
USER chasquid USER chasquid
ENV GOPATH= ENV GOPATH=
RUN go get -v ./... && go mod download RUN go get -v ${GO_GET_ARGS} ./... && go mod download
# Build the minidns server, which will be run from within the entrypoint. # Build the minidns server, which will be run from within the entrypoint.
RUN go build -o /tmp/minidns ./test/util/minidns.go RUN go build -o /tmp/minidns ./test/util/minidns.go