5e5c416a9b
This commit allows the state machine to be defined through an ordered list of states. The states are mapped to by a dictionary to state handler classes. This greatly simplifies the software upgrade orch thread so that it can be refactored in the future to share functionality with other orch thread strategy types. The following states have been implemented: - 'importing load' - 'starting upgrade' - 'activating upgrade' - 'completing upgrade' The 'installing license' state now uses this design pattern. Its functionality and unit tests are now in their own files. The 'unlocking' state requires additional changes for the 'activating' and 'completing' states to pass. Change-Id: Iedc40bdea406461dd4c2ce3887a37be6ec3c999f Story: 2007403 Task: 40001 Signed-off-by: albailey <Al.Bailey@windriver.com> |
||
---|---|---|
.. | ||
states | ||
__init__.py | ||
patch_orch_thread.py | ||
README.rst | ||
service.py | ||
subcloud_install.py | ||
subcloud_manager.py | ||
sw_update_manager.py | ||
sw_upgrade_orch_thread.py |
Service
- DC Manager Service has responsibility for:
-
Main subcloud state machine as well as all operations on subclouds including creation, deletion and update.
- service.py:
-
run DC Manager service in multi-worker mode, and establish RPC server
- subcloud_manager.py:
-
Manages all subcloud related activities such as creation, deletion, availability status, management state
- audit_manager.py:
-
A Periodic audit to contact each subcloud and ensure that at least one of each service group is up and active, which is a pre-requisite for declaring a subcloud as online.
- scheduler.py:
-
Thread group manager, also responsible for periodic timer tasks - ie. audit.