Migrazione da Yahoo! Groups

(modifiche importanti di seguito–secondo tentativo)

Sto lavorando al processo di importazione dei messaggi, seguendo le istruzioni disponibili su Migrate from another forum to Discourse. Come le ho comprese, il processo dovrebbe essere il seguente:

  • Configurare l’ambiente di sviluppo utilizzando Install Discourse on Ubuntu or Debian for Development
  • Installare MongoDB su quel sistema
  • Su quel sistema, con lo stesso utente non privilegiato che esegue Discourse, git clone lo script yahoo-group-export
  • Con lo stesso utente, eseguire gem install mechanize e gem install mongo. Quindi modificare .config.yaml per inserire le credenziali Yahoo e il nome del gruppo, ed eseguire ruby bin/yg-export.rb.
  • Prendere una tazza (o due) della tua bevanda preferita.
  • Una volta completato yg-export, nella directory di Discourse, dare un’occhiata a script/import_scripts/yahoogroup.rb. Modificarlo per puntare al corretto MONGODB_HOST (localhost).
  • Nella directory di Discourse, eseguire bundle exec ruby script/import_scripts/yahoogroup.rb
  • Verificare che l’importazione sia avvenuta correttamente
  • Eseguire il backup e il ripristino su un server live

I passaggi 2-4 sono dedotti. Ma questi sembrano i passaggi corretti da seguire? Credendo di sì, ho proceduto. Tutto è andato bene fino al passaggio 4: yg-export.rb è stato eseguito per circa un’ora, segnalando SUCCESSO per tutto e salvando circa 38k messaggi. Il database syncro è presente con circa 85 MB di dati. A quel punto, ho creato uno snapshot della VM.

Sto avendo problemi con lo script di importazione. Quando eseguo bundle exec ruby script/import_scripts/yahoogroup.rb, ottengo questo:

dan@ubuntu:~/discourse$ bundle exec ruby script/import_scripts/yahoogroup.rb
Traceback (most recent call last):
script/import_scripts/yahoogroup.rb: Bootsnap::LoadPathCache::FallbackScan
        7: from script/import_scripts/yahoogroup.rb:4:in `<main>'
        6: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/kernel.rb:23:in `require'
        5: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:26:in `require'
        4: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:40:in `rescue in require'
        3: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
        2: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/loaded_features_index.rb:89:in `register'
        1: from /home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/home/dan/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require': cannot load such file -- mongo (LoadError)

Strano, pensavo di aver già installato il gem mongo. Bene, lo installerò di nuovo:

dan@ubuntu:~/discourse$ gem install mongo
Successfully installed mongo-2.10.2
Parsing documentation for mongo-2.10.2
Done installing documentation for mongo after 4 seconds
1 gem installed

Eseguo di nuovo lo script di importazione, stesso risultato. Fa differenza se lo installo a livello di sistema?

dan@ubuntu:~/discourse$ sudo apt install ruby-mongo
[sudo] password for dan: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
ruby-mongo is already the newest version (2.5.1-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Più curioso e più curioso…