Migrer un forum vBulletin 4 vers Discourse

Ce n’est pas vrai lorsque j’ai commencé à migrer mon forum vBulletin vieux de 24 ans fonctionnant sous vB 3. Il y avait de multiples incompatibilités et d’autres problèmes avec le script. Cependant, j’ai fait beaucoup d’efforts pour créer un importateur pour vBulletin 3 basé sur le script pour vB4.

Le script amélioré est inclus avec Discourse, il s’appelle vbulletin3.rb. L’utilisation du script d’importation vB3 est la même que celle décrite dans ce tutoriel. Exécutez simplement bundle exec ruby script/import_scripts/vbulletin3.rb à la place.

Le vBulletin3 présente des changements/améliorations significatifs :

  1. Les permissions du forum sont copiées
  2. Les groupes de modérateurs du forum sont créés
  3. Les groupes d’utilisateurs rejoignables sont créés avec une configuration appropriée
  4. La hiérarchisation des forums importés jusqu’à 3 niveaux de profondeur (maximum de Discourse)
  5. Des permaliens sont enregistrés pour tous les fils de discussion et messages, empêchant la dégradation des liens
  6. Certains paramètres de base du forum sont copiés (par exemple, titre, e-mail de notification, nom de l’entreprise)
  7. Les sondages sont importés
  8. Améliorations majeures de la conversion bbcode vers markdown
  9. Les liens profonds URL vers les fils de discussion, les messages, les pièces jointes sont convertis en références discourse, cela nécessite de définir la variable d’environnement FORUM_URL sur forum.hostname/path (sans protocole).

Au lieu d’essayer de convertir les messages privés vBulletin en messages privés Discourse, les utilisateurs recevront un message privé système contenant une archive des messages privés qu’ils avaient. La construction des MP de vBulletin n’est pas vraiment compatible avec Discourse. Essayer de le convertir exposerait également une certaine confidentialité en fonction de la manière dont les gens utilisaient les MP dans vBulletin.

Comme c’est probablement aussi le cas avec d’autres importateurs, la conversion peut prendre beaucoup de temps. Le script de conversion a pris 5,5 heures sur mon poste de travail pour 7k utilisateurs, 16k fils de discussion, 415k messages. Je n’ai aucune idée du temps que cela a pris pour le post-traitement, j’ai laissé cela tourner pendant la nuit. Du début à la fin, le forum a été indisponible pendant 30 heures. Au final, je suis satisfait du résultat.

2 « J'aime »