Quando viene configurato un clone di Discourse appena creato, il repository viene fornito con standalone.yml.
Il flusso di lavoro documentato è:
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
./discourse-setup # crea app.yml
Ma se qualcuno salta ./discourse-setup ed esegue invece
./launcher bootstrap app
# o
./launcher rebuild app
mentre app.yml non esiste, riceve un errore confuso perché app.yml non è presente e standalone.yml non viene automaticamente riconosciuto come punto di partenza.
Questo è un ostacolo comune per i nuovi amministratori che presumono che standalone.yml sia già valido per l’uso.
Proposta:
Quando viene chiamato launcher bootstrap o launcher rebuild e containers/app.yml non esiste, la CLI dovrebbe stampare un chiaro avviso come:
Nessun file containers/app.yml trovato.
Hai intenzione di eseguire prima ./discourse-setup?
Nota: app.yml viene generato dal file di esempio standalone.yml.
Ciò eviterebbe ai nuovi utenti di imbattersi in un vicolo cieco e di cercare risposte su Meta.
Sarebbe questa un’aggiunta ragionevole a launcher?
ERROR: containers/app.yml does not exist or is not readable.
Ciò è accurato ma non molto utile, specialmente per due casi comuni:
Nuova installazione di produzione
Dovrebbe eseguire ./discourse-setup per generare app.yml da standalone.yml.
Forum di test rapido senza email in uscita
A volte le persone vogliono semplicemente avviare un Discourse locale/di test senza configurare SMTP.
Il flusso di lavoro usuale è:
Aggiungerei solo che la guida ufficiale di backup/ripristino incoraggia a copiare app.yml in posizione su un nuovo VPS prima di eseguire launcher.
Quindi il messaggio di errore potrebbe forse coprire anche quello scenario. Al momento, chi segue la guida ma dimentica di copiare prima app.yml si troverà nello stesso vicolo cieco.
Forse qualcosa del tipo:
ERRORE: containers/app.yml non esiste o non è leggibile.
Se questa è la tua prima installazione, esegui ./discourse-setup per generare app.yml
(dal campione standalone.yml).
Se stai ripristinando su un nuovo server, assicurati di aver copiato il tuo app.yml esistente
dal vecchio server in /var/discourse/containers
In questo modo il messaggio indirizza nella giusta direzione tutti e tre i tipi di utenti: