bb68f0eeb5
Before this change, during an upgrade, this script will run and upgrade/apply any applications present in the app folder to the appropriate version. However, the script itself will only try once with each app. For whatever reason, if the app fails to apply, upload, etc.. then this script will exit with a non-zero return code and the upgrade activate step will fail. The changes in this script are meant to make a retry attempt in the cases of upload, apply or removal failures. Or, in the case, if the script is interrupted, and run for a second, third (etc) time and finds an application in a failed state, then it would also try to retry the appropriate command. Test Plan: PASS - AIO-SX Full Install. PASS - Start Script With App already in apply-failed state. 1. Copy 65-k8s-app-upgrade.sh into the home folder and modify permissions. 2. Re-apply the platform-integ-app with system application-apply platform-integ-app. 3. Before the app can apply, restart the sysinv-conductor - sudo sm-restart service sysinv-conductor. This will force the app into an apply-failed state. 4. Run: 65-k8s-app-upgrade.sh 21.12 22.12 activate. 5. Observe in logs that the script detects that the app is in a failed state, retries to apply it, and detects that the app finished applying and is in an applied state. Use: tail -f /var/log/platform.log. PASS - App ends up in apply-failed state while script is already running. The script will wait on an app in applying state, if it detects that the result is apply-failed then it should retry the application-apply command. Verify that this behavior happens correctly. Closes-Bug: 2035402 Change-Id: I5dd40127f44a0074be0303469f0c2021da128c36 Signed-off-by: Joshua Reed <joshua.reed@windriver.com> |
||
---|---|---|
api-ref/source | ||
config-gate | ||
controllerconfig | ||
devstack | ||
doc | ||
releasenotes | ||
storageconfig | ||
sysinv | ||
tmp/patch-scripts/EXAMPLE_SYSINV/scripts | ||
tools/docker/images | ||
tsconfig | ||
workerconfig | ||
.gitignore | ||
.gitreview | ||
.yamllint | ||
.zuul.yaml | ||
CONTRIBUTORS.wrs | ||
LICENSE | ||
README.rst | ||
bindep.txt | ||
centos_build_layer.cfg | ||
centos_dev_wheels.inc | ||
centos_iso_image.inc | ||
centos_pkg_dirs | ||
centos_pkg_dirs_containers | ||
centos_stable_wheels.inc | ||
debian_build_layer.cfg | ||
debian_iso_image.inc | ||
debian_pkg_dirs | ||
debian_stable_wheels.inc | ||
test-requirements.txt | ||
tox.ini |
README.rst
config
The starlingx/config repository handles the StarlingX configuration management services.
Its key component is the System Inventory Service (Sysinv), which provides the system command-line interface (CLI)1.
This repository is not intended to be developed standalone, but rather as part of the StarlingX Source System, which is defined by the StarlingX manifest2.