diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7ee5b17fb1aa6a5243d94022a98ae8e48fe0e8f1..df19a744992ed8080925aeb0331aeb7c3f480bcd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,36 +1,73 @@ +variables: + HELPERS_FILE: docker-build.yml + APP_HELM_NAME: signer + DOCKER_FILE: deployment/ci/Dockerfile + +stages: + - compile + - test + - build + - manifest + - deploy + include: -- project: 'eclipse/xfsc/dev-ops/ci-templates' - file: 'golang-standard-ci.yaml' - ref: main - -#stages: -# - test - -#before_script: -# - ln -s /builds /go/src/gitlab.eclipse.org -# - cd /go/src/gitlab.eclipse.org/${CI_PROJECT_PATH} - -#linters: -# image: golangci/golangci-lint:latest -# stage: test -# script: -# - go version -# - golangci-lint --version -# - golangci-lint run - -#unit tests: -# image: golang:1.21.5 -# stage: test -# script: -# - go version -# - go test $(go list ./... | grep -v /integration) -race -coverprofile=coverage.out -# - go tool cover -func=coverage.out -# coverage: '/total:\s+\(statements\)\s+(\d+.\d+\%)/' - -#govulncheck: -# image: golang:1.21.5 -# stage: test -# script: -# - go version -# - go install golang.org/x/vuln/cmd/govulncheck@latest -# - govulncheck ./... + - project: '${HELPERS_PATH}' + file: '${HELPERS_FILE}' + - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml' + +lint: + image: golangci/golangci-lint:latest + stage: test + tags: + - amd64-docker + script: + - golangci-lint --version + - golangci-lint run + before_script: + - ln -s /builds /go/src/gitlab.com + - cd /go/src/gitlab.com/${CI_PROJECT_PATH} + +unit tests: + image: golang:1.21.5 + stage: test + tags: + - amd64-docker + script: + - go version + - go test $(go list ./... | grep -v /integration) -race -coverprofile=coverage.out + - go tool cover -func=coverage.out + before_script: + - ln -s /builds /go/src/gitlab.com + - cd /go/src/gitlab.com/${CI_PROJECT_PATH} + coverage: '/total:\s+\(statements\)\s+(\d+.\d+\%)/' + +govulncheck: + image: golang:1.21.5 + stage: test + tags: + - amd64-docker + before_script: + - ln -s /builds /go/src/gitlab.com + - cd /go/src/gitlab.com/${CI_PROJECT_PATH} + script: + - go version + - go install golang.org/x/vuln/cmd/govulncheck@latest + - govulncheck ./... + +amd64: + extends: .docker-build + stage: build + tags: + - amd64-docker + +manifest: + extends: .manifest-amd64 + stage: manifest + +cloud: + extends: .manifest-cloud + stage: manifest + +release: + extends: .manifest-release + stage: manifest