Provides the new CLI command:
sw-manager kube-upgrade-strategy
VIM build stages are:
- query-alarms
- query-kube-upgrade
- query-kube-versions
- query-patches
- query-patch-hosts
VIM apply stages are:
- kube-upgrade-start
- download images
- first control plane
- networking
- second control plane
- apply second kubernetes patch
-- applies the patch
-- host-install on each controller
-- host-install on each storage
-- host-install on each worker
- kubelets (controllers)
- kubelets (workers)
- complete
- cleanup
Functionality includes:
- kube-upgrade API endpoint for orchestration.
- new rpc messages for create kube strategy and intermediate actions.
- kube-upgrade event handling, as well as alarm and event logs.
- 'upgrade start' uses the latest sysinv health api to include
the vim auto apply alarm in the ignore list for the health check.
New unit tests:
- build strategy phase
- simplex controller
- duplex controller (no existing kube upgrade)
Story: 2008137
Task: 41436
Depends-On: https://review.opendev.org/c/starlingx/fault/+/767374
Depends-On: https://review.opendev.org/c/starlingx/stx-puppet/+/775824
Signed-off-by: albailey <Al.Bailey@windriver.com>
Change-Id: I36e1b3ff3550a9d656ba40754b47570acc82a525
This appends the WaitAlarmsClearStep after UnlockHostsStep on controller
hosts when stx-openstack application is installed for SwPatchStrategy.
This will periodically query alarms and allows the system to stabilize.
If stx-openstack is not installed, this will do one minute wait with the
existing SystemStabilizeStep.
Change-Id: I6dbc4c6032a3bb9d160df79d46630a81960cbb37
Closes-Bug: 1893124
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
The current vim firmware update orchestration strategy
detects and monitors firmware update at the host's pci
device level.
This update makes use of a new 'device_image_update'
status field that is now available at the host level
and used for
1. detecting what hosts need firmware update and
2. monitoring the host firmware update process
Change-Id: I2988b874665fcc5e3b02caad4167cab226c3929b
Story: 2006740
Task: 39873
Signed-off-by: Eric MacDonald <eric.macdonald@windriver.com>
This update adds firmware update orchestration support to
the VIM for host device fpga images as described in the
'N3000 FPGA device image update orchestration' feature
specification. See https://review.opendev.org/#/c/713302/
The firmware update orchestration strategy added to the VIM
is modeled after the VIM's existing patch orchestration
and includes strategy create/apply/show/abort/delete.
The strategy can be managed through the existing sw-manager
tool via the VIM's REST API.
Only unlocked hosts with the worker function are included
in the strategy.
The strategy includes a stage for each host or group of hosts
with ordered step sequences of firmware update followed by a
lock and unlock of each updated host.
Change-Id: I4eea7ca3f00782d27cdbb5d5615c6a255ac6966e
Story: 2006740
Task: 39145
Signed-off-by: Eric MacDonald <eric.macdonald@windriver.com>
This commit re-orders the imports to allow enabling in flake8:
H306: imports not in alphabetical order
This change should have no functional impact on the code
Scenario tests all passing.
Story: 2004515
Task: 28684
Change-Id: I412474dfdd1ee9d7deade7f7d6aca32085c0f3f2
Signed-off-by: Al Bailey <Al.Bailey@windriver.com>
A number of changes were done to the imports in the files.
- Clean up flake8 H301 multiple imports per line
- Remove noqa from top of files, allowing flake8 to run
on all files.
- Clean up relative imports in most places. This will
simplify python3 support later.
- Partially sort the imports. A later commit will
enable that check since doing that here would have made
the changeset even bigger.
Story: 2003499
Task: 26561
Change-Id: Id5f95559f0d4604f4db1a1d74098063fd510142c
Signed-off-by: Al Bailey <Al.Bailey@windriver.com>