Provide a way to update a plan after the templates are changed in swift
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tripleo |
Fix Released
|
Critical
|
Dougal Matthews |
Bug Description
When updating a plan, users would upload new files to Swift. However, if it a vastly different plan then it may not match the mistral environment which is created based on the default plan.
We therefore need a way to update the mistral environment. There are a couple of options.
1. Delete it and re-create it. This would lose the user set parameters and selected environments (for example if done via the GUI). This is the simplest and cleanest, but a pain for users.
2. Update and attempt to merge. If there is a new root environment, add that and look at the existing environments and remove it. This is more complicated, and should automate the process most of the time but could be confusing if it goes wrong. For example, what if the user changes the root environment, but the old file is still there, with the logic described we would have two root environments.
3. Same as number 2, but rather than merge the environment list, just overwrite it. This would have the disadvantage of having users need to select environments again.
Both 2 and 3 also run the risk of having parameters that no longer match the templates in swift.
tags: | added: tripleo-common workflows |
Changed in tripleo: | |
status: | Fix Committed → Fix Released |
When a user posts new files to swift they can then trigger a workflow to *process* these templates and generate new Mistral environment for it. Could we structure our Mistral environment so there are user settings, and auto-generated settings (parameters etc.). In this manner we should be able to layer things such that building the new environment, for the new templates is fairly straightforward.
There will always be a case where the users environment has parameters that get deprecated or need to be updated but that is an area for validations, or end user documentation I think.
In short so long as we properly scope things I think we should be able to process and merge environments in an automated fashion so the user doesn't have to go through too much work when updating templates.