La restauración desde una antigua instalación multisitio falla

¿Ha cambiado algo en el proceso de restauración que afecte a las copias de seguridad de entornos multisitio?

Hoy intenté mover un sitio entre servidores. El servidor antiguo era una instalación multisitio, con nginx al frente manejando la encapsulación HTTPS y la opción force_https activada.

El nuevo servidor es una versión independiente de la instalación estándar, utilizando Let’s Encrypt.

Al revisar el archivo de copia de seguridad, los archivos de carga originales están presentes, pero no parecen haberse restaurado en el sistema de archivos del nuevo servidor. Las referencias a imágenes en todo el sitio apuntan al antiguo multisitio ‘secondsite’, por lo que las rutas señalan a /uploads/secondsite/original en lugar de /uploads/default/original.

Intenté la restauración tanto a través de la interfaz gráfica como por línea de comandos, por si acaso. Planeo investigar esto más a fondo, pero pensé que valía la pena publicarlo en Support por ahora; lo moveré a bug si alguien puede confirmar que este sigue siendo un escenario compatible.

Esto es algo que antes funcionaba, pero no lo había hecho al menos desde hace un año, quizás más.

¿Entonces los archivos están ahí pero en el lugar incorrecto? ¿Y la base de datos apunta al sitio predeterminado en lugar de al secondsite? Suena a un error, pero supongo que solo puedes renombrar el directorio. ¿O la copia de seguridad no incluyó las cargas en absoluto?

Están en el archivo de respaldo, pero nunca llegan al sistema de archivos.

¡Eso es extraño! Parece un error. ¿Y ninguno de los dos sistemas tiene configuradas las cargas en S3?

Correcto. Haré más pruebas más tarde.

Eso es inesperado. ¿Hay alguna posibilidad de que pueda ver el archivo de respaldo? De lo contrario, si quieres depurar esto tú mismo, echa un vistazo a discourse/lib/backup_restore/uploads_restorer.rb at main · discourse/discourse · GitHub.

La disposición de @team para indagar en cosas como esta es realmente genial. @tgxworld me ayudó a resolver un problema de caso extremo la semana pasada. :tada: