Go 言語プロジェクト用に Gitlab CI を構成する方法

藏色散人
リリース: 2021-12-08 15:01:12
転載
2656 人が閲覧しました

この記事は、golangチュートリアル コラムによって提供され、gol 言語プロジェクトで Gitlab CI を構成する方法を紹介します。

パイプライン プロセス

    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

統合デフォルトでは、すぐに使える多くのリンター

Go 言語プロジェクト用に Gitlab CI を構成する方法

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 は、失敗した場合に、後続のジョブを引き続き実行できます

##Compile

compile: stage: build extends: .go-cache script: - go mod download - go build -race -o $OUTPUT_NAME artifacts: paths: - $OUTPUT_NAME
ログイン後にコピー

cache go mod

.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"
ログイン後にコピー

以上がGo 言語プロジェクト用に Gitlab CI を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!