Procedimiento para actualizar plugins estándar

Tengo un sitio Discourse pequeño, autoalojado, creado con una instalación estándar de Docker. He instalado muchos complementos a lo largo de los años editando los hooks al final del archivo containers/app.yml para hacer git clone de un repositorio de complementos. También he hecho algo de desarrollo de complementos.

Sin embargo, hace unos meses, muchos complementos estándar se fusionaron en el núcleo de Discourse. Supongamos que hago un fork de todo el repositorio de Discourse, edito uno de esos complementos (por ejemplo, discourse-math), y consigo que los cambios funcionen perfectamente en mi entorno de desarrollo local. ¿Cuál es el procedimiento para introducir este nuevo complemento en mi instancia de producción de Discourse?

curiosidad, ¿por qué necesitas bifurcar (fork) alguno de los plugins oficiales?

En cualquier caso, en app.yml puedes ejecutar un comando para eliminar el directorio del plugin específico y luego clonar el tuyo si es absolutamente necesario, por ejemplo:

<in after_code: somewhere >
    - exec:
        cd: $home/plugins
        cmd:
          - rm -r poll
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/myaccount/myplugin-replacement.git

Puede que puedas hacer esto, pero verifica:

<in after_code: somewhere >
    - exec:
        cd: $home/plugins
        cmd:
          - rm -r poll
          - git clone https://github.com/myaccount/myplugin-replacement.git

No he sido muy cuidadoso con los espacios, asegúrate de que la sangría sea perfecta.

2 Me gusta

Porque espero actualizar la versión desactualizada de MathJax que utiliza el plugin discourse-math.

De acuerdo, me parece que esta línea es lo que me falta:

cmd:
  - rm -r poll

Para ser claro, sin embargo, ¿qué es poll? Pensaría que debería eliminar el directorio antiguo de discourse-math para prevenir los conflictos que parece que estoy obteniendo. Es decir, algo como

cmd:
  - -r plugins/discourse-math

No parece un buen comando para ejecutar sin ton ni son. :slight_smile:

No importa si cometes un error, simplemente reconstruye si lo haces.

Mi ejemplo fue con el complemento (plugin) de encuesta.

No repitas el directorio del complemento (plugin).

2 Me gusta

@merefield Por cierto, creo que te podría gustar la animación de mi página principal: https://discourse.marksmath.org/

Usé algo de tu código en el proceso.

1 me gusta

Ja, genial, ahora añade un clic a la tarjeta de usuario. :slight_smile:

2 Me gusta

Esto funcionó, @merefield, ¡muchas gracias!

1 me gusta

Ese podría ser un cambio que es pr-welcome para el complemento oficial. Si estás interesado en intentarlo en beneficio de todos los que dependen del complemento, inicia un tema de Feature para proponerlo.

3 Me gusta