Udostępnij za pośrednictwem


Kompilowanie i testowanie projektów języka Go

Azure DevOps Services

Użyj ciągu procesów, aby automatycznie kompilować i testować projekty w języku Go.

Utwórz swój pierwszy potok danych

Dopiero zaczynasz korzystać z usługi Azure Pipelines? Jeśli tak, zalecamy wypróbowanie tej sekcji przed przejściem do innych sekcji.

Sforkuj następujące repozytorium w serwisie GitHub.

https://github.com/MicrosoftDocs/pipelines-go

Logowanie się do usługi Azure Pipelines

Zaloguj się do usługi Azure Pipelines. Po zalogowaniu przeglądarka przejdzie do https://dev.azure.com/my-organization-name pulpitu nawigacyjnego usługi Azure DevOps i wyświetli go.

  1. W przeglądarce przejdź do dev.azure.com i zaloguj się.
  2. Wybierz organizację.
  3. Utwórz nowy projekt, wybierając pozycję Nowy projekt lub Utwórz projekt , tworząc pierwszy projekt w organizacji.
  4. Wprowadź nazwę projektu.
  5. Wybierz widoczność projektu.
  6. Wybierz Utwórz.

Utwórz potok

  1. Zaloguj się do organizacji usługi Azure DevOps i przejdź do projektu.

  2. Przejdź do obszaru Potoki, a następnie wybierz pozycję Nowy potok lub Utwórz potok , jeśli tworzysz pierwszy potok.

  3. Wykonaj kroki kreatora, najpierw wybierając GitHub jako lokalizację kodu źródłowego.

  4. Możesz zostać przekierowany do usługi GitHub, aby się zalogować. Jeśli tak, wprowadź dane logowania do GitHub.

  5. Po wyświetleniu listy repozytoriów wybierz repozytorium.

  6. Możesz zostać przekierowany do usługi GitHub, aby zainstalować aplikację Azure Pipelines. Jeśli tak, wybierz pozycję Zatwierdź i zainstaluj.

Po wyświetleniu karty Konfigurowanie wybierz pozycję Przejdź. Zostanie wyświetlony nowy potok z plikiem YAML azure-pipelines.yml gotowym do skonfigurowania. Zapoznaj się z poniższymi sekcjami, aby dowiedzieć się o kilku bardziej popularnych sposobach konfigurowania potoku.

Środowisko kompilacji

Za pomocą usługi Azure Pipelines można tworzyć projekty języka Go bez konfigurowania własnej infrastruktury. Do uruchamiania kompilacji można użyć agentów systemu Linux, macOS lub Windows.

Zaktualizuj poniższy fragment kodu w pliku azure-pipelines.yml, aby wybrać odpowiedni obraz.

pool:
  vmImage: 'ubuntu-latest'

Nowoczesne wersje języka Go są wstępnie zainstalowane na agentów hostowanych przez firmę Microsoft. Aby uzyskać dokładne wersje wstępnie zainstalowanego języka Go, zobacz agentów hostowanych przez firmę Microsoft w usłudze Azure Pipelines.

Konfigurowanie języka Go

Począwszy od wersji Go 1.11, nie trzeba już definiować środowiska $GOPATH, konfigurować układ obszaru roboczego ani używać modułu dep. Zarządzanie zależnościami jest teraz wbudowane.

Ten kod YAML implementuje polecenie go get w celu pobrania pakietów Języka Go i ich zależności. Następnie używa go build do generowania zawartości opublikowanej za pomocą zadania PublishBuildArtifacts@1.

trigger: 
 - main

pool:
   vmImage: 'ubuntu-latest'

steps: 
- task: GoTool@0
  inputs:
    version: '1.13.5'
- task: Go@0
  inputs:
    command: 'get'
    arguments: '-d'
    workingDirectory: '$(System.DefaultWorkingDirectory)'
- task: Go@0
  inputs:
    command: 'build'
    workingDirectory: '$(System.DefaultWorkingDirectory)'
- task: CopyFiles@2
  inputs:
    TargetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishBuildArtifacts@1
  inputs:
     artifactName: drop

Zbuduj

Użyj go build, aby zbudować projekt Go. Dodaj następujący fragment kodu do pliku azure-pipelines.yml :

- task: Go@0
  inputs:
    command: 'build'
    workingDirectory: '$(System.DefaultWorkingDirectory)'

Testowanie

Użyj go test do testowania modułu Go i jego podkatalogów (./...). Dodaj następujący fragment kodu do pliku azure-pipelines.yml :

- task: Go@0
  inputs:
    command: 'test'
    arguments: '-v'
    workingDirectory: '$(System.DefaultWorkingDirectory)'

Gdy wszystko będzie gotowe, zatwierdź nowy plik azure-pipelines.yml w repozytorium i zaktualizuj komunikat zatwierdzenia. Wybierz pozycję Zapisz i uruchom.

Przycisk 'Zapisz i uruchom' w nowym potoku YAML

Jeśli chcesz obserwować, jak działa Twój potok, wybierz build w opcji Zadania na pulpicie nawigacyjnym usługi Azure Pipelines. budowanie potoku w trakcie działania po wybraniu opcji Zadania usługi Azure Pipelines.

Ponieważ twój kod był dobrym dopasowaniem do szablonu Go, automatycznie utworzyliśmy twój pipeline.

Masz teraz działający przepływ YAML (azure-pipelines.yml) w repozytorium, który jest już gotowy do dostosowania.

Kiedy będziesz gotowy do wprowadzenia zmian w potoku, wybierz go na stronie Potoków, a następnie edytuj plik azure-pipelines.yml.

Wskazówka

Aby wprowadzić zmiany w pliku YAML zgodnie z opisem w tym artykule, wybierz pipeline na stronie Pipelines, a następnie wybierz Edytuj, aby otworzyć edytor dla pliku azure-pipelines.yml. Zrzut ekranu przedstawiający sposób edytowania potoku platformy Azure z pulpitu nawigacyjnego z wybraniem opcji

Tworzenie obrazu i przesyłanie do rejestru kontenerów

W przypadku aplikacji Go możesz również skompilować obraz i wypchnąć go do rejestru kontenerów.

Rozszerzenie Języka Go dla programu Visual Studio Code