Migrate_to_s3 échoue

Migration des téléchargements vers S3 pour ‘default’…
Téléchargement des fichiers vers S3…

  • Liste des fichiers locaux
    find: ‘uploads/default/original’: Aucun fichier ou dossier de ce type
    =\u003e 0 fichiers
  • Liste des fichiers S3
    … =\u003e 81070 fichiers
  • Synchronisation des fichiers vers S3

Mise à jour des URL dans la base de données…
Suppression des anciennes images optimisées…
Marquage de tous les messages contenant des lightboxes pour ré-encodage…
54453 messages ont été marqués pour un ré-encodage
rake avorté !
FileStore::ToS3MigrationError: 53 messages ne sont pas remappés vers la nouvelle URL de téléchargement S3. La migration S3 a échoué pour la base de données ‘default’.
/var/www/discourse/lib/file_store/to_s3_migration.rb:132:in raise_or_log' /var/www/discourse/lib/file_store/to_s3_migration.rb:87:in migration_successful?’
/var/www/discourse/lib/file_store/to_s3_migration.rb:373:in migrate_to_s3' /var/www/discourse/lib/file_store/to_s3_migration.rb:66:in migrate’
/var/www/discourse/lib/tasks/uploads.rake:123:in migrate_to_s3' /var/www/discourse/lib/tasks/uploads.rake:102:in block in migrate_to_s3_all_sites’
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rails_multisite-4.0.0/lib/rails_multisite/connection_management.rb:80:in with_connection' /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rails_multisite-4.0.0/lib/rails_multisite/connection_management.rb:90:in each_connection’
/var/www/discourse/lib/tasks/uploads.rake:100:in migrate_to_s3_all_sites' /var/www/discourse/lib/tasks/uploads.rake:96:in block in ’
/usr/local/bin/bundle:25:in load' /usr/local/bin/bundle:25:in
Tâches : TOP =\u003e uploads:migrate_to_s3
(Voir la trace complète en exécutant la tâche avec --trace)

Oui, vous avez peut-être déjà vu la discussion ici :

Oui, je viens de lire ce sujet. Je n’utilise pas de volumes, j’ai donc procédé à la mise de l’URL du CDN de discourse = « » , mais je reçois toujours l’erreur.
Je ne trouve pas comment modifier to_s3_migration.rb comme l’a suggéré @Falco.

En regardant le message d’erreur de votre précédent post, c’est le compte à la ligne 85 qui est intéressant. La suggestion de @Falco pour modifier le script est d’augmenter ce compte pour ignorer un certain nombre d’échecs.

La façon la plus simple d’y parvenir est d’entrer dans le conteneur et d’utiliser sed pour effectuer une substitution en place sur cette ligne spécifique.

cd /var/discourse
./launcher enter app
sed -i '85s/0/100/' lib/file_store/to_s3_migration.rb

Exécutez à nouveau la tâche rake après cela et elle ignorera jusqu’à 100 erreurs de type « post not remapped to new S3 upload URL ». La modification disparaîtra la prochaine fois que vous reconstruirez.

Pour le message d’erreur dans le post original, la ligne 77 est celle qui nous intéresse, comme l’a mentionné @Falco. Remplacez simplement le numéro de ligne dans la commande sed :

sed -i '77s/0/100/' lib/file_store/to_s3_migration.rb
7 « J'aime »

Vous pouvez toujours accéder à vim en l’installant avec apt install vim à l’intérieur de l’image.

4 « J'aime »

FAIT ! MERVEILLEUX Merci !!

3 « J'aime »