Uso de Azure Pipelines con Slack

Azure DevOps Services

En este artículo se muestra cómo usar la aplicación Azure Pipelines para Slack para supervisar los eventos de canalización. Puede establecer y administrar suscripciones para eventos de canalización, como compilaciones, versiones y aprobaciones pendientes. Las notificaciones de estos eventos se entregan directamente a los canales de Slack.

Nota:

Esta característica solo está disponible en Azure DevOps Services. Normalmente, las nuevas características se introducen primero en el servicio en la nube y, luego, se pone a disposición local en la siguiente versión principal o actualización de Azure DevOps Server. Para más información, consulte Escala de tiempo de características de Azure DevOps.

Requisitos previos

  • Una cuenta de Slack con permiso para instalar una aplicación en el área de trabajo de Slack.
  • Un proyecto de Azure DevOps con permisos de administradores de colecciones de proyectos o administradores de proyectos.

Instalación de la aplicación Azure Pipelines

Instale la aplicación Slack de Azure Pipelines en el área de trabajo de Slack. Una vez que se instala la aplicación, verá el siguiente mensaje de bienvenida. Escriba /azpipelines para empezar a interactuar con la aplicación.

Captura de pantalla que muestra el mensaje de bienvenida de la aplicación Azure Pipelines.

Conéctese a la canalización

Una vez instalada la aplicación en el área de trabajo de Slack, puede conectar la aplicación a cualquier canalización que quiera supervisar. Debe autenticarse en Azure Pipelines antes de ejecutar los comandos.

Captura de pantalla que muestra el mensaje de solicitud de inicio de sesión.

Suscripción a canalizaciones

Para empezar a supervisar todas las canalizaciones de un proyecto, escriba /azpipelines subscribe <project url> en un canal y reemplace por <project url> la dirección URL del proyecto de Azure DevOps. La dirección URL del proyecto puede vincularse a cualquier página del proyecto, excepto las páginas de canalización, por ejemplo /azpipelines subscribe https://dev.azure.com/myorg/myproject/.

Puede supervisar una canalización específica mediante /azpipelines subscribe <pipeline url>. La dirección URL de la canalización puede vincularse a cualquier página de la canalización que tenga definitionId o buildId/releaseId en la dirección URL. Por ejemplo:

  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_build?definitionId=123
  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_release?definitionId=123&view=mine&_a=releases

El subscribe comando le suscribe a las siguientes notificaciones de forma predeterminada:

  • Para canalizaciones de YAML:
    • Estado de fase de ejecución cambiado
    • Fase de ejecución en espera de aprobación
  • Para canalizaciones de compilación clásicas, compilaciones completadas
  • Para canalizaciones de versión clásicas:
    • Implementación de versión iniciada
    • Implementación de versión completada
    • Aprobación de implementación de versión pendiente

Captura de pantalla que muestra una notificación de ejemplo.

Administrar suscripciones

Para administrar las suscripciones de un canal, escriba /azpipelines subscriptions. Este comando muestra todas las suscripciones actuales para el canal y le permite agregar o quitar suscripciones.

Captura de pantalla que muestra una lista de suscripciones.

Nota:

Los administradores del equipo no pueden quitar ni modificar suscripciones creadas por los administradores de proyectos.

Personalización de suscripciones

Las suscripciones predeterminadas no tienen ningún filtro aplicado, pero puede personalizar estas suscripciones según sus preferencias. Por ejemplo, es posible que quiera recibir notificaciones solo para compilaciones o implementaciones con errores en producción. Puede aplicar filtros para personalizar los mensajes que recibe en el canal.

Para personalizar una suscripción:

  1. Ejecute el comando /azpipelines subscriptions para enumerar todas las suscripciones.
  2. Seleccione Agregar suscripción.
  3. Seleccione el evento al que desea suscribirse y, a continuación, seleccione la configuración deseada.
  4. Seleccione Guardar.

Por ejemplo, para obtener notificaciones solo para compilaciones con errores, seleccione Error en Estado de compilación.

Captura de pantalla que muestra cómo personalizar una suscripción.

Aprobación de implementaciones

