Fix reboot required getting reset or incorrectly set

Two cases:
1. Node is reboot required yet flag gets cleared when runtime
manifests are executed.
2. Node is not reboot required yet sometimes flag gets set as
new, randomly generated, uuid comes with reboot require bit,
then node becomes "config changed reboot required", until a
reboot occurs.

Change-Id: I1e69f9698b42a961db055b89da12b2d84421490a
Closes-Bug: 1829090
Signed-off-by: Ovidiu Poncea <ovidiu.poncea@windriver.com>
This commit is contained in:
Ovidiu Poncea
2019-05-20 16:22:19 +03:00
parent 0897bdcb98
commit 8fe1e43c34

View File

@@ -6006,6 +6006,9 @@ class ConductorManager(service.PeriodicService):
else:
new_uuid = str(uuid.uuid4())
# Apply runtime config but keep reboot required flag set in
# _config_update_hosts() above. Node needs a reboot to clear it.
new_uuid = self._config_clear_reboot_required(new_uuid)
self._config_apply_runtime_manifest(context,
config_uuid=new_uuid,
config_dict=config_dict)
@@ -6166,6 +6169,9 @@ class ConductorManager(service.PeriodicService):
else:
new_uuid = config_uuid
# Apply runtime config but keep reboot required flag set in
# _config_update_hosts() above. Node needs a reboot to clear it.
new_uuid = self._config_clear_reboot_required(new_uuid)
self._config_apply_runtime_manifest(context,
config_uuid=new_uuid,
config_dict=config_dict)
@@ -7442,6 +7448,9 @@ class ConductorManager(service.PeriodicService):
'classes': ['platform::grub::runtime']
}
# Apply runtime config but keep reboot required flag set in
# _config_update_hosts() above. Node needs a reboot to clear it.
config_uuid = self._config_clear_reboot_required(config_uuid)
self._config_apply_runtime_manifest(context, config_uuid, config_dict, force=True)
def _update_emc_state(self):