Issue migrating project_milestone from 14.0 to 15.0
I'm migrating a database from 14.0 to 16.0, and I face issue with migration of project_milestone between 14.0 and 15.0.
Module
project_milestone
Describe the bug
The migration script fails to run when performing an update with OpenUpgrade in 15.0 on a database with project milestone installed.
To Reproduce
Affected versions: 15.0
Steps to reproduce the behavior:
- create a database with project_milestone installed in 14.0
- run OpenUpgrade in 15.0 on this database
- the upgrade fails.
Expected behavior
Migration script of project_milestone in 15.0 should not fail and block migration.
Additional context The errors comes from the fact that :
-
project_task_milestoneis already existing in the database event when not installed, so renaming the module fails. - the field
deadlineis already existing because moduleprojecthas already been updated beforeproject_milestone, so renaming fails.
I can not figure out what is the case where this migration script will work.
I suggest the following solution:
In OpenUpgrade 15.0, use apriori.py file to rename module project_milestone into project_task_milestone and add the column rename in the migration script of the project module so that the rename happen before the deadline columns creation by the update of the project module.
Remove the empty project_milestone module from 15.0 branch.
What do you think ? I will try such a solution, and come back with feedback.
I've done some tests.
I added this pr to OpenUpgrade to cover the change between 14.0 to 15.0. And I added this pr to cover change between 15.0 to 16.0.
It works well except that for the time being, stages need to be activated manually in project configuration.
@patrickrwilson You may be interested in this issue as maintainer of project_milestone.