Étape 4 sur 4

Installer et prouver le module

Un module présent sur le disque n'est pas encore connu de la base. Le redémarrage charge le code ; l'actualisation de la liste et l'installation modifient la base. Nous terminons par une preuve observable.

1. Redémarrez le serveur

Dans le terminal du serveur, appuyez sur Ctrl+C, attendez son arrêt, puis relancez la commande adaptée depuis la racine du workspace :

Terminal · Linux/macOS
.venv/bin/python src/odoo/odoo-bin --config=config/odoo.conf
PowerShell · Windows
.\.venv\Scripts\python.exe .\src\odoo\odoo-bin --config=.\config\odoo.conf
Docker Compose · dossier de compose.yaml
docker compose restart odoo

Avec Docker, le redémarrage se fait sur le service odoo. Ne lancez pas le Python de l'hôte : il ne connaît pas l'environnement de l'image.

À observer : le log termine son chargement sans traceback. Un redémarrage ne suffit pas à installer le module ; il rend seulement son code disponible au serveur.

2. Activez les outils développeur

Connectez-vous à odoo_training, ouvrez Paramètres puis activez le mode développeur depuis les outils développeur. Revenez dans Apps et utilisez l'action qui actualise la liste des applications.

Cette action rescane les chemins déclarés dans addons_path. Recherchez ensuite Hello Odoo.

3. Avec Docker, utilisez seulement le secours CLI si Apps ne suffit pas

La voie normale reste Apps : actualisez la liste puis choisissez Installer. Si l'interface ne permet pas de terminer, arrêtez uniquement le service Odoo ; gardez PostgreSQL en route.

Docker Compose · dossier de compose.yaml
docker compose stop odoo
docker compose run --rm odoo -- -d odoo_training -i training_hello --stop-after-init
docker compose start odoo

Remplacez odoo_training par le nom réel de votre base. Le premier tiret double est nécessaire avec l'image officielle : les arguments qui suivent sont transmis à Odoo. -i signifie installation initiale. La commande ponctuelle s'arrête après son travail puis vous redémarrez le service habituel.

À observer : le service odoo est arrêté pendant la commande puis revient à l'état running ; les logs ne montrent pas de traceback et Apps indique Hello Odoo installé.

4. Installez et attendez le retour

Choisissez Installer sur la fiche Hello Odoo. Odoo lit le manifeste, vérifie base, initialise le paquet Python et enregistre le module comme installé dans odoo_training.

La fiche n'apparaît pas ?

Vérifiez dans cet ordre custom_addons/training_hello, la valeur addons_path, le nom exact __manifest__.py, puis la première erreur de syntaxe dans le log. Ne recréez pas le module sous un autre nom.

5. Prouvez le résultat

La fiche Hello Odoo indique que le module est installé. Dans une installation source, recherchez training_hello dans var/log/odoo.log. Avec Docker, utilisez docker compose logs --tail=80 odoo.

Il n'y a volontairement ni menu ni écran : le résultat est l'enchaînement vérifiable entre le dossier d'addons, le manifeste, le serveur et l'état de la base.

Prérequis validé

Odoo 19 découvre, charge et installe Hello Odoo depuis votre parcours source ou Docker. Vous pouvez maintenant passer à la formation développeur Odoo.