odoo devenv

This commit is contained in:
Florian du Garage Num 2023-10-28 13:53:51 +02:00
parent 5cce419a6b
commit 8054a0956d
3 changed files with 78 additions and 2 deletions

View File

@ -103,7 +103,7 @@ Go to extensions views by clicking on the square icon in the sidebar or pressing
} }
``` ```
## Access Odoo ## Finalize installation
### Access ### Access
@ -119,3 +119,12 @@ You need to use the master password defined in `etc/odoo.conf`
![ScreenShot for first access to odoo instance, with a form for db configuration](img/odoo-dbconfig.png) ![ScreenShot for first access to odoo instance, with a form for db configuration](img/odoo-dbconfig.png)
Vous pouvez maintenant décommenter les 2 dernières lignes du fichier __odoo.conf__, et redémarrer votre instance avec `docker-compose restart`.
### Installation des modules
Une fois les modules communautaires téléchargés dans le dossier des addons, il faut entrer dans le conteneur pour lancer l'installation des modules:
```
user@host:~$ docker-compose exec -u odoo web bash
odoo@odoo-container:/$ find /mnt/extra-addons/ -mindepth 1 -maxdepth 1 -type d -printf "%f," | sed -E 's/(.*),/\1/' |xargs odoo -d odoo -i
```

View File

@ -0,0 +1,66 @@
# Créer son module pour Odoo
## Créer un script d'installation automatisée
Ce script python va permettre d'automatiser l'installation des modules de base
??? note "init.py"
```
import odoorpc
# Configuration
ODOO_URL = 'http://localhost:10014'
ODOO_DB = 'odoo'
ODOO_USERNAME = 'garagenum@gmail.com'
ODOO_PASSWORD = 'bellinux@dm!'
# Modules to install
MODULES_TO_INSTALL = [
'account',
'sale_management',
'purchase',
'hr',
'contacts',
'hr_expense',
'project',
'stock',
'membership',
'website',
'mass_mailing',
'partner_autocomplete',
'hr_recruitment',
'survey',
'board',
'mass_mailing_sms',
'note',
'website_forum',
'hr_skills',
'hr_holidays',
'website_hr_recruitment',
'hr_contract',
'website_slides',
'board',
'base_automation',
'delivery',
]
# Connect to the Odoo server
odoo = odoorpc.ODOO('localhost', port=10014)
odoo.login(ODOO_DB, ODOO_USERNAME, ODOO_PASSWORD)
# Check if each module is installed or not
for module_name in MODULES_TO_INSTALL:
module_id = odoo.env['ir.module.module'].search([('name', '=', module_name)])
if module_id:
module = odoo.env['ir.module.module'].browse(module_id)[0]
if module.state not in ['installed', 'to upgrade']:
module.button_immediate_install()
print(f"Module {module_name} has been installed.")
else:
print(f"Module {module_name} is already installed.")
else:
print(f"Module {module_name} not found.")
print("Script execution finished!")
```

View File

@ -1,3 +1,4 @@
# Guide de développement pour Odoo # Guide de développement pour Odoo
- [ Mettre en place son environnement de développement](devenv.md) - [ Mettre en place son environnement de développement](devenv.md)
- [Développer un module](devmodule.md)