Puede aprobar implementaciones desde el canal de Slack sin ir a Azure Pipelines. Suscríbase a la fase de ejecución esperando notificaciones de aprobación para canalizaciones de YAML o notificaciones pendientes de aprobación de implementación de versión para versiones clásicas. Ambas suscripciones se crean de forma predeterminada al suscribirse a una canalización.

Captura de pantalla que muestra la aprobación de la canalización en Slack.

La aplicación Azure Pipelines para Slack le permite controlar todos los escenarios de comprobación y aprobación que están disponibles en el portal de Azure Pipelines. Estos escenarios incluyen aprobador único, varios aprobadores y aprobación basada en equipo. Puede aprobar solicitudes individualmente o en nombre de un equipo.

Captura de pantalla que muestra una canalización de implementación previa aprobada en Slack.

Eliminación de todas las suscripciones

Para desconcluir el canal, puede usar el comando para cancelar la /azpipelines unsubscribe all <project url> suscripción a todas las canalizaciones de un proyecto. Por ejemplo, /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject.

Importante

Solo los administradores del proyecto pueden ejecutar este comando.

Referencia de comandos

La aplicación Azure Pipelines para Slack admite los siguientes comandos:

Comando Descripción
/azpipelines subscribe <pipeline url or project url> Suscríbase a una canalización o a todas las canalizaciones de un proyecto y reciba notificaciones.
/azpipelines subscriptions Agregue o quite suscripciones para este canal.
/azpipelines feedback Notificar un problema o sugerir una característica.
/azpipelines help Obtenga ayuda sobre los comandos.
/azpipelines signin Inicie sesión en su cuenta de Azure Pipelines.
/azpipelines signout Cierre la sesión de la cuenta de Azure Pipelines.
/azpipelines unsubscribe all <project url> Quite todas las canalizaciones de proyecto y sus suscripciones asociadas de un canal.

Notificaciones en canales privados

La aplicación Azure Pipelines también puede ayudarle a supervisar la actividad de las canalizaciones en los canales privados. Debe invitar al bot al canal privado mediante /invite @azpipelines. Una vez que agregue el bot, puede configurar y controlar las notificaciones de la misma manera que para un canal público.

Condiciones y limitaciones

  • Puede usar la aplicación Azure Pipelines para Slack solo con Azure DevOps Services.
  • Para configurar las suscripciones, debe ser administrador del proyecto que contiene la canalización.
  • Las notificaciones no se admiten dentro de mensajes directos.
  • No se admiten las aprobaciones de implementación que tienen la identidad Revalidate del aprobador antes de completar la directiva de aprobación aplicada.
  • Para usar la aplicación, el acceso a aplicaciones de terceros a través de OAuth debe estar habilitado en las directivas de seguridad> de la configuración>de la organización de Azure DevOps.

Solución de problemas

Si recibe los siguientes errores al usar la aplicación Azure Pipelines para Slack, pruebe los procedimientos de esta sección.

Lo sentimos, se ha producido un error. Vuelva a intentarlo.

La aplicación Azure Pipelines usa el protocolo de autenticación de OAuth y requiere que se habilite el acceso a aplicaciones de terceros a través de OAuth. Para habilitar esta configuración, vaya a Directivas de seguridad> de configuración>de la organización y habilite el acceso a aplicaciones de terceros a través de OAuth.

Captura de pantalla que muestra cómo habilitar el acceso de terceros a través de OAuth.

Error de configuración. Asegúrese de que la organización existe y de que tiene permisos suficientes.

  1. Cierre la sesión de Azure DevOps; para ello, vaya a https://aka.ms/VsSignout.

  2. En una ventana del explorador privado o de incógnito, vaya a https://aex.dev.azure.com/me e inicie sesión. Asegúrese de seleccionar el directorio que contiene la organización que tiene la canalización.

    Captura de pantalla que muestra cómo seleccionar el directorio de canalización.

  3. En el mismo explorador, abra una nueva pestaña y vaya a https://slack.com. Inicie sesión en el área de trabajo mediante el cliente web y, a continuación, ejecute /azpipelines signout seguida de /azpipelines signin.

  4. Haga clic en el botón Sign in. Si se le redirige a una página de consentimiento, compruebe que el directorio mostrado junto a la dirección de correo electrónico coincide con el que inició sesión.