Skip to Content
Menú
This question has been flagged

What are the best practices for transporting new &/or changed master data and settings (only the necessary ones & only the ones that work!) into production?  I have not been able to find a Change/Configuration Management System that will help me track everything.  I am concerned about:.

  1. the administrative load required to manually track my changes

  2. the very real possibility that I may forget to log an important change to configuration/settings

  3. the possibility of undoing or otherwise affecting the work of my team members because I was unaware of their changes and requirements

  4.  not knowing the justification for previous settings.  (Why was it set that way and will I break something if I change it?)

From what I understand, we are to export data from TST as a CSV & then import it into PRD.  What data?  Some of it is new products that need to be loaded into PRD, some of it is corrections to existing data that needs to be changed (because we learned something new or the biz reqs changed), and some of it is garbage because this is my sandbox where I experiment!

I have been told that any new settings will have to be manually set in PRD (can anyone say "rework"?).  What if I miss one?  I'm constantly trying different approaches in order to arrive at a workable solution.  I can easily see myself forgetting to record one OR recording one, reversing it and then forgetting to mark it off the list.

There must be a better way!!!

Avatar
Descartar
Best Answer

Configuration Management for Transports to PRD in Odoo

In Odoo development and deployment workflows, configuration management refers to the structured process of managing changes across different environments (Dev, Test/UAT, and Production).

When transporting configurations or customizations to the Production (PRD) environment, it’s essential to follow a reliable process to ensure stability and traceability.

Recommended Configuration Management Approach:

  1. Version Control:
    Use Git to track and manage all custom modules and configurations. Each change should be committed with meaningful messages and tagged by release version.
  2. Staging Environment:
    Always test changes in a staging or UAT environment that mirrors production. This helps catch issues before deployment.
  3. Migration Scripts:
    For data model changes or configuration updates (e.g., record rules, views, settings), use migration scripts or XML/CSV data files within custom modules (data or demo folders).
  4. Record Configuration with XML-ID:
    For configurations like sequences, groups, or settings, use data files with noupdate="0" and assign external IDs. This ensures the records are updatable across environments.
  5. Automated Deployment (Optional):
    Use tools like Docker, GitHub Actions, or custom scripts to automate the deployment process to PRD and reduce manual steps.
  6. Backup Before Deployment:
    Always create a full backup of the database and filestore before pushing any transport to production.
  7. Post-Deployment Checks:
    Verify modules are upgraded correctly using -u parameter and perform sanity checks for key workflows.

Avatar
Descartar
Autor Best Answer

Thank you for your quick reply!  We are using Odoo.sh.  What would you recommend?

Avatar
Descartar
Best Answer

Hi Sandi:

If the application is hosted by you (i.e. not Odoo online) you have the option of defining a custom module for your site specific changes and installing/upgrading it through the Apps menu. This provides you the ability of having the module under version control and integrating it with your configuration/release management process.

Avatar
Descartar
Related Posts Respostes Vistes Activitat
1
de des. 23
1010
2
de març 24
2963
0
de set. 21
1577
1
de maig 24
1972
0
d’abr. 24
1859