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:
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user