gsoft.azure_devops_agent

Agent Azure DevOps

Rola Ansible, która instaluje i konfiguruje maszynę Linux, aby używać jej jako agenta do budowy lub wdrażania Azure DevOps.

Zobacz ten wpis na blogu po więcej szczegółów.

Wymagania

Zobacz wymagania wstępne

Instalacja na MacOS może sprawiać problemy, gdy próbujesz użyć jednego użytkownika z uprawnieniami administratora do połączenia, a innego użytkownika do uruchomienia usługi. Ustawienie pipelining = True może pomóc, szczególnie jeśli napotkasz problemy, w których użytkownik agenta devops nie może uzyskać dostępu do tymczasowych plików tworzonych przez ansible.

Zmienne roli

Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi (zobacz defaults/main.yml):

    az_devops_accountname: null
    az_devops_accesstoken: null
    az_devops_project_name: null
    az_devops_agent_version: 2.188.3
    az_devops_agent_user: "az_devops_agent"
    az_devops_agent_uid: null
    az_devops_agent_name: "{{ ansible_hostname }}"
    az_devops_server_url: "https://dev.azure.com/{{ az_devops_accountname }}"
    az_devops_agent_folder: "/home/{{ az_devops_agent_user }}/agent/"
    az_devops_work_folder: "/home/{{ az_devops_agent_user }}/agent/_work"
    az_devops_agent_pool_name: "Default"
    az_devops_agent_role: "build"
    az_devops_deployment_group_tags: null
    az_devops_environment_name: null
    az_devops_deployment_group_name: null
    az_devops_agent_replace_existing: false
    az_devops_reconfigure_agent: false
    az_devops_agent_user_capabilities: null
    az_devops_proxy_url: null
    az_devops_proxy_username: null
    az_devops_proxy_password: null
  • az_devops_accountname

    Nazwa Twojego konta Azure DevOps, tzn. https://dev.azure.com/TWOJA_NAZWA_KONTA

  • az_devops_accesstoken

    Osobisty token dostępu (PAT) używany do autoryzacji w Twoim koncie. Zobacz tutaj, jak wygenerować tę wartość.

    Uwaga: Rozważ użycie Ansible Vault, aby zabezpieczyć tę wartość.

  • az_devops_project_name

    Nazwa projektu Azure DevOps, w którym zarejestrujesz agenta (używana tylko dla grup wdrożeniowych).

  • az_devops_agent_version

    Wersja zainstalowanego pakietu agenta. Powinna być okresowo aktualizowana do najnowszej wersji (zobacz tutaj).

  • az_devops_agent_user

    Nazwa użytkownika używanego do uruchamiania i konfigurowania usługi.

  • az_devops_agent_uid

    UID użytkownika używanego do uruchamiania i konfigurowania usługi.

  • az_devops_agent_group

    Domyślna grupa użytkownika używanego do uruchamiania i konfigurowania usługi.

  • az_devops_agent_name

    Nazwa agenta widoczna w Azure DevOps (domyślnie nazwa hosta).

  • az_devops_server_url

    URL Twojego konta Azure DevOps.

  • az_devops_agent_folder

    Miejsce folderu dla wszystkich plików specyficznych dla agenta (uważaj: ważne, aby użytkownik usługi miał uprawnienia do wykonania na wszystkich plikach w tym folderze).

  • az_devops_work_folder

    Miejsce folderu dla wszystkich plików roboczych (tj. pobranego kodu źródłowego i wyników budowy).

  • az_devops_agent_pool_name

    Nazwa puli, do której dodawany jest agent Azure DevOps.

  • az_devops_agent_role

    Użyj jednej z ról: build, deployment lub resource. Rola budowy pozwala na użycie agenta jako serwera budowy w pipeline budowy lub wydania. Rola wdrożenia pozwala na użycie agenta w grupie wdrożeniowej. Rola zasobu pozwala na użycie agenta jako zasobu maszyny wirtualnej, która może być kierowana przez wdrożenia z pipeline i należy do danego środowiska.

  • az_devops_deployment_group_tags

    Użyj w połączeniu z rolą agenta deployment. Pozwala na używanie tagów do identyfikacji agenta (np. QA, Staging, Prod itp.)

  • az_devops_deployment_group_name

    Użyj w połączeniu z rolą agenta deployment. Nazwa grupy wdrożeniowej, do której dodasz agenta. To musi być ręcznie utworzone wcześniej w Twoim projekcie Azure DevOps.

  • az_devops_environment_name

    Użyj w połączeniu z rolą agenta resource. Nazwa środowiska, do którego dodasz zasób VM. To również musi być ręcznie utworzone wcześniej w Twoim projekcie Azure DevOps.

  • az_devops_agent_replace_existing

    Dodaje argument --replace do skryptu konfiguracyjnego dla scenariusza, gdy potrzebujesz zastąpić istniejącego agenta nowym hostem.

  • az_devops_reconfigure_agent

    Wymusza ponowną konfigurację agenta, nawet jeśli usługa jest już aktywna.

  • az_devops_proxy_url

    URL serwera proxy, format to http://url:port

    Zakłada się, że proxy obsługuje zarówno http, jak i https.

  • az_devops_proxy_username

    Nazwa użytkownika dla proxy.

    Jeśli proxy nie wymaga autoryzacji, po prostu pozostaw domyślne.

  • az_devops_proxy_password

    Hasło dla proxy.

    Ponownie, jeśli proxy nie wymaga autoryzacji, po prostu pozostaw domyślne.

    Uwaga: Rozważ użycie Ansible Vault, aby zabezpieczyć tę wartość.

  • az_devops_agent_user_capabilties

    Słownik zmiennych środowiskowych do ustawienia dla procesu agenta, które przekładają się na możliwości użytkownika, co może być pomocne w określaniu wymagań pipeline'a wydania

    Przykład użycia:

    - az_devops_agent_user_capabilties:
      user_capabilty_key: user_capability_value

Przykładowe Playbooki

Agent budowy

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: build
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***

Agent wdrożenia

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: deployment
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_project_name: baz
    - az_devops_deployment_group_name: fubar_group
    - az_devops_deployment_group_tags: "web,prod"

Zasób

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: resource
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_project_name: baz
    - az_devops_environment_name: staging

Proxy

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: build
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_proxy_url: "http://127.0.0.1:8080"
    - az_devops_proxy_username: bob
    - az_devops_proxy_password: ***

Licencja

Copyright © 2020, GSoft inc. Ten kod jest licencjonowany na podstawie Licencji Apache, Wersja 2.0. Możesz uzyskać kopię tej licencji pod adresem https://github.com/gsoft-inc/gsoft-license/blob/master/LICENSE.

Zainstaluj
ansible-galaxy install gsoft.azure_devops_agent
Licencja
Unknown
Pobrania
13k
Właściciel
Workleap is the one simple employee experience platform to elevate hybrid work