Tutorial anterior: Developing Discourse Plugins - Part 3 - Add custom site settings
Ahora que tu plugin se está volviendo más sofisticado, es momento de ser más sofisticado en la forma en que lo desarrollas.
Sugerimos que uses git como control de versiones para tu plugin. También recomendamos que uses github para compartir el código de tu plugin con otros.
Creando tu repositorio Git
Una vez que hayas creado tu cuenta de Github, visita esta url para crear un nuevo repositorio. Puedes llamarlo como quieras, pero generalmente algo que empiece con discourse- es bueno. Asegúrate de que el repositorio sea público. Así se veía mi pantalla:
Creando tu carpeta de trabajo local
En este punto, creo un directorio local en mi computadora para guardar el plugin. Generalmente pongo el mío en ~/code, pero puedes ponerlo en cualquier lugar que te guste en tu computadora:
mkdir -p ~/code/discourse-plugin-test
cd ~/code/discourse-plugin-test
Ahora sigamos las instrucciones de github para inicializar el repositorio con un README:
echo "# discourse-plugin-test" >> README.md
git init
git add README.md
git commit -m "primer commit"
git remote add origin git@github.com:eviltrout/discourse-plugin-test.git
git push -u origin main
Finalmente, crea un archivo plugin.rb para tu plugin como se explica en la parte 1. Para este ejemplo, simplemente creé uno de prueba:
plugin.rb
# name: discourse-plugin-test
# about: Muestra cómo configurar Git
# version: 0.0.1
# authors: Robin Ward
Creando un enlace simbólico
Como seguiste nuestra guía de desarrollo, deberías tener una copia de discourse clonada en tu computadora en algún lugar. Yo cloné la mía en ~/code/discourse, pero nuevamente podrías haberla puesto en cualquier lugar y esto debería funcionar igual si ajustas el siguiente código en consecuencia:
cd ~/code/discourse/plugins
ln -s ~/code/discourse-plugin-test .
El código anterior creó un enlace simbólico entre tu código de discourse y tu carpeta de plugin. Reinicia tu servidor de desarrollo y deberías encontrar que tu plugin está funcionando.
La belleza de esta configuración es que puedes simplemente hacer commit de tu plugin en github y no preocuparte por la base de código de discourse en la que vive. Tus cambios estarán aislados al propio plugin. Si necesitas editar el código de discourse, aún puedes hacerlo, pero git rastreará los cambios por separado.
Recomiendo usar una ventana de editor para tu base de código del plugin y otra para Discourse en sí. Es más fácil cuando piensas en ellos como dos cosas diferentes.
Más en la serie
Parte 1: Conceptos básicos de plugins
Parte 2: Enclaves de plugins
Parte 3: Configuraciones del sitio
Parte 4: Este tema
Parte 5: Interfaces de administrador
Parte 6: Pruebas de aceptación
Parte 7: Publica tu plugin
Este documento está controlado por versiones - sugiere cambios en github.



