diff --git a/restapi-doc/centos/build_srpm.data b/restapi-doc/centos/build_srpm.data
index baedcd9dd..fcc1a4365 100644
--- a/restapi-doc/centos/build_srpm.data
+++ b/restapi-doc/centos/build_srpm.data
@@ -3,5 +3,5 @@ COPY_LIST="$SRC_DIR/* \
$CGCS_BASE/downloads/mvn.repo.tgz \
"
-TIS_PATCH_VER=22
+TIS_PATCH_VER=24
BUILD_IS_SLOW=3
diff --git a/restapi-doc/centos/restapi-doc.spec b/restapi-doc/centos/restapi-doc.spec
index 719273140..18b025477 100644
--- a/restapi-doc/centos/restapi-doc.spec
+++ b/restapi-doc/centos/restapi-doc.spec
@@ -1,6 +1,6 @@
Summary: RestAPI-Doc
Name: restapi-doc
-Version: 1.8.0
+Version: 1.8.1
Release: %{tis_patch_ver}%{?_tis_dist}
License: Apache-2.0
Group: devel
diff --git a/restapi-doc/restapi-doc/Makefile b/restapi-doc/restapi-doc/Makefile
index 1469590c4..779d210f9 100644
--- a/restapi-doc/restapi-doc/Makefile
+++ b/restapi-doc/restapi-doc/Makefile
@@ -1,5 +1,5 @@
# increment this every release
-API_VERSION := "1.8.0"
+API_VERSION := "1.8.1"
build:
@git status > /dev/null ; \
diff --git a/restapi-doc/restapi-doc/api-ref-guides/pom.xml b/restapi-doc/restapi-doc/api-ref-guides/pom.xml
index b401e41ff..69e30281e 100644
--- a/restapi-doc/restapi-doc/api-ref-guides/pom.xml
+++ b/restapi-doc/restapi-doc/api-ref-guides/pom.xml
@@ -110,6 +110,17 @@ SPDX-License-Identifier: Apache-2.0
api-ref-sysinv-v1
+
+ os-api-ref-dcmanager-v1
+
+ generate-pdf
+
+ generate-sources
+
+ bk-api-ref-dcmanager-v1.xml
+ api-ref-dcmanager-v1
+
+
os-api-ref-patching-v1
diff --git a/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref-dcmanager-v1.xml b/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref-dcmanager-v1.xml
new file mode 100644
index 000000000..9c738c0cc
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref-dcmanager-v1.xml
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+GET'>
+PUT'>
+POST'>
+DELETE'>
+]>
+
+
+ Titanium Dcmanager API v1
+ API Reference
+
+
+
+
+
+
+ Wind River
+
+
+
+ 2018
+ Wind River
+
+ Titanium Cloud
+
+
+
+ Copyright details are filled in by the
+ template.
+
+
+
+
+
+
diff --git a/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref.xml b/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref.xml
index 79d73091f..09cec4d17 100644
--- a/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref.xml
+++ b/restapi-doc/restapi-doc/api-ref-guides/src/bk-api-ref.xml
@@ -48,4 +48,5 @@ SPDX-License-Identifier: Apache-2.0
+
diff --git a/restapi-doc/restapi-doc/api-ref/pom.xml b/restapi-doc/restapi-doc/api-ref/pom.xml
index 8adb50b68..5883ed4a5 100644
--- a/restapi-doc/restapi-doc/api-ref/pom.xml
+++ b/restapi-doc/restapi-doc/api-ref/pom.xml
@@ -65,6 +65,17 @@ SPDX-License-Identifier: Apache-2.0
bk-sysinv-api-v1
+
+ os-api-ref-dcmanager-api-v1
+
+ generate-html
+
+ generate-sources
+
+ api-ref-dcmanager-v1.xml
+ bk-dcmanager-api-v1
+
+
os-api-ref-compute-v2-cgcs-ext
diff --git a/restapi-doc/restapi-doc/api-ref/src/docbkx/api-ref-dcmanager-v1.xml b/restapi-doc/restapi-doc/api-ref/src/docbkx/api-ref-dcmanager-v1.xml
new file mode 100755
index 000000000..270458d72
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/docbkx/api-ref-dcmanager-v1.xml
@@ -0,0 +1,29 @@
+
+
+
+
+ Dcmanager API v1
+
+ 2018
+ Wind River
+
+
+
+
+
+
+
+
+
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/docbkx/ch_dcmanager-api-v1.xml b/restapi-doc/restapi-doc/api-ref/src/docbkx/ch_dcmanager-api-v1.xml
new file mode 100644
index 000000000..e988eed6a
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/docbkx/ch_dcmanager-api-v1.xml
@@ -0,0 +1,178 @@
+
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subclouds
+ Subclouds are systems managed by a central System Controller.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subcloud Alarms
+ Subcloud alarms are aggregated on the System Controller.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subcloud Patch Strategy
+ The Subcloud patch strategy is configurable.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subcloud Patch Strategy Actions
+ Subcloud patch strategy can be actioned.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subcloud Patch Strategy Steps
+ Subcloud patch strategy steps can be retrieved.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subcloud Patch Options
+ Subcloud Patch Options are configurable.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/alarm_summary-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/alarm_summary-response.json
new file mode 100644
index 000000000..45ce6d64f
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/alarm_summary-response.json
@@ -0,0 +1,13 @@
+{
+ "alarm_summary": [
+ {
+ "cloud_status": "disabled",
+ "region_name": "subcloud6",
+ "warnings": -1,
+ "minor_alarms": -1,
+ "critical_alarms": -1,
+ "major_alarms": -1,
+ "uuid": "32b9233e-d993-45fb-96eb-5bfa9b1cad5d"
+ }
+ ]
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/dcmanager-versions-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/dcmanager-versions-response.json
new file mode 100644
index 000000000..702a57d0b
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/dcmanager-versions-response.json
@@ -0,0 +1,16 @@
+{
+ "versions": [
+ {
+ "status": "CURRENT",
+ "updated": "2017-10-2",
+ "id": "v1.0",
+ "links": [
+ {
+ "href": "http://192.168.204.2:8119/v1.0/",
+ "rel": "self"
+ }
+ ]
+ }
+ ]
+}
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_abort-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_abort-request.json
new file mode 100644
index 000000000..4fbb4ec77
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_abort-request.json
@@ -0,0 +1,3 @@
+{
+ "action": "abort",
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_action-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_action-response.json
new file mode 100644
index 000000000..f7a9d67d5
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_action-response.json
@@ -0,0 +1,10 @@
+{
+ "max-parallel-subclouds": 2,
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "subcloud-apply-type": "serial",
+ "state": "applying",
+ "stop-on-failure": True,
+ "type": "patch",
+ "id": 2
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_apply-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_apply-request.json
new file mode 100644
index 000000000..818cea493
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_apply-request.json
@@ -0,0 +1,3 @@
+{
+ "action": "apply",
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_list-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_list-response.json
new file mode 100644
index 000000000..46980d281
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_list-response.json
@@ -0,0 +1,28 @@
+{
+ "sw-update-options": [
+ {
+ "name": "all clouds default",
+ "compute-apply-type": "parallel",
+ "subcloud-id": None,
+ "updated-at": "2018-02-25 23:34:03.099691",
+ "created-at": None,
+ "alarm-restriction-type": "relaxed",
+ "storage-apply-type": "parallel",
+ "max-parallel-computes": 3,
+ "default-instance-action": "migrate",
+ "id": 1
+ },
+ {
+ "name": "subcloud6",
+ "compute-apply-type": "parallel",
+ "subcloud-id": 1,
+ "updated-at": "2018-02-25 23:41:42.877013",
+ "created-at": "2018-02-25 19:07:20.767609",
+ "alarm-restriction-type": "relaxed",
+ "storage-apply-type": "parallel",
+ "max-parallel-computes": 3,
+ "default-instance-action": "migrate",
+ "id": 1
+ }
+ ]
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_show-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_show-response.json
new file mode 100644
index 000000000..5d4cb9ed3
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_show-response.json
@@ -0,0 +1,12 @@
+{
+ "name": "subcloud6",
+ "compute-apply-type": "parallel",
+ "subcloud-id": 1,
+ "updated-at": "2018-02-25 23:41:42.877013",
+ "created-at": "2018-02-25 19:07:20.767609",
+ "alarm-restriction-type": "relaxed",
+ "storage-apply-type": "parallel",
+ "max-parallel-computes": 3,
+ "default-instance-action": "migrate",
+ "id": 1
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-request.json
new file mode 100644
index 000000000..225b4dfb0
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-request.json
@@ -0,0 +1,7 @@
+{
+ "max-parallel-computes": 3,
+ "default-instance-action": "migrate",
+ "alarm-restriction-type": "relaxed",
+ "storage-apply-type": "parallel",
+ "compute-apply-type": "parallel"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-response.json
new file mode 100644
index 000000000..b41181890
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_config_update-response.json
@@ -0,0 +1,12 @@
+{
+ "name": "all clouds default",
+ "compute-apply-type": "parallel",
+ "subcloud-id": None,
+ "updated-at": "2018-02-25 23:34:03.099691",
+ "created-at": None,
+ "alarm-restriction-type": "relaxed",
+ "storage-apply-type": "parallel",
+ "max-parallel-computes": 3,
+ "default-instance-action": "migrate",
+ "id": 1
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-request.json
new file mode 100644
index 000000000..50b2fedf1
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-request.json
@@ -0,0 +1,6 @@
+{
+ "subcloud-apply-type": "serial",
+ "type": "patch",
+ "stop-on-failure": "true",
+ "max-parallel-subclouds": 2
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-response.json
new file mode 100644
index 000000000..a6fd5ee4f
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_create-response.json
@@ -0,0 +1,10 @@
+{
+ "max-parallel-subclouds": 2,
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "subcloud-apply-type": "serial",
+ "state": "initial",
+ "stop-on-failure": True,
+ "type": "patch",
+ "id": 2
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_show-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_show-response.json
new file mode 100644
index 000000000..a6fd5ee4f
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_show-response.json
@@ -0,0 +1,10 @@
+{
+ "max-parallel-subclouds": 2,
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "subcloud-apply-type": "serial",
+ "state": "initial",
+ "stop-on-failure": True,
+ "type": "patch",
+ "id": 2
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_list-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_list-response.json
new file mode 100644
index 000000000..2020d0b69
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_list-response.json
@@ -0,0 +1,34 @@
+{
+ "strategy-steps": [
+ {
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "state": "initial",
+ "details": "",
+ "id": 1,
+ "cloud": "subcloud6",
+ "stage": 1
+ },
+ {
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "state": "initial",
+ "details": "",
+ "id": 2,
+ "cloud": "subcloud7",
+ "stage": 1
+ },
+ {
+ "updated-at": None,
+ "created-at": "2018-02-25T23:23:53.852473",
+ "state": "initial",
+ "details": "",
+ "id": 3,
+ "cloud": "subcloud8",
+ "stage": 1
+ },
+ ]
+}
+
+
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_show-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_show-response.json
new file mode 100644
index 000000000..5d314c009
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/patch_strategy_steps_show-response.json
@@ -0,0 +1,10 @@
+{
+ "updated-at": None,
+ "created-at": None,
+ "state": "initial",
+ "details": "",
+ "id": 1,
+ "cloud": "subcloud6",
+ "stage": 1
+}
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-request.json
new file mode 100644
index 000000000..e1e67a0a6
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-request.json
@@ -0,0 +1,10 @@
+{
+ "name": "subcloud7",
+ "management-start-ip": "192.168.205.110",
+ "systemcontroller-gateway-ip": "192.168.204.102",
+ "location": "West Ottawa",
+ "management-subnet": "192.168.205.0/24",
+ "management-gateway-ip": "192.168.205.1",
+ "management-end-ip": "192.168.205.160",
+ "description": "new subcloud"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-response.json
new file mode 100644
index 000000000..01d30d2a8
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_add-response.json
@@ -0,0 +1,16 @@
+{
+ "description": None,
+ "management-start-ip": "192.168.205.110",
+ "created-at": "2018-02-25T22:17:11.845596",
+ "updated-at": None,
+ "software-version": "18.01",
+ "management-state": "unmanaged",
+ "availability-status": "offline",
+ "systemcontroller-gateway-ip": "192.168.204.102",
+ "location": None,
+ "management-subnet": "192.168.205.0/24",
+ "management-gateway-ip": "192.168.205.1",
+ "management-end-ip": "192.168.205.160",
+ "id": 4,
+ "name": "subcloud7"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-request.json
new file mode 100644
index 000000000..4ff03c010
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-request.json
@@ -0,0 +1,15 @@
+{
+ "oam-gateway-ip": "10.10.20.1",
+ "oam-interface-mtu": "1500",
+ "oam-subnet": "10.10.20.0/24",
+ "management-interface-port": "enp0s3",
+ "system-mode": "duplex",
+ "management-interface-mtu": "1500",
+ "oam-unit-1-ip": "10.10.20.4",
+ "oam-interface-port": "enp0s8",
+ "management-vlan": "10",
+ "pxe-subnet": "192.168.205.0/24",
+ "oam-unit-0-ip": "10.10.20.3",
+ "oam-floating-ip": "10.10.20.2"
+}
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-response.json
new file mode 100644
index 000000000..8d465ce12
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_generate_config-response.json
@@ -0,0 +1,5 @@
+{
+ "config": "[SYSTEM]\nSYSTEM_MODE=duplex\n[REGION2_PXEBOOT_NETWORK]\nPXEBOOT_CIDR = 192.168.205.0/24\n[MGMT_NETWORK]\nVLAN = 10\nCIDR = 192.168.204.0/24\nGATEWAY = 192.168.204.1\nIP_START_ADDRESS = 192.168.204.50\nIP_END_ADDRESS = 192.168.204.100\nDYNAMIC_ALLOCATION = Y\nLOGICAL_INTERFACE = LOGICAL_INTERFACE_1\n[LOGICAL_INTERFACE_1]\nLAG_INTERFACE = N\nINTERFACE_MTU = 1500\nINTERFACE_PORTS = enp0s3\n[OAM_NETWORK]\nCIDR = 10.10.20.0/24\nGATEWAY = 10.10.20.1\nIP_FLOATING_ADDRESS = 10.10.20.2\nIP_UNIT_0_ADDRESS = 10.10.20.3\nIP_UNIT_1_ADDRESS = 10.10.20.4\nLOGICAL_INTERFACE = LOGICAL_INTERFACE_2\n[LOGICAL_INTERFACE_2]\nLAG_INTERFACE = N\nINTERFACE_MTU = 1500\nINTERFACE_PORTS = enp0s8\n[SHARED_SERVICES]\nSYSTEM_CONTROLLER_SUBNET = 192.168.204.0/24\nSYSTEM_CONTROLLER_FLOATING_ADDRESS = 192.168.204.2\nREGION_NAME = RegionOne\nADMIN_PROJECT_NAME = admin\nADMIN_USER_NAME = admin\nADMIN_PASSWORD = Li69nux*\nKEYSTONE_ADMINURL = http://192.168.204.2:5000/v3\nKEYSTONE_SERVICE_NAME = keystone\nKEYSTONE_SERVICE_TYPE = identity\nGLANCE_SERVICE_NAME = glance\nGLANCE_SERVICE_TYPE = image\nGLANCE_CACHED = True\n[REGION_2_SERVICES]\nREGION_NAME = subcloud6\n[VERSION]\nRELEASE = 18.01\n"
+}
+
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_list-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_list-response.json
new file mode 100644
index 000000000..11c93d1a5
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_list-response.json
@@ -0,0 +1,83 @@
+{
+ "subclouds": [
+ {
+ "description": None,
+ "management-start-ip": "192.168.204.50",
+ "sync_status": "unknown",
+ "updated-at": None,
+ "software-version": "18.01",
+ "management-state": "unmanaged",
+ "availability-status": "offline",
+ "management-subnet": "192.168.204.0/24",
+ "systemcontroller-gateway-ip": "192.168.204.101",
+ "subcloud_id": 1,
+ "location": None,
+ "endpoint_sync_status": [
+ {
+ "sync_status": "unknown",
+ "endpoint_type": "platform"
+ },
+ {
+ "sync_status": "unknown",
+ "endpoint_type": "volume"
+ },
+ {
+ "sync_status": "unknown",
+ "endpoint_type": "compute"
+ },
+ {
+ "sync_status": "unknown",
+ "endpoint_type": "network"
+ },
+ {
+ "sync_status": "unknown",
+ "endpoint_type": "patching"
+ },
+ "created-at": u"2018-02-25 19:06:35.208505",
+ "management-gateway-ip": u"192.168.204.1",
+ "management-end-ip": u"192.168.204.100",
+ "id": 1,
+ "name": "subcloud6"
+ },
+ {
+ "description": "test subcloud",
+ "management-start-ip": "192.168.205.50",
+ "sync_status": "in-sync",
+ "updated-at": None,
+ "software-version": "18.01",
+ "management-state": "managed",
+ "availability-status": "online",
+ "management-subnet": "192.168.205.0/24",
+ "systemcontroller-gateway-ip": "192.168.205.101",
+ "subcloud_id": 2,
+ "location": "Ottawa,
+ "endpoint_sync_status": [
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "platform"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "volume"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "compute"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "network"
+ },
+ {
+ "sync_status": "out-of-sync",
+ "endpoint_type": "patching"
+ },
+ "created-at": "2018-02-25 19:06:35.208505",
+ "management-gateway-ip": "192.168.205.1",
+ "management-end-ip": "192.168.205.100",
+ "id": 2,
+ "name": "subcloud7"
+ },
+ ]
+}
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_show-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_show-response.json
new file mode 100644
index 000000000..8a0712e55
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_show-response.json
@@ -0,0 +1,38 @@
+{
+ "description": "test subcloud",
+ "management-start-ip": "192.168.204.50",
+ "created-at": "2018-02-25 19:06:35.208505",
+ "updated-at": "2018-02-25 21:35:59.771779",
+ "software-version": "18.01",
+ "management-state": "unmanaged",
+ "availability-status": "offline",
+ "management-subnet": "192.168.204.0/24",
+ "systemcontroller-gateway-ip": "192.168.204.101",
+ "location": "ottawa",
+ "endpoint_sync_status": [
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "compute"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "network"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "patching"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "platform"
+ },
+ {
+ "sync_status": "in-sync",
+ "endpoint_type": "volume"
+ }
+ ],
+ "management-gateway-ip": "192.168.204.1",
+ "management-end-ip": "192.168.204.100",
+ "id": 1,
+ "name": "subcloud6"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-request.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-request.json
new file mode 100644
index 000000000..e291b7409
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-request.json
@@ -0,0 +1,5 @@
+{
+ "description": "new description",
+ "location": "new location",
+ "management-state": "managed"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-response.json b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-response.json
new file mode 100644
index 000000000..ee42b4c18
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/api_samples/subcloud_update-response.json
@@ -0,0 +1,16 @@
+{
+ "description": "new description",
+ "management-start-ip": "192.168.204.50",
+ "created-at": "2018-02-25T19:06:35.208505",
+ "updated-at": "2018-02-25T23:01:17.490090",
+ "software-version": "18.01",
+ "management-state": "unmanaged",
+ "availability-status": "offline",
+ "systemcontroller-gateway-ip": "192.168.204.101",
+ "location": "new location",
+ "management-subnet": "192.168.204.0/24",
+ "management-gateway-ip": "192.168.204.1",
+ "management-end-ip": "192.168.204.100",
+ "id": 1,
+ "name": "subcloud6"
+}
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/common.ent b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/common.ent
new file mode 100644
index 000000000..d3fb69a12
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/common.ent
@@ -0,0 +1,390 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ '>
+
+
+
+
+
+ '>
+
+
+
+
+
+
+ '>
+
+
+
+
+ '>
+
+
+
+
+
+ The unique identifier for this object.
+
+
+
+
+ The time when the object was created.
+
+
+
+
+ The time when the object was last updated.
+
+
+ '>
+
+
+
+
+
+ The name provisioned for the subcloud.
+
+
+
+
+ Management state of the subcloud.
+
+
+
+
+ Availability status of the subcloud.
+
+
+
+
+ Management subnet for subcloud in CIDR format.
+
+
+
+
+ Start of management IP address range for subcloud.
+
+
+
+
+ End of management IP address range for subcloud.
+
+
+
+
+ Systemcontroller gateway IP Address.
+
+
+
+
+ '>
+
+
+
+
+
+ The list of endpoint sync statuses.
+
+
+
+
+ The platform sync status of the subcloud.
+
+
+
+
+ The volume sync status of the subcloud.
+
+
+
+
+ The compute sync status of the subcloud.
+
+
+
+
+ The network sync status of the subcloud.
+
+
+
+
+ The patching sync status of the subcloud.
+
+
+
+ '>
+
+
+
+
+
+
+
+ The unique identifier for this object.
+
+
+
+
+ The name provisioned for the subcloud (synonym for subcloud name).
+
+
+
+
+ The overall alarm status of the cloud.
+
+
+
+
+ The number of warnings for the cloud (-1 when the cloud_status is disabled).
+
+
+
+
+ The number of minor alarms for the cloud (-1 when the cloud_status is disabled).
+
+
+
+
+ The number of critical alarms for the cloud (-1 when the cloud_status is disabled).
+
+
+
+
+ The number of major alarms for the cloud (-1 when the cloud_status is disabled).
+
+
+
+ '>
+
+
+
+
+
+
+ The name of the cloud to which the patch options apply.
+
+
+
+
+ Compute host apply type, parallel
or serial
+
+
+
+
+ The id of the cloud (will be 0 for the all clouds default).
+
+
+
+
+ The number of compute hosts to patch in parallel.
+
+
+
+
+ Whether to allow patching if subcloud alarms are present or not, strict
or relaxed
.
+
+
+
+
+ Storage host apply type, parallel
or serial
.
+
+
+
+
+ How instances should be handled, stop-start
or migrate
.
+
+
+ '>
+
+
+
+
+
+
+ Subcloud apply type
+
+
+
+
+ The state of patching.
+
+
+
+
+ Whether to stop patching on failure or not.
+
+
+
+
+ Will be set to: patch
.
+
+
+
+
+ The number of subclouds to patch in parallel.
+
+
+ '>
+
+
+
+
+
+ The name of the cloud to which the patch strategy steps apply.
+
+
+
+
+ The state of patching.
+
+
+
+
+ Details about patching.
+
+
+
+
+ The stage of patching.
+
+
+ '>
+
diff --git a/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/dcmanager-api-v1.wadl b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/dcmanager-api-v1.wadl
new file mode 100644
index 000000000..46e244f1d
--- /dev/null
+++ b/restapi-doc/restapi-doc/api-ref/src/wadls/dcmanager-api/v1/dcmanager-api-v1.wadl
@@ -0,0 +1,841 @@
+
+
+
+%common;]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The subcloud reference, name or id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The subcloud reference, name or id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Lists information about all dcmanager API versions.
+
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+
+
+
+
+
+ Lists all subclouds.
+
+
+
+
+
+
+
+ The list of subclouds.
+
+
+ &commonListShowParameters;
+ &commonSubcloudListShowParameters;
+ &subcloudListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+
+ Shows detailed information about a specific subcloud.
+
+
+
+
+
+ &commonListShowParameters;
+ &commonSubcloudListShowParameters;
+ &subcloudListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+
+ Creates a subcloud.
+
+
+
+
+
+
+
+ The name for the subcloud. Must be a unique name.
+
+
+
+
+ The description of the subcloud.
+
+
+
+
+ The location of the subcloud.
+
+
+
+
+ Management subnet for subcloud in CIDR format. Must be unique.
+
+
+
+
+ Start of management IP address range for subcloud.
+
+
+
+
+ End of management IP address range for subcloud.
+
+
+
+
+ Systemcontroller gateway IP Address.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &commonListShowParameters;
+ &commonSubcloudListShowParameters;
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+
+ Modifies a specific subcloud.
+ The attributes of a subcloud which are modifiable:
+
+ description
+ location
+ management-state
+
+
+
+
+
+
+
+
+ The description of the subcloud.
+
+
+
+
+ The location of the subcloud.
+
+
+
+
+ The management-state of the subcloud, managed
or unmanaged
.
+ The subcloud must be online before this can be modified to managed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &commonListShowParameters;
+ &commonSubcloudListShowParameters;
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+ Deletes a specific subcloud.
+
+
+
+
+
+
+
+
+
+
+
+
+ Generates the configuration of a specific subcloud.
+
+
+
+
+
+
+
+ PXE boot boot subnet for subcloud in CIDR format.
+
+
+
+
+ VLAN for subcloud management network.
+
+
+
+
+ Subcloud management interface port.
+
+
+
+
+ Subcloud management interface mtu.
+
+
+
+
+ OAM subnet for subcloud in CIDR format.
+
+
+
+
+ OAM gateway IP for subcloud.
+
+
+
+
+ OAM floating IP address for subcloud.
+
+
+
+
+ OAM unit 0 IP address for subcloud.
+
+
+
+
+ OAM unit 1 IP address for subcloud.
+
+
+
+
+ Subcloud OAM interface port.
+
+
+
+
+ Subcloud OAM interface mtu.
+
+
+
+
+ System mode, simplex, duplex, or duplex-direct
.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+
+
+
+
+
+
+ Summarizes alarms from all subclouds.
+
+
+
+
+
+
+
+ The list of alarm summaries.
+
+
+
+ &alarmListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+
+
+
+
+
+ Lists all patch options.
+
+
+
+
+
+
+
+ The list of patch options.
+
+
+ &swUpdateOptionsListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+ Shows patch options, defaults or per subcloud. Use RegionOne
as subcloud for default options which are pre-configured.
+
+
+
+
+
+ &swUpdateOptionsListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+ Updates patch options, defaults or per subcloud. Use RegionOne
as subcloud for default options.
+
+ storage-apply-type,
+ compute-apply-type,
+ max-parallel-computes,
+ alarm-restriction-type,
+ default-instance-action,
+
+
+
+
+
+
+
+
+ Storage host apply type, parallel
or serial
.
+
+
+
+
+ Compute host apply type, parallel
or serial
.
+
+
+
+
+ The number of compute hosts to patch in parallel.
+
+
+
+
+ Whether to allow patching if subcloud alarms are present or not,
+ strict
or relaxed
.
+
+
+
+
+ How instances should be handled, stop-start
or migrate
.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &swUpdateOptionsListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+ Delete per subcloud patch options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Shows the details of the patch strategy.
+
+
+
+
+
+ &swUpdateStrategyListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+ Creates the patch strategy.
+
+ subcloud-apply-type,
+ max-parallel-subclouds,
+ stop-on-failure,
+ cloud_name,
+
+
+
+
+
+
+
+
+ Subcloud apply type, parallel
or serial
.
+
+
+
+
+ Maximum number of parallel subclouds.
+
+
+
+
+ Whether stop patching any additional subclouds after a failure or not, True
or False
.
+
+
+
+
+ Name of a single cloud to patch.
+
+
+
+
+ Must be set to: patch
.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &swUpdateStrategyListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+ Deletes the patch strategy from the database.
+
+
+
+
+
+
+
+
+
+
+
+ Executes an action on a patch strategy.
+
+
+
+
+
+
+
+ Perform one of the following actions on the patch strategy:
+ Valid values are: apply
,
+ or abort
.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ &swUpdateStrategyListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &commonFaults;
+
+
+
+
+
+ Lists all patch strategy steps for all clouds.
+
+
+
+
+
+
+
+ The list of patch strategy steps.
+
+
+ &swUpdateStrategyStepsListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+
+
+
+ Shows the details of patch strategy steps for a particular cloud.
+
+
+
+
+
+ &swUpdateStrategyStepsListShowParameters;
+ &commonListShowParameters;
+
+
+
+
+
+
+
+ &getFaults;
+ &commonFaults;
+
+
+