GitHub et mise en production
Versionner le module sur votre dépôt, le publier sur l'Odoo Apps Store, faire approuver le passage en production et l'installer sur votre Odoo réel.
8 min de lectureMis à jour le 1 octobre 2026
Un module testé en sandbox n'est pas encore à vous tant qu'il n'est pas dans votre dépôt. Cette page couvre les dernières étapes : versionner, publier sur l'Odoo Apps Store si vous le souhaitez, puis passer en production.
Connecter votre dépôt
Aidoo pousse le code sur votre dépôt GitHub. Vous en restez propriétaire, et rien ne dépend d'Aidoo pour le relire ou le reprendre.
Connectez GitHub
Depuis la page GitHub d'Aidoo, un propriétaire ou un administrateur de l'espace connecte le compte GitHub qui hébergera vos modules.
Épinglez votre dépôt Odoo
Choisissez le dépôt qui héberge vos développements Odoo, sa branche de production et, si besoin, sa branche de staging, puis « Épingler & importer les modules » : les modules déjà présents sur ces branches sont importés dans Aidoo Modules. Les modules créés avec Aidoo y sont ensuite poussés, chacun dans son dossier.
Sans dépôt épinglé, le premier envoi d'un module crée un dépôt privé qui lui est dédié. Sur la page « Mes modules », « Resynchroniser depuis GitHub » réimporte les modules de la branche de l'environnement.
Pousser le code
Le module fonctionne, pousse-le sur GitHub.
Claude envoie l'arborescence complète du module, avec un message de commit décrivant le changement. Le bouton « Pousser sur GitHub », en haut de la fiche du module, fait la même chose (« Créer le dépôt et pousser » au premier envoi). Vous retrouvez dans le dépôt du code Odoo standard : modèles Python, vues XML, fichiers de droits, manifeste.
Vérifiez où arrivent les envois
Un module importé repart sur la branche d'où il vient ; un nouveau module part sur la branche par défaut du dépôt épinglé. Si cette branche est déployée automatiquement (Odoo.sh, intégration continue), chaque envoi y arrive : épinglez de préférence un dépôt dont la branche par défaut sert au développement.
Poussez tôt, poussez souvent
Rien n'oblige à attendre que le module soit parfait. Chaque envoi crée un point de retour, et l'historique Git raconte l'évolution du module bien mieux que la conversation.
Chaque variante de version (voir Créer un module) est poussée dans le même dépôt, sur une branche qui porte son numéro de version : 17.0, 18.0… C'est la convention des modules Odoo, celle que lit l'Odoo Apps Store.
Pousse la variante Odoo 18 du module sur GitHub.
Publier sur l'Odoo Apps Store
L'Odoo Apps Store (apps.odoo.com) n'a pas d'API de publication : il lit le manifeste et la page static/description/index.html d'un dépôt Git dont les branches portent le numéro de version. L'onglet Odoo Store de la fiche du module prépare tout cela.
Renseignez la fiche
Accroche, résumé, points forts (6 au maximum), licence, prix et devise (EUR ou USD), site web, support, et un guide d'utilisation de 10 étapes au maximum, chacune pouvant être illustrée par une capture. Ces réglages sont recopiés dans le manifeste de chaque version du module.
Générez la fiche
« Enregistrer et générer la fiche » écrit, dans chaque version, la page de description, l'image principale (1200 × 630 px, dessinée à partir de l'icône, du nom et de l'accroche, ou importée) et jusqu'à 6 captures, prises dans la galerie Médias ou importées depuis votre ordinateur. Un aperçu montre la page telle qu'elle sera publiée, et elle se met à jour d'elle-même après chaque nouvelle capture automatique.
Proposez au store
La checklist signale ce qui manque. Bloquant : icône, résumé, licence, prix cohérent avec la licence, page de description générée, GitHub connecté. Recommandé : accroche, guide, image principale, captures, chaque version testée, dépôt public. « Proposer au store » pousse une branche par version, et peut rendre le dépôt public.
Enregistrez le dépôt sur apps.odoo.com
C'est la seule étape manuelle. Collez l'URL du dépôt sur la page d'ajout de dépôt d'apps.odoo.com ; s'il est privé, ajoutez dans GitHub la clé publique affichée par Odoo comme « deploy key » en lecture seule. Odoo analyse les branches et publie une fiche par version : comptez quelques heures pour la première indexation.
Prépare la fiche Odoo Apps Store du module, gratuite sous LGPL-3, avec un guide d'utilisation pas à pas illustré par les captures de la galerie.
Application payante, dépôt public
Une application payante doit être sous licence OPL-1 (les licences proposées sont LGPL-3, OPL-1, AGPL-3 et MIT). Rendre le dépôt public expose tout son contenu : si votre module vit dans votre dépôt Odoo principal, aux côtés d'autres modules, préférez la deploy key.
L'approbation avant production
Claude ne peut pas déployer en production
C'est une limite du produit, pas un réglage. Aucun outil du connecteur Modules ne peut installer quoi que ce soit sur votre Odoo réel, et Aidoo non plus : le passage en production est une approbation humaine, l'installation se fait depuis votre dépôt Git.
Le passage en production suit trois conditions cumulatives :
- le module a été testé en sandbox dans son état actuel
- un propriétaire ou un administrateur de l'espace l'approuve avec « Déployer en production », dans l'onglet Principal
- votre plan autorise le déploiement en production, ce qui exclut l'essai gratuit
L'approbation fait passer le projet au statut En production. Toute modification d'un fichier de la version de base après un test annule la première condition. Il n'existe aucun contournement : c'est ce qui garantit que rien n'est approuvé sans être passé par une instance de test.
Installer le module sur votre Odoo
Le module s'installe comme n'importe quel module Odoo, à partir de votre dépôt : récupérez le code dans le chemin d'addons de votre Odoo (git pull), mettez à jour la liste des applications, puis installez ou mettez à jour le module. Sur Odoo.sh, c'est l'envoi sur la branche de production qui déclenche la construction. Odoo applique alors les migrations, crée les tables, charge les vues et les droits.
Prenez une sauvegarde avant
Un module Odoo peut créer des colonnes et modifier des vues. L'opération est réversible dans la plupart des cas, mais une sauvegarde récente reste la seule garantie. Sur Odoo.sh, déclenchez une sauvegarde manuelle ; sur votre propre serveur, sauvegardez la base et le filestore.
Installez de préférence en dehors des heures d'activité : un nouveau code Python demande un redémarrage du service Odoo.
Faire évoluer un module déjà en production
Le cycle recommence à l'identique : vous décrivez l'évolution, Claude modifie les fichiers, le projet repasse en brouillon, nouveau test en sandbox, nouvel envoi Git, nouvelle approbation, puis mise à jour du module sur votre Odoo.
Les migrations de données demandent une attention particulière
Ajouter un champ est sans risque. Renommer ou supprimer un champ qui contient déjà des données en production ne l'est pas : Odoo ne migre pas automatiquement les valeurs existantes. Dites-le explicitement à Claude pour qu'il écrive le script de migration, et testez-le sur une sandbox chargée avec un jeu de données représentatif.
Diagnostic
L'installation échoue en sandbox
C'est le cas normal du développement, pas un incident. Claude lit les journaux, identifie l'erreur Python ou XML et corrige. Si le même échec revient trois fois, reformulez le besoin : le problème est souvent dans la demande, pas dans le code.
Le module s'installe mais ne fait rien de visible
Presque toujours une vue mal ciblée ou des droits d'accès manquants. Vérifiez que votre utilisateur appartient au groupe attendu, et demandez à Claude de vérifier l'héritage de la vue.
L'envoi sur GitHub échoue
Vérifiez que GitHub est toujours connecté à l'espace et que la branche existe. Une connexion révoquée se rétablit depuis la page GitHub d'Aidoo.
Le bouton « Déployer en production » n'apparaît pas
Il n'apparaît que pour un module au statut Testé en sandbox, et seulement pour un propriétaire ou un administrateur. Pendant l'essai gratuit, l'approbation est refusée avec un message qui invite à passer au plan Standard.
Le store ne trouve pas mon module
Vérifiez que les branches portent exactement le numéro de version (18.0), que le dépôt est public ou que la deploy key est ajoutée, et laissez quelques heures à la première indexation.
Je veux reprendre le module sans Aidoo
C'est prévu : le code est dans votre dépôt, au format Odoo standard. Clonez, ouvrez dans votre éditeur, installez-le comme n'importe quel module. Aucune dépendance à Aidoo ne subsiste dans le code produit.
Étape suivante
- Développer un module depuis Claude : revoir le cycle complet
- Créer un module : reprendre depuis la description du besoin