Skip to main content

OdooConf Tool

Python License

CLI tool for managing and optimizing Odoo configurations (odoo.conf).

📦 Installation

Option 1: Install with pip

pip install odooconf

Option 2: Install with pipx (recommended for isolation)

pipx install odooconf

🔧 Key Features

  • 🛠 Generation of optimized base configurations
  • 🔍 Automatic detection of addons paths
  • 👁 Real-time monitoring with watchdog
  • ⚡ Automatic optimization of server parameters
  • 🔒 Secure credential management

🚀 Basic Usage

Generate initial configuration

odooconf new /path/to/destination
  • users: Number of concurrent users the server is expected to have (default: 2)

Find addons and update paths

odooconf paths /path/to/addons --odoo-conf /path/to/odoo.conf --internal-path /mnt/odoo/addons
  • /path/to/addons: Path on the filesystem where addons will be searched (host).

  • --odoo-conf: Path to the file or folder containing the odoo.conf to be updated.

  • --internal-path: (Optional) Internal path to be used instead of the host path when writing to odoo.conf. Ideal for containerized environments (e.g., Docker).

Optimize server for 50 users

odooconf server /path/to/odoo.conf --users 50 --auto-ram

🔧 Advanced Server Configuration (server)

The server command automatically optimizes performance parameters in odoo.conf:

🖥️ Hardware Parameters

--users N       # Calculates workers: (users/6) + 1 (required for automatic calculation)
--ram X         # RAM total in GB (e.g., --ram 8 for 8GB)
--auto-ram      # Automatically detects RAM (overrides --ram if present)

⏱️ Time Limits

--time-cpu N    # CPU limit per request (default: 60s)
--time-real N   # Maximum real time per request (default: 120s)

🔐 Database Configuration

--db-host HOST  # PostgreSQL host (default: db)
--db-port PORT  # Port (default: 5432)
--db-user USER  # User (default: odoo)
--db-pass PASS  # Password (default: odoo)
--hide-db       # Hide the list of databases (web/database/selector)

🔄 Automatic Values

With --auto-ram or --ram, the following are calculated:

  • limit_memory_soft: 75% RAM/worker
  • limit_memory_hard: 95% RAM/worker
  • workers: Based on --users (default: 2)

🔒 Security

The admin password can be generated with:

--admin-passwd PASS  # Generates PBKDF2 hash (does not store plain text)

💻 Complete Example

odooconf server /etc/odoo.conf \
  --users 100 \
  --auto-ram \
  --time-cpu 90 \
  --time-real 180 \
  --admin-passwd "S3cr3tP@ss" \
  --db-host db-prod \
  --db-port 5433

Alias

The utility can be used as an alias for the command oc or odooconf.

📄 License

This project is licensed under the GNU GPLv3.

🌍 Repository

git+https://github.com/Alitux/odooconf

🤝 Contributions

Contributions are accepted via merge requests in the Github repository.

💡 Support

Report issues at: https://github.com/Alitux/odooconf/issues

Metadata

Release files for odooconf 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for odooconf 0.1.6
File Size Uploaded Provenance
odooconf-0.1.6.tar.gz 17.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for odooconf 0.1.6
File Interpreter ABI Platform
odooconf-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 36.8 kB

Release files / odooconf-0.1.6.tar.gz

Download URL odooconf-0.1.6.tar.gz
Size 17.8 kB
Tags Source
SHA-256 checksum
How to use checksums
09e598b413a3d226a04279bf56e27927875223ee4d946dc45fa3f60d5e5eef39
BLAKE2b-256 checksum
How to use checksums
421f10d4f0acf8189d825c752d5ee389c14665addcc4343d2c59c76960ba6993
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.13.7 Linux/6.17.6-arch1-1

Release files / odooconf-0.1.6-py3-none-any.whl

Download URL odooconf-0.1.6-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9548d8daa03c394257b8557d17c0f2beb8dad4f37e5d6a039b91f57b9bef893f
BLAKE2b-256 checksum
How to use checksums
be05022f18b22a72a9fb439f6c535e83b364528ec365c61713bef46014b0dc17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.13.7 Linux/6.17.6-arch1-1

Security for odooconf 0.1.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page