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
Si no tiene una cuenta de Trello, regístrese en Trello.
Vaya a la página Autorizar Azure DevOps Services para Trelloe inicie sesión con sus credenciales de Trello.
Permitir que Azure DevOps use su cuenta de Trello.
Copie el token de autorización.
Cree una tarjeta o una lista de Trello a partir de un evento de Azure DevOps Services.
Vaya a la página Service Hooks del proyecto:
https://{orgName}/{project_name}/_settings/serviceHooks
Seleccione Crear suscripción.
Elija el servicio Trello.
Página de servicio
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.
Configure la acción que Realizará Trello en respuesta al desencadenador: cree una tarjeta o una lista.
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!".
Pruebe la suscripción de enlace de servicio y finalice el asistente.
Ahora ya está configurado. Vaya a Trello y vea que aparecen las tarjetas.
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.