Uso de Azure Pipelines con Slack

Azure DevOps Services

Con la aplicación Azure Pipelines para Slack, los usuarios de Slack pueden realizar fácilmente un seguimiento de los eventos que se producen dentro de sus canalizaciones. La aplicación permite a los usuarios establecer y supervisar suscripciones para varios eventos de canalización, como compilaciones, versiones, aprobaciones pendientes, etc. Las notificaciones de estos eventos se entregan directamente a los canales de Slack de los usuarios.

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

  • En Slack, debe tener permiso para instalar una aplicación en el área de trabajo de Slack.
  • Para Azure DevOps, debe estar en el grupo Administradores de colecciones de proyectos o Administradores de proyectos para configurar una suscripción de Slack.

Instalación de la aplicación Azure Pipelines

Vaya a la aplicación Azure Pipelines para Slack para instalar la aplicación Azure Pipelines en el área de trabajo de Slack. Una vez que la agrega, verá el mensaje de bienvenida de la aplicación que se muestra a continuación. Use el identificador /azpipelines para empezar a interactuar con la aplicación.

A screenshot showing the Azure Pipelines app welcome message.

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. Se le pedirá que se autentique en Azure Pipelines antes de ejecutar cualquier comando.

A screenshot showing the sign-in prompt message.

Para empezar a supervisar todas las canalizaciones de un proyecto, use el comando de barra diagonal siguiente dentro de un canal:

/azpipelines subscribe [project url]

La dirección URL del proyecto puede vincularse a cualquier página del proyecto (excepto las direcciones URL de las canalizaciones). Por ejemplo: /azpipelines subscribe https://dev.azure.com/myorg/myproject/

También puede supervisar una canalización específica mediante el siguiente comando:

/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 o: /azpipelines subscribe https://dev.azure.com/myorg/myproject/_release?definitionId=123&view=mine_a=releases

El comando subscribe le permite empezar a usar algunas suscripciones de manera predeterminada. Estas son las notificaciones predeterminadas habilitadas para el siguiente tipo de canalización:

Canalizaciones de compilación Canalizaciones de versión Canalizaciones de YAML
Notificación de Compilación completada Notificaciones de Implementación de versión iniciada, Implementación de versión completada y Aprobación de implementación de versión pendiente Notificaciones de El estado de la fase de ejecución ha cambiado y La fase de ejecución está pendiente de aprobación

A screenshot showing notification example.

Administrar suscripciones

Para administrar las suscripciones de un canal, use el siguiente comando: /azpipelines subscriptions

Este comando muestra todas las suscripciones actuales para el canal y permite agregar o quitar suscripciones.

Nota:

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

A screenshot showing a list of subscriptions.

Personalización de suscripciones

De manera predeterminada, al suscribirse a una canalización, se generan varias suscripciones que no tienen ningún filtro aplicado. Sin embargo, es habitual que los usuarios quieran personalizar estas suscripciones según sus preferencias. Por ejemplo, es posible que los usuarios deseen recibir notificaciones solo para compilaciones con errores o cuando se realicen implementaciones en el entorno de producción. La aplicación Azure Pipelines ofrece la opción de aplicar filtros, lo que permite a los usuarios personalizar los mensajes que reciben en su 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. Cuando haya terminado, haga clic en Guardar.

Ejemplo: Obtener notificaciones solo para compilaciones con errores

A screenshot showing a list how to add a custom new subscription.

Aprobación de implementaciones

Puede aprobar implementaciones desde el canal de Slack sin navegar al portal de Azure Pipelines si se suscribe a las notificaciones Aprobación de implementación de versión pendiente (versiones clásicas) o las notificaciones La fase de ejecución está pendiente de aprobación (canalizaciones de YAML). Ambas suscripciones se crean de manera predeterminada cuando se suscribe a una canalización.

A screenshot showing pipeline approval in Slack.

La aplicación Azure Pipelines para Slack le permite controlar todas las comprobaciones y los escenarios de aprobación que están disponibles en el portal de Azure Pipelines. Aquí se incluyen un aprobador único, varios aprobadores y aprobación en equipo. Tiene la opción de aprobar solicitudes individualmente o en nombre de un equipo.

A screenshot showing a predeployment pipeline approved in Slack.

Eliminación de todas las suscripciones

Para despejar el canal, puede usar los siguientes comandos para cancelar la suscripción de todas las canalizaciones de un proyecto. Por ejemplo: /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject.

/azpipelines unsubscribe all [project url]

Importante

Solo los administradores del proyecto pueden ejecutar este comando.

Referencia de comandos

Estos son todos los comandos que admite la aplicación Azure Pipelines para Slack:

Comando de barra oblicua Funcionalidad
/azpipelines subscribe [pipeline url/ project url] Suscribirse a una canalización o a todas las canalizaciones de un proyecto para recibir notificaciones
/azpipelines subscriptions Agregar o quitar suscripciones de este canal
/azpipelines feedback Notificar un problema o sugerir una característica
/azpipelines help Obtener ayuda sobre los comandos de barra oblicua
/azpipelines signin Iniciar sesión en la cuenta de Azure Pipelines
/azpipelines signout Cerrar sesión en la cuenta de Azure Pipelines
/azpipelines unsubscribe all [project url] Quitar todas las canalizaciones (que pertenecen a un proyecto) y sus suscripciones asociadas de un canal

Notificaciones en canales privados

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

Nota:

  • En este momento, solo puede usar la aplicación Azure Pipelines para Slack con un proyecto hospedado en Azure DevOps Services.
  • El usuario debe ser un administrador del proyecto que contiene la canalización para configurar las suscripciones.
  • Actualmente, no se admiten notificaciones dentro de mensajes directos.
  • No se admiten las aprobaciones de implementación en las que se aplica la directiva "Volver a validar la identidad del aprobador antes de completar la aprobación".
  • El "acceso a aplicaciones de terceros a través de OAuth" debe estar habilitado para recibir notificaciones para la organización en Azure DevOps (Configuración de la organización -> Seguridad -> Directivas).

Solución de problemas

Si experimenta los siguientes errores al usar la aplicación Azure Pipelines para Slack, siga los procedimientos descritos en esta sección.

Algo ha ido mal. 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 Configuración de la organización>Seguridad>Directivas y active el acceso a aplicaciones de terceros a través de OAuth para la organización.

A screenshot showing how to enable third party access via OAuth.

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

Cierre sesión en Azure DevOps; para ello, vaya a esta dirección URL: https://aka.ms/VsSignout.

Abra una ventana privada del explorador, o en modo incógnito, vaya a https://aex.dev.azure.com/me e inicie sesión. Seleccione el directorio que contiene la organización en la que se encuentra la canalización a la que desea suscribirse.

A screenshot showing how to select your pipeline directory.

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

Seleccione el botón Sign in y se lo redirigirá a una página de consentimiento, tal como se muestra en el ejemplo siguiente. Compruebe que el directorio que se muestra junto a la dirección de correo electrónico coincide con el seleccionado en el paso anterior. Seleccione Aceptar para finalizar el proceso de inicio de sesión.

A screenshot showing how to allow pipelines slack integration.