This is our checklist for odoo.sh production implementations:
MODULE NAME: (enter here)
ROLLBACK PLAN
Document the rollback plan here (edit the example plan below as needed)
Create database backup
Uninstall module
Test in production or rebuild staging
Make sure the module is uninstalled and production is working as expected
IN ODOO
- If upgrading, record here the currently installed app version:
- Record here the version being installed here:
- If upgrading, confirm the new version number is higher than the current version
IN ODOO.SH
Create development branch from production branch
- Branch name: release-[user/company]-yyyymmdd
ON LOCAL COMPUTER
- Clone the release branch
- Update the release branch with the production changes
- commit push
IN GITHUB
- Delete your older release branches if any (keep back one month)
Create pull request using these steps
- Pull Requests / New Pull Request
- CAUTION: PR against the production branch
- Title: [ticket/task description including number]
- Description: [Purpose from README.AI.md]
- Create pull request
- CAUTION: Double check the content of the PR to make sure it is correct
- Submit Pull Request, request co-worker to review and approve the PR
- Co-worker Approve Pull Request
IN ODOO.SH
- Select the odoo.sh project and the production branch
- CAUTION: Double check that you are in the correct odoo.sh project and have the production branch selected
- Backup the production database
- View the Branches / History (so you can monitor the activity during the Merge Pull Request)
IN GITHUB
- Merge Pull Request
IN ODOO.SH
In Builds
If GREEN you are good. if YELLOW you are good but check the warnings, If RED the build failed and the previous green or yellow build is still the production build running the production system, production is not down but consider this an urgent issue to be fixed ASAP because at this time the GitHub source does not match the source in the running production container. Move GitHub forward and get the issue fixed or revert GitHub back to the previous source.
If a new module, in Branches / Shell
odoo-bin -i [foldername] --stop-after-init --no-http --max-cron-threads=0
odoosh-restart http
If an existing module, no action needed, should auto update
IN ODOO
- In Apps, in list view, confirm the version number is the expected number (noted above)
PRODUCTION TESTING
- Option 1: If you can test without any permanent data changes, test the module in production
- Option 2: If permanent data changes are needed to complete production testing, rebuild staging (where the module source came from OR update staging with the new/updated source code) and test in staging
AFTER PRODUCTION TESTING IS SUCCESSFUL
- Notify client that production has been updated
- Update all stating branches with the new/updated source code
Update this ticket/task,
- log note "Installed into production
- Check status to "solved" or add "done" tag