| Resumen | Discourse Code Review permite revisar commits de GitHub en Discourse. | |
| Enlace al Repositorio | https://github.com/discourse/discourse-code-review | |
| Guía de Instalación | Cómo instalar plugins en Discourse |
Funcionalidades
¿Qué es?
El plugin Discourse Code Review proporciona una integración bidireccional con los repositorios de código de GitHub. Permite a tu equipo revisar commits en un repositorio aprovechando las funcionalidades y plugins de Discourse, como asignación, susurros, notificaciones, flujos de trabajo personalizados, etc. Cada commit en un repositorio se convierte en un tema. Las respuestas al tema se reflejan en GitHub. La integración es bidireccional, lo que significa que puedes comentar en Discourse y verlo en GitHub, o comentar en GitHub y verlo en Discourse.
Ofrece un flujo de trabajo muy potente para equipos que necesitan revisar todos los commits en cualquier número de repositorios.
Te permite asegurarte de que múltiples miembros del equipo estén al tanto de todos los cambios aplicados a los repositorios. Puedes marcar commits para seguimiento, asignar trabajo de revisión y más.
Nota: Al ver un tema que puede ser aprobado, puedes usar el botón y en tu teclado para aprobar commits más rápido.
¿Puedo verlo en acción?
Discourse mantiene https://review.discourse.org/; este sitio es público y cualquiera puede registrarse usando credenciales de GitHub. El sitio solo muestra un subconjunto de funcionalidades a usuarios que no son personal. Un ejemplo más completo podría ser:
En GitHub, el mismo tema se ve así:
Configuración
El plugin depende de webhooks de GitHub para descubrir repositorios y cambios en ellos. Para una configuración mínima, necesitarás establecer la siguiente opción en una cadena secreta.
code review github webhook secret
Una vez establecido en tu repositorio de GitHub, configura un webhook con:
URL de carga: https://TU_DISCOURSE/code-review/webhook
Tipo de contenido: application/json
Secreto: el valor de code review github webhook secret
Tipos de eventos:
- Comentarios sobre commits
- Comentarios sobre issues
- Solicitudes de pull request
- Revisiones de pull request
- Comentarios sobre revisiones de pull request
- Pushes
El plugin proporciona las siguientes configuraciones adicionales del sitio:
code review api username: GitHub es muy restrictivo con la cantidad de solicitudes de API anónimas que permite; esta opción te permite usar las claves de cuenta de un usuario de Discourse para las solicitudes /comments y /commit. Esto reduce significativamente las posibilidades de alcanzar los límites de velocidad.
code review catch up commits: número de commits para “ponerse al día” y crear temas cuando encuentres un nuevo repositorio.
code review default parent category: elige una categoría padre predeterminada para las categorías creadas por el plugin.
code review pending tag: etiqueta a aplicar a todos los commits no revisados, pending por defecto.
code review approved tag: etiqueta a aplicar a los commits aprobados, approved por defecto.
code_review_followup_tag: etiqueta a aplicar a los commits de seguimiento, follow-up por defecto.
code review allow self approval: ¿Se permite al personal aprobar sus propios commits?
code review default mute new categories: las nuevas categorías creadas por Code Review están silenciadas para los usuarios por defecto.
code review skip duration minutes: hacer clic en el botón de omitir en un commit evitará que ese commit vuelva a aparecer durante el número de minutos establecido por esta opción.
REGISTRO DE CAMBIOS
PENDIENTES
Extras
Cómo Discourse Utiliza Este Plugin
TL;DR: Este plugin fue diseñado para complementar el uso que el equipo de Discourse hace de GitHub para la revisión de código.
Más información
De @sam:
Todavía usamos PRs a través de la interfaz de GitHub y nos encanta hacer PRs para muchos cambios. Nada ha cambiado aquí. GitHub es fantástico, nos encanta GitHub. Tienen un excelente flujo de trabajo para cambios que aún no han sido integrados. Sin embargo…
El flujo de trabajo de GitHub para cambios que han sido confirmados directamente en el repositorio es terrible.
Review llena un vacío que simplemente no puede ser cubierto con GitHub hoy en día; nos gustaría que al menos un miembro del equipo revise cada cambio realizado en nuestros diversos repositorios git propiedad de Discourse. Si utilizamos la interfaz proporcionada por GitHub, nadie nunca tendrá permitido hacer otra cosa que no sean solicitudes de pull request. Esto nos ralentizaría enormemente.
Necesitamos la capacidad de comunicarnos de forma privada sin que el mundo entero lo sepa con respecto a ciertos cambios. Por ejemplo: Es mejor implementar esta increíble corrección en
<insertar nombre de gran empresa>lo antes posible, @sam ¿puedes encargarte de ello?Necesitamos la capacidad de aprobar cambios realizados o solicitar seguimiento, algo que la interfaz de GitHub no ofrece.
Necesitamos la capacidad de asignar commits particulares a un usuario. Digamos que @sam hace un commit que contiene algunos errores. Es bueno que podamos asignarle directamente ese commit, marcarlo para seguimiento y luego hacer un seguimiento de que se está realizando.
Discourse es bastante fantástico en todo esto de la conversación, y las pequeñas funcionalidades marcan una gran diferencia: puedo ver cuándo la gente está escribiendo. Nunca necesito refrescar las páginas para que aparezcan los cambios. Las citas son realmente agradables, las cargas de imágenes también, y así sucesivamente.
Discourse es muy bueno con el estado de lectura; obtienes garantías muy sólidas de que has leído cada cosa una vez. Con GitHub, no tengo idea de qué commits he leído y cuáles no. Tenemos una manera increíblemente eficiente de hacer frente a la avalancha de información.
Y la lista continúa…
Así que Review actúa como complemento de GitHub; usamos GitHub en este momento para manejar cambios que aún no han sido integrados. Y usamos Review para manejar adecuadamente los cambios que ya han sido integrados.

