Bug 1343232

Summary: rhel-osp-director: [RFE] Need to save the deployment command somewhere to be available for subsequent maintenance of the OC.
Product: Red Hat OpenStack Reporter: Alexander Chuzhoy <sasha>
Component: python-tripleoclientAssignee: mathieu bultel <mbultel>
Status: CLOSED ERRATA QA Contact: Ola Pavlenko <opavlenk>
Severity: high Docs Contact:
Priority: unspecified    
Version: 9.0 (Mitaka)CC: apannu, beth.white, dbecker, dyasny, hbrock, jason.dobies, jbuchta, jcoufal, jpichon, jrist, jschluet, jslagle, mbultel, mburns, mcornea, morazi, oblaut, opavlenk, rhel-osp-director-maint, tvignaud, ukalifon, zbitter
Target Milestone: Upstream M2Keywords: FutureFeature, Reopened, TestOnly, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-24 12:32:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alexander Chuzhoy 2016-06-06 21:25:46 UTC
rhel-osp-director:  [RFE] Need to save the deployment command somewhere to be available for subsequent maintenance of the OC.


Without the documented deployment command it's not easy to run updates,scale, etc of the overcloud. Need to save the deployment command aside for relying on it to maintain the overcloud later.

Comment 2 Zane Bitter 2016-06-06 21:37:15 UTC
This would be useful in OSP8 and earlier. In OSP9 it's hopefully not needed thanks to this new feature in Heat that allows stack updates that modify a subset of the environment files without passing all of the environment files used during the stack create to Heat again:

http://specs.openstack.org/openstack/heat-specs/specs/mitaka/multi-environments.html

However, there may be changes in the TripleO client required to take advantage of this feature. AFAIK this has never been tested.

Comment 3 Stephen Gordon 2016-06-09 18:48:39 UTC
Bulk update to reflect scope of Red Hat OpenStack Platform 9 and Red Hat OpenStack Platform does not include this issue (No pm_ack+).

Comment 4 Ofer Blaut 2016-07-28 05:43:59 UTC
I set bug priority to high to avoid use case [1] which we forgot some parameters.

It is very likely to happen to customers, for sure when upgrading from one version to another after a year.

I think we need to same history of all commands relate to deploy/update/upgrade   



[1] https://bugzilla.redhat.com/show_bug.cgi?id=1358374

Comment 5 Alexander Chuzhoy 2016-07-28 13:05:45 UTC
(In reply to Ofer Blaut from comment #4)
> I set bug priority to high to avoid use case [1] which we forgot some
> parameters.
> 
> It is very likely to happen to customers, for sure when upgrading from one
> version to another after a year.
> 
> I think we need to same history of all commands relate to
> deploy/update/upgrade   
> 
> 
> 
> [1] https://bugzilla.redhat.com/show_bug.cgi?id=1358374

+ scale/debugging.

Comment 7 Ola Pavlenko 2017-01-04 14:55:47 UTC
We are post M2, Suggesting to include in 12 (Pike)

Comment 8 Randy Perryman 2017-01-04 14:57:32 UTC
It is not the original Deployment Command needed, but the last deployment command used, i.e. adding nodes.

Comment 9 Udi Kalifon 2017-03-09 15:55:42 UTC
I agree with Zane (comment #2), and I'll enhance on that. Here is how I see it: it's not the commands that we need to refer to, but the environment that was configured. Some of this data is currently available when you run "openstack workflow env show overcloud", and we need to enhance on that:

1) All the environment yamls that were used need to be listed. Currently it lists something very partial like the following (I used a lot more environments than what it lists):

"environments": [                    
    {                                                     
        "path": "overcloud-resource-registry-puppet.yaml" 
    },                                                    
    {                                                     
        "path": "user-environment.yaml"                   
    }                                                     
],                                                        

2) All the default_parameters that were collected from all the yamls should be listed in the environment. Again, this partially works today already and needs to be tested (it would be wonderful to backport it also).

3) The entire set of templates can be found in swift. This already exists today, but the external environment files that were used are not stored in swift. We should store them in addition to listing them as item (1) describes.

The exact command syntax that was used for the deployment can then be deduced from the data stored in the environment, and it's not so important to record the bash command. This should work equally well when using the GUI and using the CLI.

This is a very important enhancement that I need in my automation!

Comment 11 Julie Pichon 2017-06-30 14:29:23 UTC
Something similar to the initial request has been implemented in Pike upstream, adding a few links.

Udi, the work you mentioned on improving environment management is slowly on-going upstream (unfortunately unlikely to be backportable). The external environments you mention should already be stored in swift too as part of the user-environmnent.yaml mega-environment at the moment.

Comment 12 mathieu bultel 2017-06-30 14:43:17 UTC
Thank you Julie, should we put the status on "POST", since the review has been merged ?

Comment 13 Julie Pichon 2017-06-30 14:46:47 UTC
In my opinion it's close enough to the bug description to do this, yes. I'll confirm with the UA what to do with release targets as even if it will be available as part of OSP12 now, I don't know that we have the QE resources available to do the verification. Thanks!

Comment 14 Julie Pichon 2017-08-15 08:40:10 UTC
(Fixing assignment to the actual patch author)

Comment 20 Alexander Chuzhoy 2018-07-24 15:41:23 UTC
Re-opening as it's not clear where the stored deployment command looks like and how to retrieve it.