Compartir a través de


Creación de un enlace de servicio para Azure DevOps Services y TFS con Trello

Azure DevOps Services | Azure DevOps Server 2022: Azure DevOps Server 2019

Cree tarjetas y listas en Trello en respuesta a eventos de Azure DevOps. Por ejemplo, cuando se inserta código o se produce una compilación.

Prerrequisitos

Categoría Requisitos
Permisos - Miembro del grupo de Administradores de la colección de proyectos. Los propietarios de la organización son miembros automáticamente de este grupo.
- Editar suscripciones y Ver suscripciones permisos establecidos en Permitir. De forma predeterminada, solo los administradores del proyecto tienen estos permisos. Para conceder los permisos a otros usuarios, puede usar la herramienta de línea de comandos o la API REST de Security.
Herramientas Trello

Obtención de un token de autorización de Trello

  1. Si no tiene una cuenta de Trello, regístrese en Trello.

  2. Vaya a la página Autorizar Azure DevOps Services para Trelloe inicie sesión con sus credenciales de Trello.

  3. Permitir que Azure DevOps use su cuenta de Trello.

    Permitir el uso de Azure DevOps Services

  4. Copie el token de autorización.

    token de autorización de Trello

Cree una tarjeta o una lista de Trello a partir de un evento de Azure DevOps Services.

  1. Vaya a la página Service Hooks del proyecto:

    https://{orgName}/{project_name}/_settings/serviceHooks

    página de administración de proyectos

    Seleccione Crear suscripción.

  2. Elija el servicio Trello.

    Página de servicio Página de servicio, Trello seleccionado

  3. Configure el evento desencadenador de Visual Studio. En este caso, vamos a hacer que la suscripción responda cuando se cree un elemento de trabajo.

    Página de configuración del desencadenador

  4. Configure la acción que Realizará Trello en respuesta al desencadenador: cree una tarjeta o una lista.

    página de configuración de acción

    Puede utilizar marcadores de posición para insertar contenido del evento en el nombre y la descripción de las tarjetas o listas que crea la suscripción. Por ejemplo, cuando ejecutamos la notificación de prueba, la tarjeta que se crea se denomina "Bug #5: Some great new idea!" porque el elemento de trabajo de prueba es un error (ID=5) con el título "Some great new idea!".

  5. Pruebe la suscripción de enlace de servicio y finalice el asistente.

    notificación de prueba

Ahora ya está configurado. Vaya a Trello y vea que aparecen las tarjetas.

Tablero de bienvenida con una tarjeta para el error nº 5

Marcadores de posición

Puede insertar marcadores de posición en el nombre de una lista o en el nombre o descripción de una tarjeta que vaya a crear su suscripción. Cuando se cree una lista o tarjeta, los marcadores de posición se sustituirán por los valores del evento que se haya planteado. En el ejemplo que usamos para el nombre de la tarjeta de esta página se usa:

    {{workitem.workItemType}} #{{workitem.id}}: {{workitem.title}}

Así, cuando se crea un fallo con el ID 5 y el título "¡Una nueva gran idea!", el nombre de la tarjeta es "Fallo nº 5: ¡Una nueva gran idea!".

La forma básica del marcador de posición es {{resource.field}} donde resource es el nombre del recurso que genera el evento (work item, build, etc.) y field es un campo dentro de la sección de recursos del evento, como ID. Así, si la suscripción es para una construcción completada, podría ser algo como

    Build {{build.id}} completed at {{build.finishTime}}

Donde build es el nombre del recurso y ID, finishTime son los campos disponibles en este recurso. Para comprender los tipos de eventos, los campos y los recursos disponibles para su uso, consulte la referencia de eventos .

Campos de elementos de trabajo

Los campos de elementos de trabajo aparecen en el evento en la matriz de campos, como en este ejemplo:

    " fields": {
                " System.AreaPath": "Fabrikam-Fiber-Git", 
                " System.TeamProject": "Fabrikam-Fiber-Git", 
                " System.IterationPath": "Fabrikam-Fiber-Git", 
                " System.WorkItemType": "Product Backlog Item", 
                " System.State": "New", 
                " System.Reason": "New backlog item", 
                " System.CreatedDate": "2014-11-05T21:11:28.85Z", 
                " System.CreatedBy": "Normal Paulk", 
                " System.ChangedDate": "2014-11-05T21:11:29.23Z", 
                " System.ChangedBy": "Normal Paulk", 
                " System.Title": "Test PBI", 
                " Microsoft.Azure DevOps Services.Common.BacklogPriority": 999999999, 
                " WEF_6CB513B6E70E43499D9FC94E5BBFB784_Kanban.Column": "New"
           },

Trabajando directamente desde la definición del evento, habríamos creado el nombre de la tarjeta como este ejemplo:

    {{workitem.fields["System.workItemType"]}} #{{workitem.fields["System.id"]}: {{workitem.fields["System.title"]}}

Como método abreviado, puedes hacer referencia a cualquier campo de los espacios de nombres System o Microsoft.Azure DevOps Services.Common como si fueran campos del recurso. Por lo tanto, {{workitem.fields["System.workItemType"]}} se convierte en {{workitem.workItemType}}.

Expresiones de marcador de posición

Estos marcadores de posición utilizan una implementación de plantillas handlebars que es ampliamente compatible con Mustache. Algunas expresiones útiles incluyen

Tipo de expresión Ejemplos
expresiones básicas {{workitem.name}}
expresiones de matriz {{pullRequest.reviewers.[0].displayName}}
Secciones de Mustache {{#workitem.assignedTo}} A este WI se le asigna {{/workitem.assignedTo}}
Secciones invertidas de Mustache {{^workitem.assignedTo}} A este WI no se le asigna {{/workitem.assignedTo}}
Ayudantes de bloque del Handlebar con
if/else
a menos que
cada
Rutas de Handlebars ...
this
Por ejemplo, {{../comment/id}} o {{this/title}}
Comentarios de plantilla {{!-- this is a handlebar comment --}}

Precios

Azure DevOps no cobra por el marco de trabajo para la integración con servicios externos. Consulte el sitio del servicio específico para conocer los precios relacionados con sus servicios.

Preguntas y respuestas

P: ¿Puedo crear suscripciones mediante programación?

R: Sí, consulte aquí los detalles .

P: ¿Puedo obtener más información sobre Trello?

R: Sí, trello.com.