Sugiero trabajar con dos contenedores. Puedes hacerlo creando una copia de tu archivo app.yml actual (puedes encontrarlo en /var/discourse/containers) y renombrándolo a algo como import.yml. Luego actualiza el parámetro version a tu rama de importación personalizada.
params:
version: your-branch
Cada vez que necesites ejecutar la importación, detén el contenedor app, inicia el contenedor import y ejecuta el script dentro del contenedor import. Si se realizaron cambios significativos en Discourse, es posible que necesites hacer un rebase de tu rama con el último commit del núcleo y reconstruir el contenedor.
cd /var/discourse
./launcher enter import
# ¿quieres cambiar a una rama diferente?
su discourse -c 'git checkout <branch>'
# ¿quieres descargar nuevo código?
su discourse -c 'git pull'
Una vez que hayas terminado con la migración, detén el contenedor de importación y reinicia el de la aplicación.
cd /var/discourse
./launcher stop import
./launcher start app
Créditos a @gerhard quien me enseñó cómo hacer todo esto ![]()