Migrar um fórum vBulletin 4 para Discourse

Isso não é verdade quando comecei a migrar meu fórum vBulletin de 24 anos rodando vB 3. Houve várias incompatibilidades e outros problemas com o script. No entanto, me esforcei muito para criar um importador para vBulletin 3 com base no script para vB4.

O script aprimorado está incluído no Discourse, ele é chamado de vbulletin3.rb. O uso do script de importação vB3 é o mesmo descrito neste tutorial. Basta executar bundle exec ruby script/import_scripts/vbulletin3.rb em vez disso.

O vBulletin3 tem algumas mudanças/melhorias significativas:

  1. As permissões do fórum são copiadas
  2. Os grupos de moderadores do fórum são criados
  3. Os grupos de usuários que podem ser ingressados são criados com a configuração adequada
  4. Aninhamento de fóruns importado em até 3 níveis de profundidade (máximo do Discourse)
  5. Permalinks são registrados para todos os tópicos e postagens, evitando quebras de link
  6. Algumas configurações básicas do fórum são copiadas (por exemplo, título, e-mail de notificação, nome da empresa)
  7. Enquetes são importadas
  8. Grandes melhorias na conversão de bbcode para markdown
  9. Links profundos de URL para tópicos, postagens e anexos são convertidos em referências do Discourse, isso requer a definição da variável de ambiente FORUM_URL para forum.hostname/path (sem protocolo).

Em vez de tentar converter mensagens privadas do vBulletin para mensagens privadas do Discourse, os usuários receberão uma mensagem privada do sistema contendo um arquivo com as mensagens privadas que eles tinham. A construção de PMs do vBulletin não é realmente compatível com o Discourse. Tentar convertê-la também exporia alguma privacidade dependendo de como as pessoas usavam PMs no vBulletin.

Como provavelmente também é o caso com outros importadores, pode levar bastante tempo para converter. O script de conversão levou 5,5 horas na minha estação de trabalho para 7 mil usuários, 16 mil tópicos, 415 mil postagens. Não tenho ideia de quanto tempo levou para o pós-processamento das postagens, deixei isso rodando durante a noite. Do início ao fim, o fórum ficou inativo por 30 horas. No final, estou feliz com o resultado.

2 curtidas