Azure Repos con Slack

Azure DevOps Services

Si usa Slack, puede usar la aplicación Azure Repos para Slack para supervisar fácilmente los repositorios de Azure Repos. Configure y administre suscripciones para recibir notificaciones en el canal siempre que se inserte o registre el código y cada vez que se cree, actualice o combine una solicitud de incorporación de cambios (PR). Esta aplicación admite eventos de Git y Control de versiones de Team Foundation (TFVC).

Requisitos previos

Nota:

  • Solo puede vincular la aplicación de Azure Repos para Slack a un proyecto hospedado en Azure DevOps Services en este momento.
  • Actualmente no se admiten notificaciones dentro de mensajes directos.

Añadir la aplicación Azure Repos al área de trabajo Slack

  1. Vaya a la aplicación de Slack de Azure Repos y seleccione Agregar a Slack.

    Captura de pantalla del directorio de aplicaciones de Slack, Azure Repos y el botón Agregar a Slack.

    Una vez agregado, recibirá un mensaje de bienvenida similar al siguiente.

    Captura de pantalla del mensaje de bienvenida de Slack.

  2. Use el identificador de Slack /azrepos para interactuar con la aplicación. Se proporciona una lista completa de comandos en la sección Referencia de comandos de este artículo.

Conexión de la aplicación Azure Repos a los repositorios

  1. Conéctese y autentíquese en Azure Repos mediante el comando /azrepos signin.

    Captura de pantalla del mensaje de inicio de sesión para Slack.

  2. Seleccione Iniciar sesión.

  3. Acepte la integración de Slack de Azure Repos.

    Captura de pantalla del botón Aceptar en la pantalla de inicio de sesión resultante.

    Se muestra un código de verificación que se usa en la aplicación de chat para completar la autenticación.

  4. Copie el código de autenticación.

    Captura de pantalla del código de verificación proporcionado por Azure Repos.

  5. Seleccione Introducir código, pegue el código y, a continuación, seleccione Enviar.

    Captura de la pantalla de autenticación final cuando se pega el código de verificación y, a continuación, se selecciona el botón Enviar.

    Pantallas de confirmación de inicio de sesión en el chat.

    Captura de pantalla que muestra la confirmación de inicio de sesión en el chat.

Para empezar a supervisar todos los repositorios de Git de un proyecto, use el siguiente comando de barra diagonal dentro de un canal:

/azrepos subscribe [project url]

La dirección URL del proyecto puede estar en cualquier página del proyecto (excepto las direcciones URL de los repositorios). Por ejemplo:

/azrepos subscribe https://dev.azure.com/myorg/myproject/

También puede supervisar un repositorio específico mediante el siguiente comando:

/azrepos subscribe [repository url]

La dirección URL del repositorio puede ser en cualquier página del repositorio que tenga el nombre del repositorio. Por ejemplo, para repositorios de Git, use:

/azrepos subscribe https://dev.azure.com/myorg/myproject/_git/myrepository

Para los repositorios de TFVC, use:

/azrepos subscribe https://dev.azure.com/myorg/myproject/_versionControl

Nota:

Solo puede suscribirse a repositorios públicos.

El comando suscribir le ayudará a empezar con una suscripción predeterminada. En el caso de los repositorios de Git, el canal se suscribe al evento Solicitud de incorporación de cambios creada (con la rama de destino = main) y, en el caso de los repositorios de TFVC, el canal se suscribe al evento Código protegido.

Captura de pantalla que muestra el mensaje de creación de suscripciones predeterminadas.

Administrar suscripciones

Para ver, agregar o quitar suscripciones para un canal, use el comando siguiente subscriptions:

/azrepos subscriptions

Este comando enumera todas las suscripciones actuales para el canal y permite agregar nuevas suscripciones o quitar las existentes. Al agregar suscripciones, puede personalizar las notificaciones que obtiene mediante varios filtros, como se describe en la sección siguiente.

Nota:

Los administradores del equipo no pueden quitar ni modificar suscripciones que hayan creado los administradores del proyecto.

Captura de pantalla que muestra la vista de la lista de suscripciones.

Uso de filtros para personalizar suscripciones

Cuando un usuario se suscribe a un repositorio mediante el comando /azrepos subscribe, se crea una suscripción predeterminada. A menudo, los usuarios necesitan personalizar estas suscripciones. Por ejemplo, es posible que los usuarios quieran recibir notificaciones solo cuando las solicitudes de incorporación de cambios tengan un revisor específico.

