Currently, load-import uploads .iso and .sig to sysinv-api, which
may be a very slow operation that may cause sysinv-api timeouts,
specially with larger iso sizes.
This commit adds a new --local option that instructs the client
to bypass the step that transfers the load via sysinv-api, instead
sending the .iso and .sig absolute paths on the active controller
filesystem so that conductor uses this information to import the
load locally.
Test Plan
PASS: import the load with --local option and verify:
- Load information is populated on /var/www/pages/feed
- Load is updated on the database to importing -> imported
PASS: import the load with --local option passing an invalid file
format and verify:
- load-import returns "signature could not be verified" error
- Conductor logs "signature could not be verified" error
PASS: import the load with --local option passing an invalid file
path and verify:
- load-import returns "file not found" error
PASS: import the load with --local option and upgrade AIO-DX
PASS: import the load with --local option on systemcontroller
and verify load uploaded to /var/www/pages/feed and
/opt/dc-vault/loads
Regression
PASS: import the load without --local option and verify:
- Load information is populated on /var/www/pages/feed
- Load is updated on the database to importing -> imported
PASS: import the load without --local option passing an invalid file
format and verify:
- load-import returns "signature could not be verified" error
- Conductor logs "signature could not be verified" error
PASS: import the load without --local option passing an invalid file
path and verify:
- load-import returns "file not found" error
Story: 2009303
Task: 45886
Relates-To: https://review.opendev.org/c/starlingx/distcloud/+/851616
Change-Id: I1fde3799e3eba8cb772c8e01b0b225d8539e1311
Signed-off-by: Heitor Matsui <HeitorVieira.Matsui@windriver.com>