
This commit adds the command "subcloud deploy resume" to dcmanager. It will resume subcloud deployment based on current subcloud deploy state. All parameters except sysadmin-password are optional if they were already provided in previous phases. Since install and config are both optional phases, they will only be executed if respective parameters are/have been provided. Test Plan: These options will be referenced on the test cases as the values already present on the system controller before the resume operation or the values passed to it's command: [1] All values (install_values, bootstrap_values, deploy_config) [2] Only install_values and bootstrap_values [3] Only bootstrap_values [4] Only deploy_config Success cases: - PASS: Resume from create-complete previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from create-complete previously having [2] without passing any new parameter and verify that the subcloud's deploy state is 'bootstrap-complete'. - PASS: Resume from create-complete previously having [3] without passing any new parameter and manually installing the subcloud and verify that it's deploy state is 'bootstrap-complete'. - PASS: Resume from create-complete previously having [1] passing a previous release (21.12) and verify that the subcloud's deploy state is 'complete' and the installed load is correct. - PASS: Resume from install-complete previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from install-complete previously having [2] without passing any new parameter and verify that the subcloud's deploy state is 'bootstrap-complete'. - PASS: Resume from install-complete previously having [3] without passing any new parameter and verify that it's deploy state is 'bootstrap-complete'. - PASS: Resume from install-failed previously having [1] passing new install_values and verify that the subcloud's deploy state is 'complete' and the installation used new values. - PASS: Resume from install-failed previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from install-aborted previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from bootstrap-complete previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from bootstrap-complete previously having [3] and passing [4] and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from bootstrap-failed previously having [1] passing new bootstrap_values and verify that the subcloud's deploy state is 'complete' and the bootstrap used new values. - PASS: Resume from bootstrap-failed previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from bootstrap-aborted previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from config-failed previously having [1] passing new deploy_config file and verify that the subcloud's deploy state is 'complete' and the config used new values. - PASS: Resume from config-failed previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Resume from config-aborted previously having [1] without passing any new parameter and verify that the subcloud's deploy state is 'complete'. - PASS: Repeat previous tests but directly call the API (using CURL) instead of using the CLI. Failure cases: - PASS: Verify that it's not possible to resume deployment if the deploy state is not one of the following: - create-complete - install-complete - pre-install-failed - install-failed - install-aborted - bootstrap-complete - pre-bootstrap-failed - bootstrap-failed - bootstrap-aborted - pre-config-failed - config-failed - config-aborted - PASS: Call the API directly, passing bmc-password and/or sysadmin-password as plain text as opposed to b64encoded and verify that the response contains the correct error code and message. - PASS: Resume from bootstrap-complete previously having [2] and verify that the system alerts that the only remaining phase is config and there's no deploy-config file available Story: 2010756 Task: 48316 Change-Id: I81c0a226b3ede56628e21372b02748013c3f6b35 Signed-off-by: Victor Romano <victor.gluzromano@windriver.com>
58 KiB
Dcmanager API v1
Manage distributed cloud operations with the dcmanager API.
The typical port used for the dcmanager REST API is 8119. However, proper technique would be to look up the dcmanager service endpoint in Keystone.
API versions
Lists information about all dcmanager API versions
This operation does not accept a request body.
Normal response codes
200, 300
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response Example
samples/root-get-response.json
Subclouds
Subclouds are systems managed by a central System Controller.
Lists all subclouds
This operation does not accept a request body.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response
- subclouds: subclouds
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subclouds-get-response.json
Creates a subcloud
Accepts Content-Type multipart/form-data.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- bmc_password: bmc_password
- bootstrap-address: bootstrap_address
- bootstrap_values: bootstrap_values
- deploy_config: deploy_config
- description: subcloud_description
- external_oam_floating_address: external_oam_floating_address
- external_oam_gateway_address: external_oam_gateway_address
- external_oam_subnet: external_oam_subnet
- group_id: group_id
- install_values: install_values
- location: subcloud_location
- management_gateway_address: management_gateway_ip
- management_end_ip: management_end_ip
- management_start_address: management_start_ip
- management_subnet: management_subnet
- migrate: migrate
- name: subcloud_name
- release: release
- sysadmin_password: sysadmin_password
- systemcontroller_gateway_address: systemcontroller_gateway_ip
- system_mode: system_mode
Request Example
samples/subclouds/subclouds-post-request.json
Response parameters
- id: subcloud_id
- name: subcloud_name
- description: subcloud_description
- management-start-ip: management_start_ip
- created-at: created_at
- updated-at: updated_at
- software-version: software_version
- management-state: management_state
- availability-status: availability_status
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- location: subcloud_location
- group_id: group_id
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
Response Example
samples/subclouds/subclouds-post-response.json
Shows information about a specific subcloud
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
This operation does not accept a request body.
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-get-response.json
Shows additional information about a specific subcloud
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
This operation does not accept a request body.
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- oam_floating_ip: oam_floating_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-get-detail-response.json
Modifies a specific subcloud
The attributes of a subcloud which are modifiable:
- description
- location
- management-state
- group_id
- management-subnet
- management-gateway-ip
- management-start-ip
- management-end-ip
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- description: subcloud_description
- location: subcloud_location
- management-state: subcloud_management_state
- group_id: subcloud_group_id
- management-subnet: subcloud_management_subnet
- management-gateway-ip: subcloud_management_gateway_ip
- management-start-ip: subcloud_management_start_ip
- management-end-ip: subcloud_management_end_ip
- bootstrap-address: bootstrap_address
- sysadmin-password: sysadmin_password
Request Example
samples/subclouds/subcloud-patch-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-patch-response.json
Reconfigures a specific subcloud
The attributes of a subcloud which are modifiable:
- subcloud configuration (which is provided through deploy_config file)
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- deploy_config: deploy_config
- sysadmin_password: sysadmin_password
Accepts Content-Type multipart/form-data
Request Example
samples/subclouds/subcloud-patch-reconfigure-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-patch-reconfigure-response.json
Reinstalls a specific subcloud
Reinstall and bootstrap a subcloud based on its previous install configurations. After reinstall, a reconfigure operation with deploy_config file is expected to deploy the subcloud.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- bootstrap_values: bootstrap_values
- deploy_config: deploy_config
- release: release
- sysadmin_password: sysadmin_password
Request Example
samples/subclouds/subcloud-patch-reinstall-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-patch-reinstall-response.json
Prestage a specific subcloud
Prestages a subcloud with software packages and container image archives. The prestaged data is stored in the subcloud persistent file system that can be used when the subcloud is reinstalled next.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- release: release
- sysadmin_password: sysadmin_password
- force: force
Request Example
samples/subclouds/subcloud-patch-prestage-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- prestage_software_version: prestage_software_version
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subclouds/subcloud-patch-prestage-response.json
Update the status of a specific subcloud
This is an internal API.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- endpoint: subcloud_endpoint
- status: subcloud_endpoint_status
Request Example
samples/subclouds/subcloud-patch-update_status-request.json
Response parameters
- result: subcloud_endpoint_update_result
Response Example
samples/subclouds/subcloud-patch-update_status-response.json
Deletes a specific subcloud
Normal response codes
200
Request parameters
- subcloud: subcloud_uri
This operation does not accept a request body.
Subcloud Groups
Subcloud Groups are a logical grouping managed by a central System Controller. Subclouds in a group can be updated in parallel when applying patches or software upgrades.
Lists all subcloud groups
This operation does not accept a request body.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response parameters
- subcloud_groups: subcloud_groups
- id: subcloud_group_id
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
- created_at: created_at
- updated_at: updated_at
Response Example
samples/subcloud-groups/subcloud-groups-get-response.json
Creates a subcloud group
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
Request Example
samples/subcloud-groups/subcloud-groups-post-request.json
Response parameters
- id: subcloud_group_id
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
- created_at: created_at
- updated_at: updated_at
Response Example
samples/subcloud-groups/subcloud-groups-post-response.json
Shows information about a specific subcloud group
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud-group: subcloud_group_uri
This operation does not accept a request body.
Response parameters
- id: subcloud_group_id
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
- created_at: created_at
- updated_at: updated_at
Response Example
samples/subcloud-groups/subcloud-groups-post-response.json
Shows subclouds that are part of a subcloud group
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud-group: subcloud_group_uri
This operation does not accept a request body.
Response parameters
- subclouds: subclouds
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
Response Example
samples/subcloud-groups/subcloud-groups-get-subclouds-response.json
Modifies a specific subcloud group
The attributes of a subcloud group which are modifiable:
- name
- description
- update_apply_type
- max_parallel_subclouds
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud-group: subcloud_group_uri
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
Request Example
samples/subcloud-groups/subcloud-group-patch-request.json
Response parameters
- id: subcloud_group_id
- name: subcloud_group_name
- description: subcloud_group_description
- max_parallel_subclouds: subcloud_group_max_parallel_subclouds
- update_apply_type: subcloud_group_update_apply_type
- created_at: created_at
- updated_at: updated_at
Response Example
samples/subcloud-groups/subcloud-group-patch-response.json
Deletes a specific subcloud group
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud-group: subcloud_group_uri
This operation does not accept a request body.
Subcloud Backups
Subcloud Backups allow for essential subcloud system data (and optionally container images) to be saved and subsequently used to restore the subcloud to a previously working state. Subcloud backups may be created, deleted or restored for a single subcloud, or for all subclouds in a subcloud group. Backup files may be saved locally in the subcloud or to a centralized archive in the system controller.
Generates subcloud backup files for a given subcloud or subcloud group
Accepts Content-Type multipart/form-data.
Normal response codes
OK (200) - request has been validated and backup operation was started
Error response codes
badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: backup_subcloud_name_or_id
- group: backup_subcloud_group_name_or_id
- local_only: backup_local_only
- registry_images: backup_registry_images
- backup_values: backup_values
- sysadmin_password: sysadmin_password
Request Example
samples/subcloud-backup/subcloud-create-backup-request.json
Response parameters
- subclouds: subclouds
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subcloud-backup/subcloud-create-backup-response.json
Deletes subcloud backup files of a release for a given subcloud or subcloud group
Accepts Content-Type multipart/form-data.
Normal response codes
noContent (204) - Backup files deleted successfully
Error response codes
badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- release: backup_delete_release
- subcloud: backup_subcloud_name_or_id
- group: backup_subcloud_group_name_or_id
- local_only: backup_local_only
- sysadmin_password: sysadmin_password
Request Example
samples/subcloud-backup/subcloud-delete-backup-request.json
Restores a subcloud or a subcloud group from a backup
Accepts Content-Type application/json.
Normal response codes
OK (200) - request has been validated and restore operation was started
Error response codes
badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- with_install: with_install
- release: release
- local_only: backup_local_only
- registry_images: backup_registry_images
- sysadmin_password: sysadmin_password
- subcloud: backup_subcloud_name_or_id
- group: backup_subcloud_group_name_or_id
- restore_values: backup_restore_values
Request Example
samples/subcloud-backup/subcloud-restore-backup-request.json
Response parameters
- subclouds: subclouds
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/subcloud-backup/subcloud-restore-backup-response.json
Subcloud Alarms
Subcloud alarms are aggregated on the System Controller.
Summarizes alarms from all subclouds
This operation does not accept a request body.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response parameters
- alarm_summary: alarm_summary
- uuid: alarm_summary_uuid
- region_name: region_name
- cloud_status: cloud_status
- warnings: warnings
- critical_alarms: critical_alarms
- major_alarms: major_alarms
- minor_alarms: minor_alarms
Response Example
samples/alarms/alarms-get-response.json
Subcloud Update Strategy
The Subcloud update strategy is configurable.
Shows the details of the update strategy
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- type: sw_update_strategy_type
This operation does not accept a request body.
Response parameters
- type: sw_update_strategy_type
- id: sw_update_strategy_id
- state: sw_update_strategy_state
- extra-args: extra_args
- stop-on-failure: stop_on_failure
- subcloud-apply-type: subcloud_apply_type
- max-parallel-subclouds: max_parallel_subclouds
- created_at: created_at
- updated_at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-get-response.json
Creates the update strategy
- subcloud-apply-type,
- max-parallel-subclouds,
- stop-on-failure,
- cloud_name,
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- cloud_name: subcloud_name
- max-parallel-subclouds: max_parallel_subclouds
- stop-on-failure: stop_on_failure
- subcloud-apply-type: subcloud_apply_type
- type: sw_update_strategy_type
- upload-only: patch_strategy_upload_only
Request Example
samples/sw-update-strategy/sw-update-strategy-post-request.json
Response parameters
- type: sw_update_strategy_type
- id: sw_update_strategy_id
- state: sw_update_strategy_state
- extra-args: extra_args
- stop-on-failure: stop_on_failure
- subcloud-apply-type: subcloud_apply_type
- max-parallel-subclouds: max_parallel_subclouds
- created_at: created_at
- updated_at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-post-response.json
Deletes the update strategy
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- type: sw_update_strategy_type
This operation does not accept a request body.
Response parameters
- type: sw_update_strategy_type
- id: sw_update_strategy_id
- state: sw_update_strategy_state
- extra-args: extra_args
- stop-on-failure: stop_on_failure
- subcloud-apply-type: subcloud_apply_type
- max-parallel-subclouds: max_parallel_subclouds
- created_at: created_at
- updated_at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-delete-response.json
Subcloud Update Strategy Actions
Subcloud patch strategy can be actioned.
Executes an action on a patch strategy
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- type: sw_update_strategy_type
- action: sw_update_strategy_action
Request Example
samples/sw-update-strategy/sw-update-strategy-post-action-request.json
Response parameters
- id: sw_update_strategy_id
- type: sw_update_strategy_type
- state: sw_update_strategy_state
- extra-args: extra_args
- stop-on-failure: stop_on_failure
- subcloud-apply-type: subcloud_apply_type
- max-parallel-subclouds: max_parallel_subclouds
- created_at: created_at
- updated_at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-post-action-response.json
Subcloud Software Update Strategy Steps
Subcloud patch strategy steps can be retrieved.
Lists all software update strategy steps for all clouds
This operation does not accept a request body.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response parameters
- strategy-steps: strategy_steps
- id: strategy_step_id
- cloud: subcloud_name
- stage: strategy_step_stage
- state: strategy_step_state
- details: strategy_step_details
- started-at: strategy_step_started_at
- finished-at: strategy_step_finished_at
- created-at: created_at
- updated-at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-get-steps-response.json
Shows the details of patch strategy steps for a particular cloud
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- cloud_name: subcloud_name
This operation does not accept a request body.
Response parameters
- id: strategy_step_id
- cloud: subcloud_name
- stage: strategy_step_stage
- state: strategy_step_state
- details: strategy_step_details
- started-at: strategy_step_started_at
- finished-at: strategy_step_finished_at
- created-at: created_at
- updated-at: updated_at
Response Example
samples/sw-update-strategy/sw-update-strategy-get-step-subcloud-response.json
Subcloud Software Update Options
Subcloud Software Update Options are configurable.
Lists all sw-update options
This operation does not accept a request body.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Response parameters
- sw-update-options: sw_update_options
- id: sw_update_options_id
- name: sw_update_options_name
- alarm-restriction-type: alarm_restriction_type
- default-instance-action: default_instance_action
- max-parallel-workers: max_parallel_workers
- storage-apply-type: storage_apply_type
- subcloud-id: subcloud_id
- worker-apply-type: worker_apply_type
- created-at: created_at
- updated-at: updated_at
Response Example
samples/sw-update-options/sw-update-options-get-response.json
Shows
sw-update options (defaults or per subcloud). Use RegionOne
as subcloud for default options which are pre-configured
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_options_uri
This operation does not accept a request body.
Response parameters
- id: sw_update_options_id
- name: sw_update_options_name
- alarm-restriction-type: alarm_restriction_type
- default-instance-action: default_instance_action
- max-parallel-workers: max_parallel_workers
- storage-apply-type: storage_apply_type
- subcloud-id: sw_update_options_subcloud_id
- worker-apply-type: worker_apply_type
- created-at: created_at
- updated-at: updated_at
Response Example
samples/sw-update-options/sw-update-options-get-one-response.json
Updates
sw-update options, defaults or per subcloud. Use RegionOne
as subcloud for default options
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_options_uri
- alarm-restriction-type: alarm_restriction_type
- default-instance-action: default_instance_action
- max-parallel-workers: max_parallel_workers
- storage-apply-type: storage_apply_type
- worker-apply-type: worker_apply_type
Request Example
samples/sw-update-options/sw-update-options-post-request.json
Response parameters
- id: sw_update_options_id
- name: sw_update_options_name
- alarm-restriction-type: alarm_restriction_type
- default-instance-action: default_instance_action
- max-parallel-workers: max_parallel_workers
- storage-apply-type: storage_apply_type
- subcloud-id: sw_update_options_subcloud_id
- worker-apply-type: worker_apply_type
- created-at: created_at
- updated-at: updated_at
Response Example
samples/sw-update-options/sw-update-options-post-response.json
Delete per subcloud sw-update options
This operation does not accept a request body.
Normal response codes
200
Request parameters
- subcloud: subcloud_options_uri
Subcloud Deploy
These APIs allow for the display and upload of the deployment manager common files which include deploy playbook, deploy overrides, deploy helm charts, and prestage images list.
Show Subcloud Deploy Files
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- release: release_uri
This operation does not accept a request body.
Response parameters
- subcloud_deploy: subcloud_deploy
- deploy_chart: subcloud_deploy_chart
- deploy_playbook: subcloud_deploy_playbook
- deploy_overrides: subcloud_deploy_overrides
- prestage_images: subcloud_deploy_prestage_images
- software_version: software_version
Response Example
samples/subcloud-deploy/subcloud-deploy-get-response.json
Upload Subcloud Deploy Files
Accepts Content-Type multipart/form-data.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- deploy_chart: subcloud_deploy_chart_content
- deploy_playbook: subcloud_deploy_playbook_content
- deploy_overrides: subcloud_deploy_overrides_content
- prestage_images: subcloud_deploy_prestage_images_content
- release: release
Request Example
samples/subcloud-deploy/subcloud-deploy-post-request.json
Response parameters
- deploy_chart: subcloud_deploy_chart
- deploy_playbook: subcloud_deploy_playbook
- deploy_overrides: subcloud_deploy_overrides
- prestage_images: subcloud_deploy_prestage_images
- software_version: software_version
Response Example
samples/subcloud-deploy/subcloud-deploy-post-response.json
Phased Subcloud Deploy
These APIs allow for subcloud deployment to be done in phases.
Creates a subcloud
Accepts Content-Type multipart/form-data.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- bmc_password: bmc_password
- bootstrap-address: bootstrap_address
- bootstrap_values: bootstrap_values
- deploy_config: deploy_config
- description: subcloud_description
- group_id: group_id
- install_values: install_values
- location: subcloud_location
- release: release
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-post-request.json
Response parameters
- id: subcloud_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- management-state: management_state
- availability-status: availability_status
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- error-description: error_description
- management-subnet: management_subnet
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-gateway-ip: management_gateway_ip
- openstack-installed: openstack_installed
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- data_install: data_install
- data_upgrade: data_upgrade
- created-at: created_at
- updated-at: updated_at
- group_id: group_id
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-post-response.json
Bootstraps a subcloud
Accepts Content-Type multipart/form-data.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- bootstrap-address: bootstrap_address
- bootstrap_values: bootstrap_values
- sysadmin_password: sysadmin_password
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-bootstrap-request.json
Response parameters
- id: subcloud_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- management-state: management_state
- availability-status: availability_status
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- error-description: error_description
- management-subnet: management_subnet
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-gateway-ip: management_gateway_ip
- openstack-installed: openstack_installed
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- data_install: data_install
- data_upgrade: data_upgrade
- created-at: created_at
- updated-at: updated_at
- group_id: group_id
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-post-response.json
Installs a subcloud
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- release: release
- sysadmin_password: sysadmin_password
- bmc_password: bmc_password
Accepts Content-Type multipart/form-data
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-post-install-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-post-install-response.json
Configures a subcloud
The attributes of a subcloud which are modifiable:
- subcloud configuration (which is provided through deploy_config file)
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
- deploy_config: deploy_config
- sysadmin_password: sysadmin_password
Accepts Content-Type multipart/form-data
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-configure-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-configure-response.json
Abort subcloud deployment
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- subcloud: subcloud_uri
Accepts Content-Type multipart/form-data
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-abort-request.json
Response parameters
- id: subcloud_id
- group_id: group_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- availability-status: availability_status
- error-description: error_description
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- openstack-installed: openstack_installed
- management-state: management_state
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-subnet: management_subnet
- management-gateway-ip: management_gateway_ip
- created-at: created_at
- updated-at: updated_at
- data_install: data_install
- data_upgrade: data_upgrade
- endpoint_sync_status: endpoint_sync_status
- sync_status: sync_status
- endpoint_type: sync_status_type
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-abort-response.json
Resume subcloud deployment
Accepts Content-Type multipart/form-data.
Normal response codes
200
Error response codes
badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)
Request parameters
- bmc_password: bmc_password
- bootstrap-address: bootstrap_address
- bootstrap_values: bootstrap_values
- deploy_config: deploy_config
- install_values: install_values
- release: release
- sysadmin_password: sysadmin_password
Request Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-resume-request.json
Response parameters
- id: subcloud_id
- name: subcloud_name
- description: subcloud_description
- location: subcloud_location
- software-version: software_version
- management-state: management_state
- availability-status: availability_status
- deploy-status: deploy_status
- backup-status: backup_status
- backup-datetime: backup_datetime
- error-description: error_description
- management-subnet: management_subnet
- management-start-ip: management_start_ip
- management-end-ip: management_end_ip
- management-gateway-ip: management_gateway_ip
- openstack-installed: openstack_installed
- systemcontroller-gateway-ip: systemcontroller_gateway_ip
- data_install: data_install
- data_upgrade: data_upgrade
- created-at: created_at
- updated-at: updated_at
- group_id: group_id
Response Example
samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-resume-response.json