DeploymentFailuresAction uses incorrect execution id to look for errors file
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tripleo |
Fix Released
|
High
|
James Slagle |
Bug Description
Currently the config-download deployment files are stored at /var/lib/
Possible solution:
Since there is a symlink to latest config download, we could skip reaching for execution completely and just load failures from /var/lib/
Issue with this approach is that config download data stored in /var/lib/mistral/ are not scoped by plan name which we would need to successfully identify failures for different plans. So in addition, we need to change the files structure so the config-download deployment files are stored in
/var/lib/
Then we can reliably load the failures by looking at
/var/lib/
Also we need to make sure that /var/lib/
related discussion:
https:/
Changed in tripleo: | |
assignee: | Jiri Tomasek (jtomasek) → James Slagle (james-slagle) |
Changed in tripleo: | |
assignee: | James Slagle (james-slagle) → Jiri Tomasek (jtomasek) |
Changed in tripleo: | |
assignee: | Jiri Tomasek (jtomasek) → James Slagle (james-slagle) |
for tripleoclient, the execution_id actually is that of config_ download_ deploy.
what do you mean by the execution_id not being persisted forever? The execution record isn't persisted forever in the mistral db, but we don't actually use that for anything. We are looking up the execution_id from deployment_ status. yaml from the <plan name>-messages swift container. All of that should be persisted forever, unless a user triggered delete is done.
we can consider namespacing by plan name under /var/lib/mistral, i'm not entirely sure that is needed though. I may also look into explicitly setting something like config_ download_ deploy_ execution_ id within deployment_ status. yaml so that it gives us a consistent way to get the execution id across the client and UI.