Migrare un forum Vanilla a Discourse

/var/www/discourse# RAILS_ENV=production ruby script/import_scripts/vanilla.rb /shared/export.txt
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.4.1/lib/active_record/connection_adapters/postgresql_adapter.rb:81:in `rescue in new_client’: Non è stato possibile trovare il tuo database: discourse. Che si trova nel file di configurazione del database situato in config/database.yml.

Sono riuscito a superare il Gemfile. ma ora sto riscontrando questo errore. Suggerimenti?

Ho riscontrato questo errore.. aggiungendo una password e dovendo configurare il file database.yml.. e ora al prossimo errore Caricamento gruppi esistenti…
Caricamento utenti esistenti…
Caricamento categorie esistenti…
Caricamento post esistenti…
Caricamento argomenti esistenti…
parsing file…
lettura file…
script/import_scripts/vanilla.rb:88:in gsub': sequenza di byte non valida in UTF-8 (ArgumentError) from script/import_scripts/vanilla.rb:88:in read_file’
from script/import_scripts/vanilla.rb:47:in parse_file' from script/import_scripts/vanilla.rb:25:in execute’
from /var/www/discourse/script/import_scripts/base.rb:47:in perform' from script/import_scripts/vanilla.rb:295:in

Suggerisce che il tuo database (o parte di esso) non sia in UTF-8.

Puoi cercare su Google come impostare il tuo database in UTF-8. Forse è in qualche altra codifica e puoi trasferirlo, o forse parti di esso contengono caratteri errati.

MODIFICA: sta leggendo il file “vanilla csv” (qualunque cosa sia) e non è codificato in UTF-8, il che è molto più facile da correggere rispetto al database. Non so ancora bene cosa dirti, ma ci sono alcuni caratteri strani che non vengono riconosciuti come UTF-8 e dovrai capire come risolvere il problema.

Ora sto ricevendo questo…

importando categorie…
script/import_scripts/vanilla.rb:140:in import_categories': chiamato metodo privato select’ per nil:NilClass (NoMethodError)

@root_category = @categories.select { |c| c[:category_id] == "-1" }.first
                            ^^^^^^
    from script/import_scripts/vanilla.rb:28:in `execute'
    from /var/www/discourse/script/import_scripts/base.rb:47:in `perform'
    from script/import_scripts/vanilla.rb:295:in `<main>'

root@vultr-app:/var/www/discourse# cd script/import_scripts
root@vultr-app:/var/www/discourse/script/import_scripts# sudo nano vanilla.rb
root@vultr-app:/var/www/discourse/script/import_scripts# cd ..
root@vultr-app:/var/www/discourse/script# cd ..
root@vultr-app:/var/www/discourse# RAILS_ENV=production ruby script/import_scripts/vanilla.rb public/uploads/vanilla.txt
Caricamento gruppi esistenti…
Caricamento utenti esistenti…
Caricamento categorie esistenti…
Caricamento post esistenti…
Caricamento argomenti esistenti…
parsing file…
lettura file…

importando argomenti…
/var/www/discourse/script/import_scripts/base.rb:544:in create_posts': metodo non definito count’ per nil:NilClass (NoMethodError)

total = opts[:total] || results.count
                               ^^^^^^
    from script/import_scripts/vanilla.rb:184:in `import_topics'
    from script/import_scripts/vanilla.rb:30:in `execute'
    from /var/www/discourse/script/import_scripts/base.rb:47:in `perform'
    from script/import_scripts/vanilla.rb:295:in `<main>'

root@vultr-app:/var/www/discourse# RAILS_ENV=production ruby script/import_scripts/vanilla.rb public/uploads/export.txt
Caricamento gruppi esistenti…
Caricamento utenti esistenti…
Caricamento categorie esistenti…
Caricamento post esistenti…
Caricamento argomenti esistenti…
parsing file…
lettura file…
script/import_scripts/vanilla.rb:88:in gsub': sequenza di byte non valida in UTF-8 (ArgumentError) from script/import_scripts/vanilla.rb:88:in read_file’
from script/import_scripts/vanilla.rb:47:in parse_file' from script/import_scripts/vanilla.rb:25:in execute’
from /var/www/discourse/script/import_scripts/base.rb:47:in perform' from script/import_scripts/vanilla.rb:295:in
root@vultr-app:/var/www/discourse#

È lo stesso errore di cui ho parlato nella mia ultima risposta.