Come migrare da Yahoo Groups a Discourse

Ho avviato un argomento (Migration from Yahoo! Groups) per ottenere indicazioni in merito, e un altro argomento (Yahoo Groups to Discourse migration?) ne parla, quindi ecco cosa ho elaborato per la migrazione.

Contesto

Yahoo ha annunciato alcune settimane fa che sta riducendo significativamente i servizi disponibili tramite Yahoo Groups. A partire dal 28 ottobre 2019, hanno disabilitato i contenuti caricati dagli utenti. Il 14 dicembre 2019, dichiarano di rimuovere tutti i contenuti caricati, inclusi gli archivi dei messaggi. Metto in grassetto quest’ultimo punto perché inizialmente non mi era chiaro, e ha reso la migrazione del gruppo molto più urgente. Dicono che, da questo momento, il servizio rimarrà utilizzabile come mailing list, ma senza archivi futuri.

Esiste un altro servizio su groups.io che è praticamente una soluzione pronta all’uso per sostituire Yahoo Groups, ed è la scelta ovvia per chi desidera migrare un gruppo Yahoo: si occuperanno di spostare tutto e gli utenti manterranno la stessa interfaccia a cui sono abituati. Quest’ultimo punto, a mio avviso, è uno dei principali svantaggi di questo servizio; l’altro è il costo di 220 dollari per migrare un gruppo. Ho pensato che, se avessi deciso di migrare un gruppo, sarebbe stato bene aggiornare l’interfaccia a qualcosa di più moderno, ma che mantenesse comunque la possibilità di essere utilizzato come mailing list.

Se il tuo gruppo contiene molte foto o file caricati, potresti valutare un metodo diverso per ospitarli. Altrimenti, puoi pubblicarli nei topic del tuo sito, magari in categorie separate. Se hai altri tipi di dati lì (ad esempio, database o calendari) che desideri salvare, lascio ad altri il compito di individuare il modo migliore per migrarli.

Preparazione

La chiave di questo processo è lo strumento “Scarica i miei dati” di Yahoo, che ti consentirà di scaricare determinati dati dai tuoi gruppi. Nello specifico, ti permetterà di ottenere:

  • Tutti i messaggi di tutti i gruppi di cui sei membro, e
  • Tutti i file caricati (ma non le foto) di tutti i gruppi di cui sei membro.

I messaggi scaricati sono in formato .mbox e includono indirizzi email completi, indipendentemente dal fatto che tu sia moderatore o amministratore del gruppo.

Questo strumento ti permette di inviare una richiesta. Una volta elaborata da Yahoo, riceverai una notifica via email che il download è pronto: nel mio caso ci è voluto circa una settimana.

Come accennato sopra, lo strumento “Scarica i miei dati” non scarica le foto. Per queste, ho utilizzato GitHub - IgnoredAmbience/yahoo-group-archiver: Scrapes and archives a Yahoo groups email archives, photo galleries and file contents using the non-public API · GitHub. Scarica anche tutti gli altri dati (e per quanto ne so, non è possibile limitarlo), ma recupera le foto insieme ai loro metadati.

Installazione

Installa seguendo discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub su un host VPS a tua scelta (io uso contabo.com, ma non mancano fornitori di VPS). Ottieni un dominio se non ne hai già uno (freenom.com se ne vuoi uno gratuito; easydns.com o name.com funzionano bene per me come registrar a pagamento). Configura il DNS utilizzando il tuo host preferito (io preferisco cloudflare.com per questo). Configura l’invio di email (ho usato mailgun.com) e la ricezione di email seguendo Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver.

Configura la tua installazione come desideri; l’importazione non sovrascriverà nulla di quanto già configurato.

Migrazione dei messaggi

Lo strumento “Scarica i miei dati” ti fornirà un singolo file .zip. Conterrà una directory per ogni gruppo di cui sei membro, e in ciascuna directory ci saranno messages.zip e files.zip. Quando decomprimi messages.zip, avrai file .mbox contenenti tutti i messaggi del gruppo, suddivisi in tanti file da 10 MB quanti ne servono per contenerli (nel mio caso, per i 38.000 messaggi del gruppo che stavo migrando, erano 15). Una volta ottenuti, puoi seguire le istruzioni su Migrate a mailing list to Discourse (mbox, Listserv, Google Groups, etc) per importarli nella tua installazione Discourse. Se hai utenti esistenti, lo script abbinerà i messaggi a quegli utenti in base all’indirizzo email. Qualsiasi indirizzo email senza un utente corrispondente creerà un nuovo utente.

Problemi

Poiché la creazione degli utenti si basa sull’email, gli utenti Yahoo che hanno cambiato indirizzo email nel tempo risulteranno in utenti multipli nella tua installazione Discourse. Il plugin per unire gli utenti (Merge Users Plugin) dovrebbe risolvere il problema, anche se l’identificazione di questi utenti rimarrà un processo manuale.

Conclusione

Questo è il punto in cui mi trovo al momento: il mio sito funziona, i messaggi ci sono, gli utenti ci sono, e ora si tratta di affinamenti e regolazioni. Spero che questo aiuti altri a fare il grande passo e a spostare i loro gruppi Yahoo su un sito basato su Discourse, invece di rimanere con più della stessa cosa.

21 Mi Piace