Ho già Discourse installato e funzionante. Ogni volta che ricostruisco l’app, estrae il repository del launcher, l’immagine Docker discourse/base e il repository Discourse.
Voglio limitare questo comportamento in modo che la ricostruzione non verifichi gli aggiornamenti e li scarichi automaticamente a meno che non venga passato un parametro specifico.
Se sì, perché non eseguire il comando di ricostruzione?
A titolo informativo, gli aggiornamenti alla versione stabile possono essere importanti: di solito contengono correzioni di vulnerabilità o bug significativi.
Sì, sto usando l’approccio standalone standard. Capisco la necessità di mantenere l’app aggiornata. La mia idea è di aggiungere un flag al launcher quando voglio aggiornare il repository.
Il punto di stable è la mancanza di cambiamenti. Perché stai ricostruendo del tutto?
Il motivo per cui estrae il container è per mantenerlo in parità con i requisiti del codice discourse.
Se vuoi fare qualcosa come entrare nel container senza fare un pull, puoi
docker exec -it app bash
E se volessi aggiungere un plugin senza ricostruire, potresti entrare nella directory del plugin e clonarlo e poi migrare il database, ma devi comunque assicurarti di ottenere il commit giusto del plugin per strangle) stable.
Dato che le release stabili sono relativamente rare, non presentano modifiche incompatibili molto spesso e di solito includono importanti aggiornamenti di sicurezza quando ci sono, non capisco la tua richiesta.
Secondo me, aggiungere un plugin è una buona scusa per aggiornare e assicurarsi di aver scaricato tutti gli aggiornamenti disponibili.
Non aggiornare su una release stabile, IMHO, è una cattiva pratica in quanto potrebbe esporti a vulnerabilità note per più tempo.
Potrebbe funzionare con plugin solo API, ma qualsiasi javascript di nuovi plugin deve essere compilato, il che avviene nel processo di build.
Pertanto, per aggiungere un nuovo plugin è necessario eseguire una ricompilazione nella maggior parte dei casi.
L’altro problema che hai è che la modifica degli script di build principali può metterti nei guai se non stai attento, specialmente se c’è una modifica sufficientemente significativa allo scripting principale.