Odoo Framework
Project description
Odoo Docker Framework
Provides functionalities:
-
setup empty new odoo with one bash command
odoo init --version 15.0
-
setup full fleged odoo server environment containing
- supports MANIFEST file in odoo root directory to install and uninstall modules
- postgres with pg_activity, enhanced pgcli
- fake webmail to receive AND SEND mails
- logs.io integration to display container output on web browser
- dividing web, cron, queuejob container per default
- progress bar on postgres dump/restore
-
fzf compatible creation of and AST of your project
-
fast restore / create snapshots of complete databases using btrfs, which helps testing things on customer databases
How to install
Install minimum
# as root:
pip3 install wheel
pip3 install wodoo
Give sudo rights
To be not blocked when working on btrfs volumes and so, this is suggested on dev machines:
> /usr/local/sbin/odoo <EOF
#!/bin/bash
sudo -E /opt/odoo/odoo "$@"
EOF
chmod a+x /usr/local/sbin/odoo
> /etc/sudoers.d/odoo <EOF
Cmnd_Alias ODOO_COMMANDS_ODOO = /usr/bin/find *, /opt/odoo/odoo *, /usr/bin/btrfs subvolume *, /usr/bin/mkdir *, /usr/bin/mv *, /usr/bin/rsync *, /usr/bin/rm *, /usr/bin/du *, /usr/local/bin/odoo *, /opt/odoo/odoo *, /usr/bin/btrfs subvol show *, /usr/sbin/gosu *
odoo ALL=NOPASSWD:SETENV: ODOO_COMMANDS_ODOO
EOF
Make new empty odoo instance
odoo init <folder>
cd <folder>
odoo reload
odoo -f db reset
odoo up -d
# now open browser on http://localhost
Store settings not in ~/.odoo but local inside the current directory in .odoo
This is excellent for jenkins jobs where different branches are tested.
odoo reload --local --devmode --headless --project-name 'unique_name'
How to extend an existing service
- make a docker-compose file like ~/.odoo/docker-compose.yml
services:
odoo3:
labels:
compose.merge: base-machine
environment:
WHAT YOU WANT
volumes:
WHAT YOU WANT
Example for fixed ip addresses
services:
proxy:
networks:
network1:
ipv4_address: 10.5.0.6
networks:
network1:
driver: bridge
ipam:
config:
- subnet: 10.5.0.0/16
Some labels
services:
new_machine:
...
labels:
odoo_framework.apply_env: 0 # do not apply global environment from settings here
How to upload new version
- increase version in setup.py
- one time: pipenv install twine --dev
pipenv shell
pip install build
rm dist -Rf
python -m build
twine upload dist/*
exit
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wodoo-0.2.52.tar.gz
(89.8 kB
view details)
File details
Details for the file wodoo-0.2.52.tar.gz
.
File metadata
- Download URL: wodoo-0.2.52.tar.gz
- Upload date:
- Size: 89.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f762f468b2daa0a560953a4cbe3876fef80020140b0d73f8e4074842c6ed255 |
|
MD5 | 81a09ab3aea27dad09fa966df19bf1c3 |
|
BLAKE2b-256 | 031b83c83be771c536efe8d2e7e7a4e933d37c14f88c84235885e583a6bd1f6b |