파이프라인 프로세스
- golangci-lint를 사용하여 코드 확인
- 코드 컴파일
- 바이너리 배포
before_script 환경 변수 설정
기본 GOPROXY 설정
rr 리golangci-lint
다양한 기본 린터가 기본적으로 통합되어 있습니다
https://golangci-lint.run/
before_script: - echo "before_script" - git version - go env -w GOPRIVATE=code.haiziwang.com - mkdir -p .go - go version - go env -w GO111MODULE=on - go env -w GOPROXY="https://goproxy.io,direct"
allow_failure는 실패하더라도 후속 실행을 계속할 수 있음을 의미합니다. jobs
Compile
golangci-lint: image: golangci/golangci-lint:v1.27.0 stage: lint extends: .go-cache allow_failure: true script: - golangci-lint run -v
Cache go mod
compile: stage: build extends: .go-cache script: - go mod download - go build -race -o $OUTPUT_NAME artifacts: paths: - $OUTPUT_NAME
전체 예시
.go-cache: variables: GOPATH: $CI_PROJECT_DIR/.go cache: paths: - .go/pkg/mod/