Kompilowanie i testowanie projektów języka Go

Azure DevOps Services

Użyj potoku, aby automatycznie kompilować i testować projekty języka Go.

Tworzenie pierwszego potoku

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

Rozwidlenie następującego repozytorium w usłudze 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 pozycję Utwórz.
  1. W przeglądarce przejdź do serwera Usługi Azure DevOps.
  2. Wybierz kolekcję.
  3. Utwórz nowy projekt, wybierając pozycję Nowy projekt lub Utwórz projekt , tworząc pierwszy projekt w kolekcji.
  4. Wprowadź nazwę projektu.
  5. Wybierz widoczność projektu.
  6. Wybierz pozycję Utwórz.

Tworzenie potoku

  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, wybierając najpierw usługę GitHub jako lokalizację kodu źródłowego.

  4. Być może nastąpi przekierowanie do usługi GitHub w celu zalogowania się. Jeśli tak, wprowadź poświadczenia usługi 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 gotowym plikiem azure-pipelines.yml YAML do skonfigurowania. Zapoznaj się z poniższymi sekcjami, aby dowiedzieć się więcej o typowych sposobach dostosowywania 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 agentach hostowanych przez firmę Microsoft. Aby uzyskać dokładne wersje wstępnie zainstalowanego języka Go, zapoznaj się z tematem Agenci hostowani przez firmę Microsoft w usłudze Azure Pipelines.

Konfigurowanie języka Go

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

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

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

Tworzenie

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

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

Przetestuj

Użyj go test polecenia , aby przetestować moduł go i jego podkatalogi (./...). 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ć działanie potoku, wybierz kompilację w opcji Zadania na pulpicie nawigacyjnym usługi Azure Pipelines. Kompilacja potoku w akcji po wybraniu opcji Zadania usługi Azure Pipelines.

Ponieważ twój kod wydaje się być dobrym dopasowaniem szablonu języka Go , automatycznie utworzyliśmy potok.

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

Gdy wszystko będzie gotowe do wprowadzenia zmian w potoku, wybierz go na stronie Potoki , a następnie edytujazure-pipelines.yml plik.

Napiwek

Aby wprowadzić zmiany w pliku YAML zgodnie z opisem w tym artykule, wybierz potok na stronie Potoki , a następnie wybierz pozycję Edytuj , aby otworzyć edytor pliku azure-pipelines.yml . Zrzut ekranu przedstawiający sposób edytowania potoku platformy Azure z poziomu pulpitu nawigacyjnego z wybraną większą opcją i wyróżnioną opcją Edytuj.

Tworzenie obrazu i wypychanie do rejestru kontenerów

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

Rozszerzenie Go dla programu Visual Studio Code (Microsoft)