gsoft.azure_devops_agent

Agente de Azure DevOps

Un rol de Ansible que instala y configura una máquina Linux para ser utilizada como un agente de construcción o despliegue de Azure DevOps.

Consulta este artículo del blog para más detalles.

Requisitos

Consulta los requisitos previos

La instalación en MacOS puede ser problemática si se intenta usar un usuario administrador para conectarse y otro usuario para ejecutar el servicio. pipelining = True puede ayudar, especialmente si encuentras problemas donde el usuario del agente de DevOps no puede acceder a los archivos temporales que Ansible está creando.

Variables del Rol

A continuación se enlistan las variables disponibles, junto con sus valores predeterminados (ver 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

    El nombre de tu cuenta de Azure DevOps, es decir, https://dev.azure.com/YOUR_ACCOUNT_NAME

  • az_devops_accesstoken

    El Token de Acceso Personal (PAT) utilizado para autenticarte en tu cuenta. Consulta aquí los detalles sobre cómo generar este valor.

    Nota: Considera usar Ansible Vault para asegurar este valor.

  • az_devops_project_name

    El nombre del proyecto de Azure DevOps en el que registrar el agente (solo se usa para grupos de despliegue).

  • az_devops_agent_version

    Versión del paquete del agente instalado. Debe actualizarse periódicamente a la versión más reciente (ver aquí).

  • az_devops_agent_user

    Nombre del usuario utilizado para ejecutar y configurar el servicio.

  • az_devops_agent_uid

    UID del usuario utilizado para ejecutar y configurar el servicio.

  • az_devops_agent_group

    Grupo predeterminado del usuario utilizado para ejecutar y configurar el servicio.

  • az_devops_agent_name

    Nombre del agente que se muestra en Azure DevOps (por defecto al nombre del host).

  • az_devops_server_url

    Url para tu cuenta de Azure DevOps.

  • az_devops_agent_folder

    Ubicación de la carpeta para todos los archivos específicos del agente (nota: es importante que el usuario del servicio tenga permisos de ejecución en todos los archivos de esta carpeta).

  • az_devops_work_folder

    Ubicación de la carpeta para todos los archivos específicos del trabajo (es decir, código fuente obtenido y resultados de la construcción).

  • az_devops_agent_pool_name

    Nombre del grupo al que se añade el agente de Azure DevOps.

  • az_devops_agent_role

    Usa build, deployment o resource. El rol de construcción permite usar el agente como servidor de construcción en la construcción o lanzamientos del pipeline. El rol de despliegue permite usar el agente en un grupo de despliegue. El rol de recurso permite usar el agente como un recurso de máquina virtual que puede ser dirigido por los despliegues de un pipeline y pertenece a un entorno.

  • az_devops_deployment_group_tags

    Usar en conjunto con el rol de agente deployment. Permite usar etiquetas para identificar el agente (ej: QA, Staging, Prod, etc.)

  • az_devops_deployment_group_name

    Usar en conjunto con el rol de agente deployment. El nombre del grupo de despliegue en el que añadir el agente. Esto debe ser creado manualmente en tu proyecto de Azure DevOps previamente.

  • az_devops_environment_name

    Usar en conjunto con el rol de agente resource. El nombre del entorno en el que añadir el recurso de la VM. Esto debe ser creado manualmente en tu proyecto de Azure DevOps previamente.

  • az_devops_agent_replace_existing

    Añade el argumento --replace al script de configuración para el escenario donde necesitas reemplazar un agente existente con un nuevo host.

  • az_devops_reconfigure_agent

    Fuerza una reconfiguración del agente incluso si el servicio ya está activo.

  • az_devops_proxy_url

    La URL del servidor proxy, el formato es http://url:puerto

    Esto asume que el proxy maneja http y https.

  • az_devops_proxy_username

    Nombre de usuario para el proxy.

    Si el proxy no requiere autenticación, simplemente deja los valores predeterminados.

  • az_devops_proxy_password

    Contraseña para el proxy.

    Nuevamente, si el proxy no requiere autenticación, simplemente deja los valores predeterminados.

    Nota: Considera usar Ansible Vault para asegurar este valor.

  • az_devops_agent_user_capabilities

    Un diccionario de variables de entorno para establecer para el proceso del agente que se traducen en Capacidades de Usuario, lo cual puede ser útil para establecer demandas de pipeline de liberación.

    Ejemplo de uso:

    - az_devops_agent_user_capabilities:
      user_capabilty_key: user_capability_value

Ejemplos de Playbooks

Agente de Construcción

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

Agente de Despliegue

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

Recurso

- 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: ***

Licencia

Copyright © 2020, GSoft inc. Este código está licenciado bajo la Licencia Apache, Versión 2.0. Puedes obtener una copia de esta licencia en https://github.com/gsoft-inc/gsoft-license/blob/master/LICENSE.

Acerca del proyecto

Azure DevOps Agent for Linux.

Instalar
ansible-galaxy install gsoft.azure_devops_agent
Licencia
Unknown
Descargas
13k
Propietario
Workleap is the one simple employee experience platform to elevate hybrid work