So konfigurieren Sie Gitlab CI für Go-Sprachprojekte

藏色散人
Freigeben: 2021-12-08 15:01:12
nach vorne
2753 Leute haben es durchsucht

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"
Nach dem Login kopieren
  • 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
    Nach dem Login kopieren

    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
    Nach dem Login kopieren

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

    .go-cache:
        variables:
            GOPATH: $CI_PROJECT_DIR/.go
        cache:
          paths:
            - .go/pkg/mod/
    Nach dem Login kopieren
    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"
    Nach dem Login kopieren

    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!

    Verwandte Etiketten:
    Quelle:segmentfault.com
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage