Skip to main content

odoo-version-manager

Manages Odoo modules across multiple version branches (11.0–19.0). Changes on the root version branch are automatically deployed to all other branches via GitHub Actions + rebase.

There is no main branch — the versioned branch (e.g. 16.0) is the direct source of truth. The branch chain looks like this:

11.0 ← 12.0 ← ... ← 16.0 (root) ← 17.0 ← ... ← 19.0

installing

pipx install odoo-version-manager
odoo-version-manager install-completion

usage

initial setup

  • create a repository with your modules on the root version branch (e.g. 16.0)
  • define which version is the root:
mkdir -p .github
echo 16.0 > .github/version_behind_main_branch
odoo-version-manager setup

setup takes an optional runner label for the generated github workflow (self-hosted or ubuntu-latest, default: ubuntu-latest). It is stored persistently in the settings file:

odoo-version-manager setup self-hosted

settings file

Settings are stored per repository in .github/odoo-version-manager.settings.json (created automatically on first run):

{"runs_on": "ubuntu-latest"}
  • runs_on: runner label used in the generated deploy workflow. Use self-hosted if the SSH_PRIVATE_KEY secret should never leave your own infrastructure.

The generated workflow requires the repository secret SSH_PRIVATE_KEY to push to the version branches.

upgrade root version

If you want to move the root version from 16.0 to 18.0:

git checkout 18.0
echo 18.0 > .github/version_behind_main_branch
odoo-version-manager setup

rebase all branches

If there are merge conflicts you must manually help the branches to pass their new commits from one to the other. It is advised to use the -r option to reduce the commits from one branch to the other to make it easier the next time to resolve merge conflicts.

odoo-version-manager rebase -r

existing main branch

If a main branch still exists in the repository, the tool will refuse to run and display instructions on how to delete it. A main branch is no longer used and causes confusion.

Release files for odoo-version-manager 0.0.25

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

Source distribution (sdist)

Source distribution for odoo-version-manager 0.0.25
File Size Uploaded
odoo_version_manager-0.0.25.tar.gz 19.4 kB Details

Release files / odoo_version_manager-0.0.25.tar.gz

Download URL odoo_version_manager-0.0.25.tar.gz
Size 19.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1c8448ccd91a15df43398397d0e93236d10a6864c369055e7d96f2ba2228b361
BLAKE2b-256 checksum
How to use checksums
64aa2459d68c822b9d9fb087c3bdacfc5dc30bd845e6568b045788ab6ff57ffb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.0.25 This release

1 release file

0.0.24

1 release file

0.0.23

1 release file

0.0.22

1 release file

0.0.21

1 release file

0.0.20

1 release file

0.0.19

1 release file

0.0.18

1 release file

0.0.17

1 release file

0.0.16

1 release file

0.0.15

1 release file

0.0.14

1 release file

0.0.13

1 release file

0.0.12

1 release file

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