Heim >Backend-Entwicklung >Golang >So konfigurieren Sie Gitlab CI für Go-Sprachprojekte

So konfigurieren Sie Gitlab CI für Go-Sprachprojekte

藏色散人
藏色散人nach vorne
2021-12-08 14:52:102783Durchsuche

Dieser Artikel wurde von der golangTutorial-Kolumne geschrieben, um Ihnen vorzustellen, wie Sie Gitlab CI für Gol-Sprachprojekte konfigurieren. Ich hoffe, dass er Freunden in Not hilfreich sein wird!

Pipeline-Prozess

  • Verwenden Sie Golangci-Lint, um den Code zu überprüfen Einstellungen
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
  • Viele sofort einsatzbereite Linters sind standardmäßig integriert
  • 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 bedeutet, dass Sie bei einem Fehler mit der Ausführung fortfahren können Jobs

    Kompilieren

    compile:
        stage: build
        extends: .go-cache
        script:
          - go mod download
          - go build -race -o $OUTPUT_NAME
        artifacts:
          paths:
            - $OUTPUT_NAME

    Cache go modSo konfigurieren Sie Gitlab CI für Go-Sprachprojekte

    .go-cache:
        variables:
            GOPATH: $CI_PROJECT_DIR/.go
        cache:
          paths:
            - .go/pkg/mod/
    vollständiges Beispiel

    # 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"

    Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie Gitlab CI für Go-Sprachprojekte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen