go语言项目是怎么配置GitlabCI的
本文由
golang教程栏目给大家介绍gol语言项目是怎么配置Gitlab CI的,希望对需要的朋友有所帮助!

成都创新互联专业为企业提供大荔网站建设、大荔做网站、大荔网站设计、大荔网站制作等企业网站建设、网页设计与制作、大荔企业网站模板建站服务,10余年大荔做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
- 使用golangci-lint 检查代码
- 编译代码
- 部署二进制
before_script 设置环境变量
主要 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"
golangci-lint
默认集成了很多开箱即用的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
编译
compile:
stage: build
extends: .go-cache
script:
- go mod download
- go build -race -o $OUTPUT_NAME
artifacts:
paths:
- $OUTPUT_NAME
缓存 go mod
.go-cache:
variables:
GOPATH: $CI_PROJECT_DIR/.go
cache:
paths:
- .go/pkg/mod/
full example
# 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" 分享名称:go语言项目是怎么配置GitlabCI的
网站URL:http://www.jxjierui.cn/article/dpiocjg.html


咨询
建站咨询
