Skip to main content

A command-line tool to spin up isolated Odoo dev environment in seconds.

Project description

odoo-venv

A command-line tool to spin up isolated Odoo dev environment in seconds.

Installation

pip install odoo-venv

Quick Start

1. Direct CLI Arguments

Example:

odoo-venv create 17.0 \
    --odoo-dir ~/code/odoo/odoo/17.0 \
    --addons-path ~/code/odoo/addons/web,~/code/odoo/addons/mail \
    --python-version 3.10 \
    --install-addons-dirs-requirements \
    --extra-requirement "debugpy,ipython"

This command creates a virtual environment for Odoo 17.0 with the following specifications:

  • Odoo source is located at ~/code/odoo/odoo/17.0.
  • Additional addons are in ~/code/odoo/addons/web and ~/code/odoo/addons/mail.
  • The environment uses Python 3.10.
  • It installs dependencies from requirements.txt files found in the addons paths.
  • It also installs debugpy and ipython.

2. Using Presets

For recurring configurations, you can define presets in a presets.toml file, in ~/.local/share/odoo-venv/.

There are 4 out-of-box presets: local, demo, project, ci (see odoo_venv/assets/presets.toml)

Example:

odoo-venv create 17.0 \
    --odoo-dir ~/code/odoo/odoo/17.0 \
    --addons-path ~/code/odoo/addons/web,~/code/odoo/addons/mail \
    --preset demo

This command will apply all the options from the demo preset. You can still override any preset option by providing a direct CLI argument. For example, to use a different extra_requirement for a specific run:

odoo-venv create 17.0 \
    --odoo-dir ~/code/odoo/odoo/17.0 \
    --addons-path ~/code/odoo/addons/web,~/code/odoo/addons/mail \
    --preset demo \
    --extra-requirement "pylint"

3. As a Library

The tool can also be used as lib in a custom python script

Example:

from odoo_venv import create_odoo_venv

create_odoo_venv(
    odoo_version="17.0",
    odoo_dir="~/code/odoo/odoo/17.0",
    venv_dir="./.venv",
    python_version="3.10",
    addons_paths=["~/code/odoo/addons/web", "~/code/odoo/addons/mail"],
    install_addons_dirs_requirements=True,
    extra_requirements=["debugpy", "ipython"],
)

Development

To test with a clean state (no cached packages, no custom presets):

uv cache clean --force
rm ~/.local/share/odoo-venv/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

odoo_venv-1.2.0.tar.gz (26.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

odoo_venv-1.2.0-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file odoo_venv-1.2.0.tar.gz.

File metadata

  • Download URL: odoo_venv-1.2.0.tar.gz
  • Upload date:
  • Size: 26.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for odoo_venv-1.2.0.tar.gz
Algorithm Hash digest
SHA256 812a1ea4f1ad737127c4ad319e2203e5ecb5b35b2a50c6d12ca1d15aa110556f
MD5 085f1cb9586d4c4885d8902c5b1ceef6
BLAKE2b-256 7b4d44956286a75b01f632e0fee52674447076e8f9b05786e0a637106dd05332

See more details on using hashes here.

Provenance

The following attestation bundles were made for odoo_venv-1.2.0.tar.gz:

Publisher: publish.yml on trobz/odoo-venv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file odoo_venv-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: odoo_venv-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 29.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for odoo_venv-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7262a14bd97792769c588a01ac46df0b569ede6267461189aa6e5e233bc8cb84
MD5 7b4949701dfa5c3d09311399e394b272
BLAKE2b-256 61ef73ae8e6a4839605932e72036c550f731ec879db2f92cf0916bb9e3b75acb

See more details on using hashes here.

Provenance

The following attestation bundles were made for odoo_venv-1.2.0-py3-none-any.whl:

Publisher: publish.yml on trobz/odoo-venv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page