katyukha/Odood
Odood v0.7.0-dev.3 Boosts Odoo Project Management with Smarter Versioning and Docker Upgrades
The Odood project, a powerful tool for managing Odoo deployments and assemblies, has released v0.7.0-dev.3 featuring a new global configuration option, enhanced assembly release commands, upgraded Docker images based on Ubuntu 26.04, and improved Python compatibility. These changes streamline version control, improve automation workflows, and modernize the deployment environment, making Odood an even more robust choice for developers managing Odoo projects.
What is Odood?
Odood is an open-source tool designed to simplify the management, deployment, and versioning of Odoo projects. Odoo itself is a popular suite of business applications including CRM, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management. Odood acts as a layer to automate and streamline working with Odoo repositories, handling assembly versions, changelogs, Docker images, and deployment tasks.
Developers and system administrators who manage Odoo instances benefit from Odood’s capabilities to maintain clean version histories, generate release artifacts, and handle dependencies and environments efficiently. It is particularly useful in continuous integration (CI) pipelines and multi-instance setups.
Highlights of the v0.7.0-dev.3 Release
Released on September 22, 2026, Odood v0.7.0-dev.3 introduces several impactful features and fixes that enhance project configuration, assembly versioning, Docker image management, and Python compatibility.
New Global Configuration Option
A major usability improvement is the addition of a global -c/--config option. This allows users to specify the path to an odood.yml configuration file or its containing directory explicitly when running any Odood command. Previously, Odood relied on discovering the configuration from the current working directory, which limited flexibility.
This new option is especially useful for scripting, cron jobs, or running multiple Odood instances side by side. It must be specified before the command name and is incompatible with command shortcuts like odood start. This enhancement enables more robust automation and better control over project contexts.
Enhanced Assembly Versioning and Release Automation
Odood’s assembly commands have been expanded with the introduction of odood assembly release. This command automates assigning the next assembly version, generating release artifacts, committing changes, and creating a Git release tag. It requires a clean working tree to ensure the tag accurately reflects the released content.
Additionally, odood assembly status now shows the current assembly version, providing quick visibility into the project’s release state.
A new --changelog-preview flag for odood assembly sync writes pending changes into the CHANGELOG.md under an ## Unreleased heading, helping maintainers preview upcoming changelog entries without overwriting manual edits.
Breaking Changes and Version Tracking Improvements
The release marks a significant shift in how assembly versions are tracked. Versions are now managed by Git tags, aligning with the odood repo release approach. The previously used VERSION file becomes optional and is updated only when present or explicitly created with a flag.
This change means that CI workflows must fetch full Git history and tags (fetch-depth: 0 on GitHub Actions, GIT_DEPTH: 0 on GitLab CI) because shallow clones are no longer supported and will be rejected.
Moreover, the previously available odood assembly sync --changelog command has been removed to consolidate changelog generation and version assignment into the odood assembly release command.
Library API updates reflect these changes, with new methods for preparing and validating releases without side effects and deprecation of older changelog generation functions.
Docker Image Upgrades
Odood’s Docker images have been upgraded to be based on Ubuntu 26.04, moving from 24.04. This upgrade modernizes the base environment, but it also required fixes to accommodate changes in package availability and system tools.
For example, the Odoo system user creation now uses shadow utilities (groupadd/useradd) instead of Debian’s addgroup/adduser because the latter package is missing in Ubuntu 26.04. This fix prevents deployment failures on newer hosts.
Additionally, the PostgreSQL client package now correctly comes from the official PostgreSQL apt repository (apt.postgresql.org), resolving a silent misconfiguration in previous images. The repository key installation has been updated to use the /etc/apt/keyrings directory with the signed-by option, reflecting modern Ubuntu best practices.
The Docker image version label is now reliably synchronized with the release it belongs to, preventing confusion from mislabeled images.
Python Compatibility Updates
Odoo 19 now officially supports system Python 3.13, but not 3.14, which remains unsupported due to ecosystem compatibility issues (notably with the OCA server_environment addon). On systems shipping Python 3.14 (like Ubuntu 26.04), Odood installs a compatible Python version to ensure stability.
A critical fix addresses the failure to build the libsass==0.22.0 package on Python 3.14 by upgrading to libsass==0.23.0 in Odoo’s requirements. This fix resolves installation errors, especially on ARM64 architectures where no prebuilt wheels exist.
Other Fixes and Improvements
- The
.dockerignorefile generation no longer excludesodood-assembly.yml, which the Dockerfile copies into the image. This prevents build failures due to missing files. - The
odood deploycommand now creates the Odoo system user correctly on newer Ubuntu versions. - The changelog generation process has been hardened to refuse base revisions older than the latest release, ensuring accurate and consistent changelogs.
Community and Developer Impact
Odood’s users, typically developers and DevOps engineers managing Odoo deployments, will find these updates significantly improve automation reliability and project versioning clarity. The global config option and enhanced assembly release commands simplify scripting and continuous integration workflows.
The move to Ubuntu 26.04-based Docker images and Python compatibility fixes future-proof deployments and reduce friction on newer systems.
The breaking changes related to Git tag-based version tracking require some adjustment in CI configurations but ultimately align Odood with Git best practices, improving traceability and reproducibility.
Conclusion
Odood v0.7.0-dev.3 represents a mature step forward in managing Odoo projects with modern tooling and workflows. By introducing flexible configuration, automating release processes, upgrading base environments, and addressing Python compatibility, Odood continues to empower developers to deliver robust Odoo deployments efficiently.
For those running Odoo instances or developing Odoo addons, adopting this version promises smoother releases and better integration with contemporary CI/CD pipelines.
Sources: