Rake uploads:migrate_to_s3 esegue all'infinito

Quando eseguo quel comando, ottengo:

Migrazione degli upload su S3 per 'default'...
Caricamento dei file su S3...
 - Elenca i file locali
 =\u003e 23 file
 - Elenca i file su S3
. =\u003e 94 file
 - Sincronizzazione dei file su S3
.......................
Aggiornamento degli URL nel database...
Rimozione delle vecchie immagini ottimizzate...
Segnatura di tutti i post contenenti lightbox per la ricottura...
4 post sono stati segnalati per una ricottura
4 post richiedono ancora una ricottura e verranno ricotti durante il lavoro regolare
Fatto!
Migrazione degli upload su S3 per 'default'...
Caricamento dei file su S3...
 - Elenca i file locali
 =\u003e 23 file
 - Elenca i file su S3
. =\u003e 94 file
 - Sincronizzazione dei file su S3
.......................
Aggiornamento degli URL nel database...
Rimozione delle vecchie immagini ottimizzate...
Segnatura di tutti i post contenenti lightbox per la ricottura...
4 post sono stati segnalati per una ricottura
4 post richiedono ancora una ricottura e verranno ricotti durante il lavoro regolare
Fatto!
Migrazione degli upload su S3 per 'default'...
Caricamento dei file su S3...
 - Elenca i file locali
 =\u003e 23 file
 - Elenca i file su S3
. =\u003e 94 file
 - Sincronizzazione dei file su S3
.......................
Aggiornamento degli URL nel database...
Rimozione delle vecchie immagini ottimizzate...
Segnatura di tutti i post contenenti lightbox per la ricottura...
4 post sono stati segnalati per una ricottura
4 post richiedono ancora una ricottura e verranno ricotti durante il lavoro regolare
Fatto!
Migrazione degli upload su S3 per 'default'...
Caricamento dei file su S3...
 - Elenca i file locali
 =\u003e 23 file
 - Elenca i file su S3
. =\u003e 94 file
 - Sincronizzazione dei file su S3
.......................

e continua all’infinito.

Alla fine ho premuto Ctrl-C ed eseguito rake posts:rebake, che ha funzionato correttamente.

Poi, per curiositĂ , ho riprovato il comando rake uploads:migrate_to_s3, che ha prodotto esattamente lo stesso comportamento di prima (stesso output, stesso ciclo infinito).

Non sono sicuro di cosa stia succedendo o se si tratti di un problema, ma volevo segnalarlo. Avete qualche idea?

Posso confermarlo.

Ho creato una nuova immagine con le variabili DISCOURSE_S3_XXX impostate per abilitare i caricamenti su S3 durante la migrazione del database originale. Pensavo che questo avrebbe posto tutte le immagini su S3 fin dall’inizio, ma, ahimè, il ripristino di quel backup fallisce quando tenta di migrare su S3.

Ho quindi provato a eseguire rake uploads:migrate_to_s3 (con tutte le variabili d’ambiente impostate nella riga di comando prima del comando) e ho ottenuto il ciclo infinito descritto nell’OP.

Ho poi provato a eseguire un ripristino da riga di comando includendo tutte le impostazioni DISCOURSE_S3 nella riga di comando.

Pensavo che forse avrei potuto eseguire un backup e un ripristino, ma no. Il ripristino dall’interfaccia web fallisce. Anche il ripristino da riga di comando, senza passare tutti i parametri S3, fallisce.

Quindi, sembra che se si desidera ripristinare un backup che contiene caricamenti su S3, è necessario eseguirlo da riga di comando e passare le impostazioni S3 nella riga di comando durante il ripristino.

L’incapacità di ripristinare un backup con caricamenti su S3 tramite l’interfaccia utente sembra essere un bug.

Per la prossima persona che proverà a eseguire un ripristino :wink: ecco la sintassi esatta per inserire tutte le opzioni della riga di comando sulla stessa riga del comando di ripristino, come consigliato da @pfaffman… si tratta semplicemente di definire tutte e quattro le variabili e poi il comando di ripristino alla fine.

DISCOURSE_S3_BUCKET=my-forum-storage DISCOURSE_S3_REGION=us-east-1 DISCOURSE_S3_ACCESS_KEY_ID=asdasdasdasdasdadsasdas DISCOURSE_S3_SECRET_ACCESS_KEY=aasdasdasdasdasdadsasdasasdasdasdasd discourse restore my-forums-2020-04-11-232922-v20200408121834.tar.gz

@pnoeric Il ciclo infinito è stato risolto in FIX: Infinite loop in migrate_to_s3 rake task · discourse/discourse@baae0e7 · GitHub

@pfaffman Il problema dovrebbe essere risolto in FIX: Restore to S3 didn't work without env variables · discourse/discourse@c6b411f · GitHub

Oh, evviva! Grazie mille. (A volte un :heart: non basta.)

Sì, ci uniamo anche noi! Grazie per essere così disponibile. Molto apprezzato. E