这篇文章主要讲解了“golang语言项目是如何配置Gitlab CI的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“golang语言项目是如何配置Gitlab CI的”吧!
使用golangci-lint 检查代码
编译代码
部署二进制
主要 GOPROXY设置
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"
默认集成了很多开箱即用的linter
https://golangci-lint.run/
golangci-lint:
image: golangci/golangci-lint:v1.27.0
stage: lint
extends: .go-cache
allow_failure: true
script:
- golangci-lint run -v
allow_failure 表示失败了可以继续跑后续的job
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/
# This file is a template, and might need editing before it works on your project.
image: hub-mirror.c.163.com/library/golang:latest
.go-cache:
variables:
GOPATH: $CI_PROJECT_DIR/.go
cache:
paths:
- .go/pkg/mod/
variables:
OUTPUT_NAME: helloworld-app
stages:
- lint
- build
- deploy
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"
golangci-lint:
image: golangci/golangci-lint:v1.27.0
stage: lint
extends: .go-cache
allow_failure: true
script:
- golangci-lint run -v
compile:
stage: build
extends: .go-cache
script:
- go mod download
- go build -race -o $OUTPUT_NAME
artifacts:
paths:
- $OUTPUT_NAME
deploy-dev:
stage: deploy
script:
- echo "deploy dev environment"
感谢各位的阅读,以上就是“golang语言项目是如何配置Gitlab CI的”的内容了,经过本文的学习后,相信大家对golang语言项目是如何配置Gitlab CI的这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。