Ajouter un module personnalisé
Ce tutoriel vous montre comment ajouter un module Odoo personnalisé à votre déploiement Skysize. Il existe deux approches selon que le module se trouve dans un dépôt séparé ou directement dans votre dépôt de projet.
Durée estimée : ~15 minutes
Ce dont vous avez besoin :
- Un projet déjà déployé sur Skysize (Déployer votre première instance)
- Un module Odoo personnalisé (votre propre code ou un module communautaire OCA)
Comment fonctionnent les modules personnalisés sur Skysize
Skysize analyse la racine de votre dépôt à la recherche de modules Odoo par défaut. Si votre module se trouve à la racine, il sera détecté automatiquement sans configuration supplémentaire.
Si vos modules se trouvent dans un sous-répertoire ou dans un dépôt séparé, vous devez configurer le Chemin des modules sur votre branche pour indiquer à Skysize où les chercher.
Les modules personnalisés sont disponibles sur le serveur mais ne sont pas installés automatiquement. Après le déploiement, vous devez les installer depuis le menu Applications d'Odoo.
Option A — Module dans votre propre dépôt
Utilisez cette approche lorsque votre module personnalisé est stocké directement dans votre dépôt de projet.
1. Ajouter votre module au dépôt
La structure la plus simple consiste à placer votre module à la racine du dépôt :
mon-depot-odoo/
├── mon_module/
│ ├── __manifest__.py
│ └── ...
└── ...
Avec cette structure, aucune configuration supplémentaire n'est nécessaire — Skysize trouvera mon_module automatiquement. Committez et poussez, puis passez directement à Installer le module dans Odoo.
Si vous préférez organiser vos modules dans un sous-répertoire :
mon-depot-odoo/
├── custom_addons/
│ └── mon_module/
│ ├── __manifest__.py
│ └── ...
└── ...
Vous devez alors configurer le chemin des modules comme décrit à l'étape suivante.
2. Configurer le chemin des modules (sous-répertoire uniquement)
-
Accédez à votre projet et ouvrez l'onglet Branches.
-
Cliquez sur votre branche pour ouvrir ses paramètres.
-
Trouvez le champ Chemin des modules.
-
Entrez le chemin vers le répertoire contenant vos modules. Les chemins doivent commencer par
/et sont relatifs à la racine de votre dépôt :/custom_addonsPour des modules répartis dans plusieurs répertoires, séparez-les par des virgules :
/custom_addons,/extra_addons -
Cliquez sur Enregistrer et poussez un commit pour déclencher un nouveau déploiement.
Installer le module dans Odoo
- Ouvrez votre instance Odoo.
- Accédez à Paramètres → Applications (activez le mode développeur si l'application n'est pas visible : Paramètres → Activer le mode développeur).
- Recherchez votre module et cliquez sur Installer.
Option B — Module dans un dépôt séparé (sous-module Git)
Utilisez cette approche lorsque votre module personnalisé se trouve dans son propre dépôt — par exemple, un module communautaire OCA ou un module interne partagé entre plusieurs projets.
Skysize ne prend en charge que les dépôts de sous-modules publics. Les dépôts privés ne sont pas supportés pour le moment.
1. Ajouter le sous-module via le terminal
Dans votre clone local du dépôt de projet, exécutez :
git submodule add https://github.com/OCA/web.git addons/oca_web
git add .gitmodules addons/oca_web
git commit -m "Ajout du sous-module OCA web"
git push
Cela ajoute le dépôt externe en tant que sous-répertoire à addons/oca_web. Skysize initialise automatiquement tous les sous-modules à chaque déploiement.
2. Ajouter le sous-module via l'interface web GitHub
Si vous n'avez pas accès à un terminal, vous pouvez créer la configuration du sous-module manuellement :
-
Dans votre dépôt sur GitHub, cliquez sur Add file → Create new file.
-
Nommez le fichier
.gitmodules. -
Ajoutez le contenu suivant en adaptant le chemin et l'URL :
[submodule "addons/oca_web"]
path = addons/oca_web
url = https://github.com/OCA/web.git -
Committez le fichier.
-
Créez le répertoire de référence : cliquez sur Add file → Create new file et nommez le fichier
addons/oca_web/.gitkeep, puis committez.
L'interface web GitHub offre un support limité pour les sous-modules. Pour toute configuration au-delà d'un sous-module simple, l'approche en ligne de commande est fortement recommandée.
3. Configurer le chemin des modules dans Skysize
Comme le sous-module se trouve dans un sous-répertoire, vous devez configurer le chemin des modules :
-
Accédez à votre projet et ouvrez l'onglet Branches.
-
Cliquez sur votre branche pour ouvrir ses paramètres.
-
Dans le champ Chemin des modules, entrez le chemin vers le répertoire du sous-module :
/addons/oca_web -
Cliquez sur Enregistrer.
4. Redéployer et installer
Poussez un commit pour déclencher un nouveau déploiement. Skysize initialisera le sous-module lors du build, rendant le module disponible. Installez-le ensuite depuis le menu Applications d'Odoo comme décrit ci-dessus.
Résolution des problèmes
Le module n'apparaît pas dans le menu Applications
- Assurez-vous que le mode développeur est activé dans Odoo (Paramètres → Activer le mode développeur).
- Si votre module est dans un sous-répertoire, vérifiez que le Chemin des modules est bien configuré et correspond à la structure réelle de votre dépôt (les chemins sont sensibles à la casse).
- Consultez les logs de déploiement pour détecter d'éventuelles erreurs liées au chargement des modules.
Le répertoire du sous-module est vide après le déploiement
- Confirmez que l'URL du dépôt du sous-module est accessible publiquement sans authentification.
- Vérifiez que le fichier
.gitmodulesest committé et que le chemin du sous-module est correct.