En los pasos siguientes se muestra cómo personalizar las suscripciones.

  1. Ejecute el comando /azrepos subscriptions.
  2. En la lista de suscripciones, si hay una suscripción que no es deseada o que debe modificarse (por ejemplo, crea ruido en el canal), seleccione el botón Eliminar.
  3. Seleccione el botón Agregar suscripción.
  4. Seleccione el repositorio necesario y el evento deseado.
  5. Seleccione los filtros apropiados.

Ejemplo: Obtener notificaciones solo cuando mi equipo está en la lista de revisores de una solicitud de incorporación de cambios

Captura de pantalla que muestra El revisor tiene mi equipo.

Ejemplo: Dígame cuándo se produce un error en los intentos de combinación debido a una infracción de directiva

Captura de pantalla que muestra que el intento de combinación no se ha realizado correctamente debido a una infracción de la política.

Nota:

  • Todos los filtros suelen ser listas desplegables. Pero si el menú desplegable tiene más de 100 elementos, los usuarios deben introducir los valores manualmente.
  • Para el evento Código insertado en el repositorio de TFVC, el filtro Bajo la ruta debe tener el formato $/myproject/path.

Vista previa de las direcciones URL de PR

Cuando un usuario pega la dirección URL de una solicitud de incorporación de cambios, se muestra una vista previa como la siguiente imagen, que ayuda a mantener las conversaciones relacionadas con las solicitudes de incorporación de cambios contextuales y precisas.

Captura de pantalla que muestra el despliegue de la URL.

Una vez que los usuarios inician sesión, esta función funciona para todos los canales de un espacio de trabajo.

Eliminar suscripciones y repositorios de un canal

Use el siguiente comando para limpiar el canal mediante la eliminación de repositorios y suscripciones.

/azrepos unsubscribe all [project url]

Por ejemplo, el siguiente comando elimina todas las suscripciones relacionadas con cualquier repositorio del proyecto y quita los repositorios del canal. Solo los administradores del proyecto pueden ejecutar este comando.

/azrepos unsubscribe all https://dev.azure.com/myorg/myproject

Referencia de comandos

En la tabla siguiente se enumeran todos los elementos /azrepos commands que puede usar en el canal de Slack.

Comando de Slash Funcionalidad
/azrepos subscribe [url del repositorio/ url del proyecto] Suscribirse a un repositorio o a todos los repositorios de un proyecto para recibir notificaciones
/azrepos subscriptions Agregar o quitar suscripciones de este canal
/azrepos signin Iniciar sesión en la organización de Azure Repos
/azrepos signout Cerrar sesión de la organización de Azure Repos
/azrepos feedback Notificar un problema o sugerir una característica
/azrepos unsubscribe all [project url] Quitar todos los repositorios (que pertenecen a un proyecto) y sus suscripciones asociadas de un canal

Notificaciones en canales privados

La aplicación Azure Repos también puede ayudarle a supervisar los eventos del repositorio en los canales privados. Para invitar al bot a su canal privado, utilice /invite @azrepos. Luego, puede administrar sus notificaciones de la misma manera que lo haría para un canal público.

Solución de problemas

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

Algo ha ido mal. Inténtelo de nuevo.

La aplicación Azure Repos usa el protocolo de autenticación de OAuth y requiere que la opción Third-party application access via OAuth for the organization (Acceso a aplicaciones de terceros mediante OAuth para la organización) esté habilitada. Para habilitar esta configuración, vaya a Configuración de la organización>Seguridad>Directivas y establezca la configuración de Third-party application access via OAuth for the organization (Acceso a aplicaciones de terceros mediante OAuth para la organización) en Activado.

Habilitación de la configuración de Acceso a aplicaciones de terceros mediante OAuth para la organización

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

Cierre la sesión en Azure DevOps; para ello, vaya a https://aka.ms/VsSignout mediante el explorador.

Abra una ventana del explorador Privada o en modo Incógnito, vaya a https://aex.dev.azure.com/me e inicie sesión. En la lista desplegable del icono de perfil situado a la izquierda, seleccione el directorio que incluye la organización que contiene el repositorio al que quiere suscribirse.

Selección del directorio que incluye la organización que contiene el proyecto

En el mismo explorador, inicie una nueva pestaña, vaya a https://slack.com, e inicie sesión en el área de trabajo (use el cliente web). Ejecute el comando /azrepos signout seguido del comando /azrepos signin.

Seleccione el botón Sign in y se le redirigirá a una página de consentimiento como la del ejemplo siguiente. Asegúrese de que el directorio que se muestra junto al correo electrónico es el mismo que el seleccionado en el paso anterior. Acepte y complete el proceso de inicio de sesión.

Captura de pantalla que muestra el consentimiento para los permisos de aplicación solicitados.

Si estos pasos no resuelven el problema de autenticación, póngase en contacto con nosotros en Developer Community.