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.5

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.5
File Size Uploaded Provenance
odooconf-0.1.5.tar.gz 17.8 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 36.9 kB

Release files / odooconf-0.1.5.tar.gz

Download URL odooconf-0.1.5.tar.gz
Size 17.8 kB
Tags Source
SHA-256 checksum
How to use checksums
1d4e63d58fc796e7d39321b7a5604d72f24b5519a05451cf3adeef766eac2366
BLAKE2b-256 checksum
How to use checksums
84dd5f3d9f6984d9fedcefacb3963b299f4396438fdb9faceab19ad34ae0976c
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.5-py3-none-any.whl

Download URL odooconf-0.1.5-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
efadffe5a16456b070cae4328abf72aeb43388e5401872a4bd61ad3ca877da81
BLAKE2b-256 checksum
How to use checksums
39c8bf6eb443ec83d4e4e7f233617b3228b60178eff0ac7110137862787f50ed
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.5

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