[PAGADO] Sincronización de contenido de Github a Discourse (archivo de repositorio → tema)

¿Qué te gustaría que se hiciera?

  • Crear un plugin para Discourse que publique contenido desde archivos específicos dentro de un repositorio directamente en un tema.
    • El caso de uso previsto para un plugin de este tipo sería gestionar el contenido primero en GitHub (con control de versiones, issues, pull requests, etc.), pero manteniendo siempre la cabeza sincronizada con un tema específico.
    • Los casos de uso incluirían cosas como manuales, una base de conocimientos o un repositorio de ideas.
      • Muy específicamente, nuestro caso de uso interno es que estamos usando Discourse como nuestro centro de conocimiento, pero queremos un control más afinado sobre la actualización y edición del contenido, y ahí es donde entra el flujo de Git.
  • Algunas notas adicionales:
    • Solo necesita funcionar con archivos .md.
    • Nos encantaría que esto fuera de código abierto (nosotros cubriremos los costos iniciales de desarrollo).

¿Cuándo lo necesitas hecho?

  • El plazo no es inmediato, pero en los próximos meses.

¿Cuál es tu presupuesto, en dólares estadounidenses (USD), que puedes ofrecer por esta tarea?

  • Ni siquiera estamos completamente claros sobre el alcance, así que primero tendríamos que determinarlo.
  • Estamos abiertos a ofertas.
4 Me gusta

¿Qué es lo que falta en Discourse en este aspecto? ¿Podría mejorarse Discourse para satisfacer vuestras necesidades y así no tener que usar GitHub en absoluto?

Mencionáis las solicitudes de extracción (pull requests), así que tal vez la necesidad sea la capacidad de solicitar cambios que luego sean revisados y aprobados por otra persona antes de que el cambio se finalize. Supongo que esto podría hacerse “a la manera de Discourse” respondiendo al post para solicitar una revisión o asignándolo a alguien después de realizar el cambio. He tenido cierto éxito configurando un temporizador de tema para eliminar automáticamente las respuestas, de modo que el tema no se vea abrumado por muchas respuestas pequeñas.

Otra idea sería usar el plugin de políticas. Un grupo podría ser notificado cuando un tema se modifica y se le solicitaría confirmar que ha leído y acepta el cambio.

Dicho todo esto, creo que es una idea bastante genial y me gustaría verla implementada. Puedo ver que esto sería útil incluso para Meta. Tenemos muchos temas aquí sobre repositorios de GitHub y sería agradable ver las actualizaciones de esos archivos readme.md de los repositorios en el primer post (OP) para que no tengan que mantenerse en dos lugares.

Para Discourse for Teams también podría ser una función útil, de modo que los equipos que usan GitHub intensivamente también puedan seguir usando Teams como su “fuente única de verdad” de referencia, sin que todos tengan que iniciar sesión en GitHub constantemente. Supongo que podría ser parte o un complemento del plugin de revisión de código.

2 Me gusta

Lo más importante aquí es la ramificación (branching). La motivación central es, de hecho, que exista un mecanismo que permita ramificar, mejorar, revisar y luego fusionar algo. De manera similar, permite que un revisor siga un proceso parecido, donde realiza cambios más menores en la propia rama, brindando un control más preciso sobre las modificaciones.

Aunque me encantaría que fuera así, las piezas que faltan son un poco no triviales:

  • Ramificación (branching)
  • Fusión de cambios con un solo clic

Ese es un gran truco para cualquiera que no le importe tanto el aspecto de la ramificación como yo en este caso.

Siento que esto podría ser enormemente útil de muchas maneras. Cada vez que encuentre a la persona adecuada para contratar para esto, me encantaría colaborar un poco. Quizás esta herramienta eventualmente pueda convertirse en un plugin “oficial” (uno solo puede esperar).

2 Me gusta

Si el caso de uso central son los archivos .md y un lenguaje común, aún creo que Discourse tiene una gran ventaja: es conversacional y permite que las personas realmente hablen entre sí en un lenguaje sencillo. Como bien dijiste, generalmente quieres que esa conversación sobre el conocimiento ocurra en Discourse. Por lo tanto, creo que vale la pena explorar cómo mantener la mayor parte de todo allí mismo; de lo contrario, desviarás la atención y el enfoque de lo que querrías como tu plataforma principal.

Podría imaginar una configuración como:

  • Un archivo Readme.md como un tema de wiki en Discourse, sincronizado con GitHub.
  • Discusiones sobre este Readme como publicaciones de seguimiento en Discourse, eliminadas regularmente (similar a la configuración actual en meta).
  • Archivos y carpetas adicionales en un repositorio gestionados en GitHub con ramificación. La estructura actual del repositorio podría sincronizarse con Discourse, de modo que aparezca junto con la publicación de wiki como un índice.
2 Me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.