Import de PHPBB3 échouant au premier stade

J’ai configuré un Discourse tout neuf, je l’ai activé et il fonctionne parfaitement. Aucune modification n’a été apportée. J’essaie d’effectuer une importation depuis phpBB3, mais elle échoue très tôt, avant même que le dump SQL ne soit sollicité. Il semble y avoir un problème lors de la création d’un répertoire, mais je ne comprends ni la cause ni la façon de le résoudre.

D’abord, j’exécute ces commandes :

cd /var/discourse
cp containers/app.yml containers/import.yml
nano containers/import.yml

Ensuite, je modifie import.yml pour ajouter l’entrée à la liste des modèles.

Puis j’exécute ceci :

/var/discourse/launcher stop app
/var/discourse/launcher rebuild import

Mais le démarrage échoue et j’obtiens ceci dans failed :

FAILED

--------------------

Pups::ExecError: apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y nano libmariadbclient-dev mariadb-server a échoué avec le code de retour #<Process::Status: pid 751 exit 100>

Emplacement de l'échec : /pups/lib/pups/exec_command.rb:112:in `spawn'

exec a échoué avec les paramètres {"cmd"=>["mkdir -p /shared/import/mysql/data", "apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8", "add-apt-repository 'deb [arch=amd64,i386] http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.1/ubuntu xenial main'", "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y nano libmariadbclient-dev mariadb-server", "sed -Ei 's/^log/#\&/' /etc/mysql/my.cnf"]}

35bdae869b75c936048af19f082aa5eded27d1ec77b9c53c48216d794775142d

** ÉCHEC DU BOOTSTRAP ** veuillez faire défiler vers le haut et rechercher les messages d'erreur précédents, il peut y en avoir plusieurs.

./discourse-doctor peut aider à diagnostiquer le problème.

Je me tire les cheveux en essayant de résoudre ce problème. Quelqu’un peut-il suggérer où je me trompe ?

En creusant un peu plus, je suis tombé sur ce post qui semble correspondre à la même erreur que je rencontre.

J’ai remarqué que la solution consistait à mettre à jour les dépôts avec la dernière version d’Ubuntu. J’ai modifié cette section dans phpbb3.template.yml :

cmd:
          - mkdir -p /shared/import/mysql/data
          - apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
          - add-apt-repository 'deb [arch=amd64,i386] http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.1/ubuntu xenial main'
          - apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y nano libmariadbclient-dev mariadb-server
          - sed -Ei 's/^log/#\&/' /etc/mysql/my.cnf

en :

cmd:
          - mkdir -p /shared/import/mysql/data
          - apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
          - add-apt-repository 'deb [arch=amd64,i386] http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.1/ubuntu bionic main'
          - apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y nano libmariadbclient-dev mariadb-server
          - sed -Ei 's/^log/#\&/' /etc/mysql/my.cnf

Mais il semble que cela échoue toujours car la clé utilisée est désormais obsolète. Quelqu’un pourrait-il m’aider avec la clé afin que je puisse tester cette hypothèse ?

Nous sommes passés d’Ubuntu à Debian. C’est pourquoi cela ne fonctionne plus.
J’ai fait un essai rapide et cela fonctionne pour la plupart en appliquant les modifications suivantes, mais le serveur MariaDB ne semble pas avoir démarré automatiquement. Je regarderai cela quand j’aurai plus de temps…

Vous pouvez pour l’instant appliquer manuellement ces modifications au modèle et démarrer le serveur en exécutant service mysql stop puis service mysql start à l’intérieur du conteneur. Cela devrait fonctionner.

Ce correctif semble fonctionner. Je vais continuer l’importation et voir comment cela se passe. Merci beaucoup.

Je rencontre des problèmes pour exécuter import_phpbb3.sh à l’intérieur du conteneur d’importation. J’ai dû redémarrer MySQL en utilisant les commandes

/etc/init.d/mysql stop

et

/etc/init.d/mysql start

Ensuite, j’ai pu accéder au conteneur d’importation, où j’ai exécuté import_phpbb3.sh, mais cela a échoué :

root@mydiscourse-import:/var/www/discourse# import_phpbb3.sh

L'importation phpBB3 commence...

**Traceback** (le plus récent en premier) :

9: from script/import_scripts/phpbb3.rb:13:in `<main>'

8: from script/import_scripts/phpbb3.rb:14:in `<module:ImportScripts>'

7: from script/import_scripts/phpbb3.rb:26:in `<module:PhpBB3>'

6: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:9:in `create'

5: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:9:in `new'

4: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:15:in `initialize'

3: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:39:in `create_database_client'

2: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:39:in `new'

1: from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `initialize'

/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `connect': **Accès refusé pour l'utilisateur 'root'@'localhost' (** **Mysql2::Error** **)**

Pouvez-vous suggérer comment procéder ?

Peux-tu réessayer ? Cela devrait fonctionner à nouveau.

cd /var/discourse
git pull
./launcher rebuild import

Merci, j’ai essayé mais j’ai toujours une erreur, je crains :

L'importation de phpBB3 commence...
**Traceback** (le plus récent en dernier) :
9: from script/import_scripts/phpbb3.rb:13:in `<main>'
8: from script/import_scripts/phpbb3.rb:14:in `<module:ImportScripts>'
7: from script/import_scripts/phpbb3.rb:26:in `<module:PhpBB3>'
6: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:9:in `create'
5: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:9:in `new'
4: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:15:in `initialize'
3: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:39:in `create_database_client'
2: from /var/www/discourse/script/import_scripts/phpbb3/database/database.rb:39:in `new'
1: from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `initialize'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `connect': **Base de données inconnue 'phpbb' (** **Mysql2::Error** **)**

Veuillez vous assurer que /var/discourse/shared/standalone/import/data/phpbb_mysql.sql existe et qu’il s’agit d’un dump de base de données valide. Ensuite, supprimez /var/discourse/shared/standalone/import/mysql/imported et réessayez.

La suppression de /var/discourse/shared/standalone/import/mysql/imported a fonctionné et l’importation a commencé ! Je vous tiendrai informé des résultats une fois l’importation terminée.

Tout semble avoir fonctionné. Je passe actuellement en revue les processus Sidekiq.

Je suis vraiment reconnaissant pour vos efforts à ce sujet @gerhard, vous avez mis fin à beaucoup de stress pour moi. Merci beaucoup.