Requesting to backport one more step from Ocata to Newton: Add a new cli argument, --skip-deploy-identifier. The argument will eventually be passed to the tripleo-common DeployStackAction action to disable setting a unique value for the DeployIdentifier parameter, which means the SoftwareDeployment resources in the templates will only be triggered if there is an actual change to their configuration. This argument can be used to avoid always applying configuration, such as during node scale out. https://git.openstack.org/cgit/openstack/tripleo-common/commit/?id=320960c804fcdcaa1458a7dec1fbbe70f77900ee https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=1b877698ce76f858d6d9d0dc629261bf21aa89f9
Please, this backport is referred to backport a deployment feature as it is "--skip-deploy-identifier". Can you clarify if this is related to an update/upgrade task?
Hi Jarda, I discussed with a major telco operator in France who are very interested to get that feature back ported in OSP10. The main issue that they are encountering is that when they deploy new computes all the system must be in maintenance mode and this is because they made some post-config work on the existing node that must be redeployed once again when the new compute nodes are added. The customer is aware that this enhancement is limited to unforce Puppet on compute nodes already deployed and that any post configuration work done via Director would be run on all existing compute (But this should normally not affect the nodes since the value should not be changed if target is to have the new nodes to get the same configuration as the one already deployed). Also the above limitation can be bypassed if post-configuration is run manually outside of Director if need be.
Will it be possible to add a file as an argument containing the list of the nodes to bypass in the command line? For example assuming there are hundreds of nodes already deployed and we need to add/deploy a very low number of new nodes then this could be more practical if we do not have to manually enter the full list of nodes in the command but rather use a text file in the command. IMHO this will give more flexibility and simplicity for the user.
I believe this specific part of the feature does not require user to enter list of nodes to disable the puppet runs. If I look briefly to the description and code, it seems that the identifier disables puppet runs on all nodes if there is no change in templates. On the opposite, the original OSP12 full blacklist feature would require user to enter nodes to be blacklisted. This is not required in this backported functionality.
Comment from Alex (our eng): The requested backport is for the --skip-deploy-identifier option which will reduce (but may not completely prevent) puppet runs during updates. If heat calculates there is a change in the configuration based on the environment puppet will run.
Verified on build 2017-10-30.3
According to our records, this should be resolved by python-tripleoclient-5.4.3-1.el7ost. This build is available now.