This commit adds semantic check to avoid concurrent backup and
restore operations on the same subcloud. This check is used twice:
- By the API, to return an error if all the subclouds, specified using
either --subcloud or --group options, have an ongoing backup and
restore operation.
- By the backend, to filter out any subclouds where backup and
restore operations are in progress so that concurrent
operations aren't triggered.
Test Plan:
1. PASS - Validate that concurrent backup create operations can't be
triggered on a subcloud using the --subcloud option.
2. PASS - Validate that the API returns an error if all the subclouds
specified have an ongoing backup create operation.
3. PASS - Validate that concurrent backup operations aren't started on
any subclouds when using the --group option.
4. PASS - Validate that concurrent backup restore operations can't be
triggered on a subcloud using the --subcloud option.
5. PASS - Validate that the API returns an error if all the subclouds
specified have an ongoing backup restore operation.
6. PASS - Validate that concurrent backup restore operations aren't
started on any subclouds when using the --group option.
Closes-Bug: 1998500
Signed-off-by: Andre Carneiro <Andre.DexheimerCarneiro@windriver.com>
Change-Id: Ic11de20d7a323c400070cc41131b81dc5e3ddd56