DEV.co
Open-Source Databases · OCA

OpenUpgrade

OpenUpgrade is an open-source tool that automates database migrations and schema upgrades for Odoo/OpenERP systems. It provides migration scripts and a framework to handle version transitions while preserving data integrity.

Source: GitHub — github.com/OCA/OpenUpgrade
962
GitHub stars
820
Forks
Python
Primary language
AGPL-3.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryOCA/OpenUpgrade
OwnerOCA
Primary languagePython
LicenseAGPL-3.0 — OSI-approved
Stars962
Forks820
Open issues114
Latest releasedatabases (2017-10-03)
Last updated2026-07-07
Sourcehttps://github.com/OCA/OpenUpgrade

What OpenUpgrade is

Python-based migration framework that executes SQL and Python scripts to transform Odoo databases across major versions. The openupgrade_framework module integrates with Odoo's server-wide modules, and openupgrade_scripts contains migration analysis and scripts for Odoo SA modules.

Quickstart

Get the OpenUpgrade source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/OCA/OpenUpgrade.gitcd OpenUpgrade# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Major Odoo version upgrades

Automating schema changes, field migrations, and data transformations when upgrading between major Odoo releases (e.g., 13.0 → 14.0 → 15.0).

Custom module data preservation

Maintaining data integrity during migrations when custom Odoo modules are involved, using the framework to write version-specific migration scripts.

Multi-database Odoo deployments

Organizations running multiple Odoo instances that need consistent, reproducible upgrade paths across all databases with minimal manual intervention.

Implementation considerations

  • Thoroughly test migration scripts in a staging environment before production use; each Odoo version may have specific schema expectations.
  • Review and potentially customize openupgrade_scripts for any non-standard or custom modules; pre-built scripts cover Odoo SA modules only.
  • Maintain backups of source and target databases; migration is a one-way operation once data is transformed.
  • Allocate time for validation and data reconciliation post-migration to ensure all fields, relationships, and records have been correctly transformed.
  • Monitor CI/CD pipelines (pre-commit, test status) on the target branch (e.g., 19.0) to ensure compatibility with your Odoo version.

When to avoid it — and what to weigh

  • Not using Odoo/OpenERP — This tool is specifically designed for Odoo/OpenERP ecosystems. It is not applicable to other business management platforms.
  • Requiring commercial support guarantees — OpenUpgrade is community-driven with no SLA or guaranteed commercial support. If you need enterprise-grade support, consider Odoo SA's official services.
  • Large, heavily customized legacy deployments — Complex customizations may require extensive testing and custom migration scripts; automated scripts alone may not cover all edge cases without manual review.
  • Strict proprietary codebase licensing — AGPL-3.0 licensing requires any modifications or integrations to remain open source, which may conflict with proprietary software requirements.

License & commercial use

OpenUpgrade is licensed under AGPL-3.0. Individual modules may have different licenses; consult each module's __manifest__.py. AGPL-3.0 is a copyleft license: any modifications or derivative works must also be released under AGPL-3.0 and source code must be made available.

AGPL-3.0 permits commercial use, but requires that any modifications, extensions, or networked deployments remain open source and copyleft. If you modify or bundle OpenUpgrade with proprietary software, you must comply with AGPL-3.0 obligations. Odoo Community Association (OCA) provides no explicit commercial indemnity or warranty. Review your legal requirements before commercial deployment.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

No explicit security audit or disclosure policy documented. AGPL-3.0 license obligation requires source code review; inspect migration scripts for SQL injection or unintended data exposure. Database credentials and migration logs must be handled securely in CI/CD pipelines. Recommend code review of custom migration scripts before production use.

Alternatives to consider

Odoo SA Official Migration Services

Proprietary, supported upgrade path with SLA and dedicated consulting; best for enterprises requiring guaranteed uptime and expert guidance.

MantiCore / Custom In-House Migration Scripts

Full control and no copyleft obligations, but requires significant development effort and maintenance; suitable for organizations with strong internal database/Odoo expertise.

Third-party Odoo integrators / Consulting firms

Offer custom migration services, often wrapping or extending OpenUpgrade; useful for complex deployments but adds cost and external dependency.

Software development agency

Build on OpenUpgrade with DEV.co software developers

Evaluate OpenUpgrade for your Odoo migration. Test in staging first, review the 19.0 branch CI/CD status, and consult with your team on custom script requirements. Contact Devco for enterprise migration consulting if needed.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

OpenUpgrade FAQ

Does OpenUpgrade work with all Odoo versions?
OpenUpgrade supports major versions with active branches (e.g., 19.0). Older versions may have limited or no migration scripts. Check the branch list and release notes for your target version.
Can I use OpenUpgrade for custom Odoo modules?
Yes, the openupgrade_framework provides hooks for custom migration scripts. However, you must write and test scripts for non-standard modules; pre-built scripts cover Odoo SA modules only.
Is my data guaranteed to be safe during migration?
No guarantees. Always back up databases before migration. Test thoroughly in staging. The framework reduces manual errors, but validation and verification post-migration are your responsibility.
Can I use OpenUpgrade in a proprietary/closed-source product?
Not without making your modifications open source. AGPL-3.0 copyleft obligations apply. If you modify or integrate OpenUpgrade, derivative code must be released under AGPL-3.0. Consult legal counsel before commercial integration.

Work with a software development agency

DEV.co helps companies turn open-source tools like OpenUpgrade into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your open-source databases stack.

Ready to upgrade your Odoo deployment?

Evaluate OpenUpgrade for your Odoo migration. Test in staging first, review the 19.0 branch CI/CD status, and consult with your team on custom script requirements. Contact Devco for enterprise migration consulting if needed.