diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3e4e548355cbfcf5f75d3eda8dd22f6de3112cab..4cfceb73909201d9d54c20e4e086fe24a3155272 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,22 +1,21 @@ --- -image: debian:buster - variables: GOCACHE: $CI_PROJECT_DIR/.gocache GOPATH: $CI_PROJECT_DIR/.go + PACKAGE_REGISTRY_URL: >- + $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/needrestart2prom cache: paths: - .gocache - .go -before_script: - - echo 'deb http://deb.debian.org/debian buster-backports main' > /etc/apt/sources.list.d/backports.list - - apt-get update && apt-get -qq -y -t buster-backports install golang git - - go version - build: + image: golang:1-buster + stage: build + before_script: + - go version script: - go build -o $CI_PROJECT_NAME-$GOOS-$GOARCH artifacts: @@ -29,3 +28,37 @@ build: GOARCH: - amd64 - arm + +lint: + image: golangci/golangci-lint:v1.39-alpine + stage: test + needs: [] + script: + - >- + golangci-lint + run + -v + --max-issues-per-linter=0 + --max-same-issues=0 + --out-format=junit-xml + --timeout=10m + > golangci-output.xml + artifacts: + paths: + - golangci-output.xml + reports: + junit: golangci-output.xml + expire_in: 7 days + +upload: + stage: deploy + image: curlimages/curl:latest + needs: + - build + rules: + - if: '$CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH' + script: + - | + for file in $CI_PROJECT_NAME-linux-amd64 $CI_PROJECT_NAME-linux-arm; do + curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${file} ${PACKAGE_REGISTRY_URL}/${CI_COMMIT_REF}/${file} ; + done diff --git a/needrestart2prom.go b/needrestart2prom.go index db62aed2686e8a9c909f4243329bafb633eab1e5..98f4f1e5be7a6b2b8c4946b9bc8df7b7bf6bae62 100644 --- a/needrestart2prom.go +++ b/needrestart2prom.go @@ -115,7 +115,6 @@ func registerMetrics(needrestart string, registry prometheus.Registerer) (err er case "SVC": // service services.WithLabelValues(value).Set(1) - break case "CONT": // container }