Add SO Dublin CLI Commands 57/84757/5
authorMarcus G K Williams <marcus.williams@intel.com>
Tue, 9 Apr 2019 19:06:31 +0000 (12:06 -0700)
committerKanagaraj Manickam <kanagaraj.manickam@huawei.com>
Wed, 10 Apr 2019 05:18:41 +0000 (05:18 +0000)
Issue-ID: CLI-144
Change-Id: I8dbe73e6736e1044f9184bd86e532654e8191b23
Signed-off-by: Marcus G K Williams <marcus.williams@intel.com>
20 files changed:
products/onap-dublin/features/pom.xml
products/onap-dublin/features/so/pom.xml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-vcpe-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-delete-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-list-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-resource-module-name-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-update-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-create-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-delete-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-list-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-show-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-update-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-create-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-delete-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-list-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-show-schema-dublin.yaml [new file with mode: 0644]
products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-update-schema-dublin.yaml [new file with mode: 0644]
validate/validation/pom.xml

index 3f0e874..fbac414 100644 (file)
@@ -39,6 +39,7 @@
         <module>multicloud</module>
         <module>vfc</module>
         <module>sdnc</module>
+        <module>so</module>
     </modules>
 
      <build>
diff --git a/products/onap-dublin/features/so/pom.xml b/products/onap-dublin/features/so/pom.xml
new file mode 100644 (file)
index 0000000..a3d6d56
--- /dev/null
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<!--\r
+   Copyright © Intel Corporation 2018\r
+\r
+   Licensed under the Apache License, Version 2.0 (the "License");\r
+   you may not use this file except in compliance with the License.\r
+   You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an "AS IS" BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+   See the License for the specific language governing permissions and\r
+   limitations under the License.\r
+ -->\r
+\r
+<project xmlns="http://maven.apache.org/POM/4.0.0"\r
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0\r
+         http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
+    <modelVersion>4.0.0</modelVersion>\r
+\r
+    <parent>\r
+        <groupId>org.onap.cli</groupId>\r
+        <artifactId>cli-products-onap-dublin-features</artifactId>\r
+        <version>2.0.6</version>\r
+    </parent>\r
+\r
+    <artifactId>cli-products-onap-dublin-features-so</artifactId>\r
+    <name>cli/products/onap-dublin/features/so</name>\r
+    <packaging>jar</packaging>\r
+    <build>\r
+        <plugins>\r
+            <plugin>\r
+              <groupId>org.apache.maven.plugins</groupId>\r
+              <artifactId>maven-dependency-plugin</artifactId>\r
+            </plugin>\r
+        </plugins>\r
+    </build>\r
+</project>\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..17dee44
--- /dev/null
@@ -0,0 +1,250 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-create\r
+description: Create a service instance using SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: true\r
+  - name: tenant-id\r
+    description: tenant id\r
+    type: string\r
+    short_option: t\r
+    long_option: tenant-id\r
+    is_optional: true\r
+  - name: model-invariant-id\r
+    description: model invariant id generated by ASDC.\r
+    type: string\r
+    short_option: e\r
+    long_option: model-invariant-id\r
+    is_optional: false\r
+  - name: model-uuid\r
+    description: model uuid generated by ASDC.\r
+    type: string\r
+    short_option: g\r
+    long_option: model-uuid\r
+    is_optional: false\r
+  - name: model-name\r
+    description: model name as provided in ASDC design time.\r
+    type: string\r
+    short_option: i\r
+    long_option: model-name\r
+    is_optional: false\r
+  - name: model-version\r
+    description: model-version\r
+    type: string\r
+    short_option: j\r
+    long_option: model-version\r
+    is_optional: false\r
+  - name: model-version-id\r
+    description: model-version-id\r
+    type: string\r
+    short_option: n\r
+    long_option: model-version-id\r
+    is_optional: false\r
+  - name: customer\r
+    description: unique id for customer\r
+    type: string\r
+    short_option: c\r
+    long_option: customer\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: q\r
+    long_option: requestor-id\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: k\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: supress-rollback\r
+    description: rollback changes if instantiation fails.\r
+    type: bool\r
+    short_option: r\r
+    long_option: supress-rollback\r
+    is_optional: true\r
+  - name: service-type\r
+    description: subscription service type\r
+    type: string\r
+    short_option: w\r
+    long_option: service-type\r
+    is_optional: false\r
+  - name: ala-carte\r
+    description: ala carte flag, defaults to true\r
+    type: string\r
+    short_option: a\r
+    long_option: ala-carte\r
+    is_optional: true\r
+    default_value: true\r
+  - name: customer-latitude\r
+    description: customer latitude, part of customer location\r
+    type: string\r
+    short_option: f\r
+    long_option: customer-latitude\r
+    is_optional: true\r
+  - name: customer-longitude\r
+    description: customer longitude, part of customer location\r
+    type: string\r
+    short_option: d\r
+    long_option: customer-longitude\r
+    is_optional: true\r
+  - name: customer-name\r
+    description: customer name, part of customer location\r
+    type: string\r
+    short_option: y\r
+    long_option: customer-name\r
+    is_optional: true\r
+  - name: homing-solution\r
+    description: homing solution to use [oof|sniro]\r
+    type: string\r
+    short_option: h\r
+    long_option: homing-solution\r
+    is_optional: true\r
+  - name: orchestrator\r
+    description: orchestrator to use [multicloud|openstack(default)]\r
+    type: string\r
+    short_option: o\r
+    long_option: orchestrator\r
+    is_optional: true\r
+  - name: api\r
+    description: api to use [GR_API|VNF_API]\r
+    type: string\r
+    short_option: p\r
+    long_option: api\r
+    is_optional: true\r
+    default_value: GR_API\r
+  - name: subscriber-name\r
+    description: subscriber name\r
+    type: string\r
+    short_option: s\r
+    long_option: subscriber-name\r
+    is_optional: true\r
+  - name: project-name\r
+    description: project name\r
+    type: string\r
+    short_option: x\r
+    long_option: project-name\r
+    is_optional: true\r
+  - name: owning-entity-id\r
+    description: owning entity id\r
+    type: string\r
+    short_option: z\r
+    long_option: owning-entity-id\r
+    is_optional: true\r
+  - name: owning-entity-name\r
+    description: owning entity name\r
+    type: string\r
+    short_option: m\r
+    long_option: owning-entity-name\r
+    is_optional: true\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: service-id\r
+      description: instance id for the created service.\r
+      type: string\r
+      scope: short\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "modelInfo":{\r
+                    "modelType":"service",\r
+                    "modelInvariantId":"${model-invariant-id}",\r
+                    "modelNameVersionId":"${model-uuid}",\r
+                    "modelName":"${model-name}",\r
+                    "modelVersion":"${model-version}",\r
+                    "modelVersionId":"${model-version-id}"\r
+                 },\r
+                 "subscriberInfo":{\r
+                    "globalSubscriberId":"${customer}",\r
+                    "subscriberName":"${subscriber-name}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"CLI",\r
+                    "suppressRollback":"${supress-rollback}"\r
+                 },\r
+                 "requestParameters":{\r
+                    "subscriptionServiceType":"${service-type}",\r
+                    "aLaCarte":"${ala-carte}",\r
+                    "testApi":"${api}",\r
+                    "userParams":[\r
+                       {\r
+                          "name":"Customer_Location",\r
+                          "value":{\r
+                             "customerLatitude":"${customer-latitude}",\r
+                             "customerLongitude":"${customer-longitude}",\r
+                             "customerName":"${customer-name}"\r
+                          }\r
+                       },\r
+                       {\r
+                          "name":"Homing_Solution",\r
+                          "value":"${homing-solution}"\r
+                       },\r
+                       {\r
+                          "name":"orchestrator",\r
+                          "value":"${orchestrator}"\r
+                       }\r
+                    ]\r
+                 },\r
+                 "project":{\r
+                    "projectName":"${project-name}"\r
+                 },\r
+                 "owningEntity":{\r
+                    "owningEntityId":"${owning-entity-id}",\r
+                    "owningEntityName":"${owning-entity-name}"\r
+                 }\r
+              }\r
+           }'\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    service-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-vcpe-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-create-vcpe-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..1294e7c
--- /dev/null
@@ -0,0 +1,247 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-create-vcpe\r
+description: Create a vcpe service instance using SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+- name: cloud-region\r
+  description: cloud region identifier\r
+  type: string\r
+  short_option: l\r
+  long_option: cloud-region\r
+  is_optional: true\r
+- name: tenant-id\r
+  description: tenant id\r
+  type: string\r
+  short_option: t\r
+  long_option: tenant-id\r
+  is_optional: true\r
+- name: model-invariant-id\r
+  description: model invariant id generated by ASDC.\r
+  type: string\r
+  short_option: e\r
+  long_option: model-invariant-id\r
+  is_optional: false\r
+- name: model-uuid\r
+  description: model uuid generated by ASDC.\r
+  type: string\r
+  short_option: g\r
+  long_option: model-uuid\r
+  is_optional: false\r
+- name: model-name\r
+  description: model name as provided in ASDC design time.\r
+  type: string\r
+  short_option: i\r
+  long_option: model-name\r
+  is_optional: false\r
+- name: model-version\r
+  description: model-version\r
+  type: string\r
+  short_option: j\r
+  long_option: model-version\r
+  is_optional: false\r
+- name: model-version-id\r
+  description: model-version-id\r
+  type: string\r
+  short_option: n\r
+  long_option: model-version-id\r
+  is_optional: false\r
+- name: customer\r
+  description: unique id for customer\r
+  type: string\r
+  short_option: c\r
+  long_option: customer\r
+  is_optional: false\r
+- name: requestor-id\r
+  description: requestor ID\r
+  type: string\r
+  short_option: q\r
+  long_option: requestor-id\r
+  is_optional: false\r
+- name: instance-name\r
+  description: service instance name\r
+  type: string\r
+  short_option: k\r
+  long_option: instance-name\r
+  is_optional: false\r
+- name: supress-rollback\r
+  description: rollback changes if instantiation fails.\r
+  type: bool\r
+  short_option: r\r
+  long_option: supress-rollback\r
+  is_optional: true\r
+- name: brg-wan-mac-address\r
+  description: BRG_WAN_MAC_Address\r
+  type: string\r
+  short_option: b\r
+  long_option: brg-wan-mac-address\r
+  is_optional: false\r
+- name: customer-latitude\r
+  description: customer latitude, part of customer location\r
+  type: string\r
+  short_option: f\r
+  long_option: customer-latitude\r
+  is_optional: true\r
+- name: customer-longitude\r
+  description: customer longitude, part of customer location\r
+  type: string\r
+  short_option: d\r
+  long_option: customer-longitude\r
+  is_optional: true\r
+- name: customer-name\r
+  description: customer name, part of customer location\r
+  type: string\r
+  short_option: y\r
+  long_option: customer-name\r
+  is_optional: true\r
+- name: homing-solution\r
+  description: homing solution to use [oof|sniro]\r
+  type: string\r
+  short_option: h\r
+  long_option: homing-solution\r
+  is_optional: true\r
+- name: orchestrator\r
+  description: orchestrator to use [multicloud|openstack(default)]\r
+  type: string\r
+  short_option: o\r
+  long_option: orchestrator\r
+  is_optional: true\r
+- name: api\r
+  description: api to use [GR_API|VNF_API]\r
+  type: string\r
+  short_option: p\r
+  long_option: api\r
+  is_optional: true\r
+  default_value: VNF_API\r
+- name: subscriber-name\r
+  description: subscriber name\r
+  type: string\r
+  short_option: s\r
+  long_option: subscriber-name\r
+  is_optional: true\r
+- name: project-name\r
+  description: project name\r
+  type: string\r
+  short_option: x\r
+  long_option: project-name\r
+  is_optional: true\r
+- name: owning-entity-id\r
+  description: owning entity id\r
+  type: string\r
+  short_option: z\r
+  long_option: owning-entity-id\r
+  is_optional: true\r
+- name: owning-entity-name\r
+  description: owning entity name\r
+  type: string\r
+  short_option: m\r
+  long_option: owning-entity-name\r
+  is_optional: true\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+  - name: service-id\r
+    description: instance id for the created service.\r
+    type: string\r
+    scope: short\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "modelInfo":{\r
+                    "modelType":"service",\r
+                    "modelInvariantId":"${model-invariant-id}",\r
+                    "modelNameVersionId":"${model-uuid}",\r
+                    "modelName":"${model-name}",\r
+                    "modelVersion":"${model-version}",\r
+                    "modelVersionId":"${model-version-id}"\r
+                 },\r
+                 "subscriberInfo":{\r
+                    "globalSubscriberId":"${customer}",\r
+                    "subscriberName":"${subscriber-name}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"CLI",\r
+                    "suppressRollback":"${supress-rollback}"\r
+                 },\r
+                 "requestParameters":{\r
+                    "subscriptionServiceType":"vCPE",\r
+                    "aLaCarte":"false",\r
+                    "testApi":"${api}",\r
+                    "userParams":[\r
+                       {\r
+                          "name":"BRG_WAN_MAC_Address",\r
+                          "value":"${brg-wan-mac-address}"\r
+                       },\r
+                       {\r
+                          "name":"Customer_Location",\r
+                          "value":{\r
+                             "customerLatitude":"${customer-latitude}",\r
+                             "customerLongitude":"${customer-longitude}",\r
+                             "customerName":"${customer-name}"\r
+                          }\r
+                       },\r
+                       {\r
+                          "name":"Homing_Solution",\r
+                          "value":"${homing-solution}"\r
+                       },\r
+                       {\r
+                          "name":"orchestrator",\r
+                          "value":"${orchestrator}"\r
+                       }\r
+                    ]\r
+                 },\r
+                 "project":{\r
+                    "projectName":"${project-name}"\r
+                 },\r
+                 "owningEntity":{\r
+                    "owningEntityId":"${owning-entity-id}",\r
+                    "owningEntityName":"${owning-entity-name}"\r
+                 }\r
+              }\r
+           }'\r
+  success_codes:\r
+  - 202\r
+  result_map:\r
+    service-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-delete-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-delete-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..5bade83
--- /dev/null
@@ -0,0 +1,113 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-delete\r
+\r
+description: Delete a service instance using SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: service-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: x\r
+    long_option: service-instace-id\r
+    is_optional: false\r
+  - name: model-invariant-id\r
+    description: model invariant id for service in SDC catalog\r
+    type: string\r
+    short_option: b\r
+    long_option: model-invariant-id\r
+    is_optional: false\r
+  - name: model-uuid\r
+    description: model uuid for service in SDC catalog\r
+    type: string\r
+    short_option: i\r
+    long_option: model-uuid\r
+    is_optional: false\r
+  - name: model-name\r
+    description: model name available in SDC catalog\r
+    type: string\r
+    short_option: e\r
+    long_option: model-name\r
+    is_optional: false\r
+  - name: model-version\r
+    description: model version of service (eg. 1.0)\r
+    type: string\r
+    short_option: g\r
+    long_option: model-version\r
+    is_optional: false\r
+  - name: customer-name\r
+    description: unique id for customer\r
+    type: string\r
+    short_option: c\r
+    long_option: customer-name\r
+    is_optional: false\r
+  - name: cloud-region\r
+    description: cloud region id\r
+    type: string\r
+    short_option: j\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: tenant id\r
+    type: string\r
+    short_option: k\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: r\r
+    long_option: requestor-id\r
+    is_optional: false\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-id}\r
+    method: DELETE\r
+    body: '{\r
+      "requestDetails":{\r
+        "modelInfo":{\r
+          "modelType":"service",\r
+          "modelInvariantId":"${model-invariant-id}",\r
+          "modelVersionId":"${model-uuid}",\r
+          "modelName":"${model-name}",\r
+          "modelVersion":"${model-version}"\r
+        },\r
+        "cloudConfiguration":{\r
+          "lcpCloudRegionId":"${cloud-region}",\r
+          "tenantId":"${tenant-id}"\r
+        },\r
+        "subscriberInfo":{\r
+          "globalSubscriberId":"${customer-name}"\r
+        },\r
+        "requestInfo":{\r
+          "requestorId":"${requestor-id}",\r
+          "source":"CLI"\r
+        }\r
+      }\r
+    }'\r
+  success_codes:\r
+    - 202\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-list-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-list-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..912016f
--- /dev/null
@@ -0,0 +1,83 @@
+#  Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-list\r
+description: List all service instances from SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+results:\r
+  direction: landscape\r
+  attributes:\r
+  - name: name\r
+    description: Onap service name\r
+    scope: short\r
+    type: string\r
+  - name: version\r
+    description: Onap service version\r
+    scope: short\r
+    type: string\r
+  - name: url\r
+    description: Onap service base url\r
+    scope: short\r
+    type: url\r
+  - name: status\r
+    description: Onap service status\r
+    scope: short\r
+    type: digit\r
+  - name: nodes\r
+    description: Onap service running nodes\r
+    scope: long\r
+    type: json\r
+  - name: enable-ssl\r
+    description: Onap service is enabled with https or not\r
+    scope: long\r
+    type: string\r
+  - name: path\r
+    description: Onap service path\r
+    scope: long\r
+    type: string\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6\r
+    method: GET\r
+  success_codes:\r
+  - 201\r
+  - 200\r
+  result_map:\r
+    name: $b{$.[*].serviceName}\r
+    version: $b{$.[*].version}\r
+    url: $b{$.[*].url}\r
+    status: $b{$.[*].status}\r
+    enable-ssl: $b{$.[*].enable_ssl}\r
+    path: $b{$.[*].path}\r
+    nodes: $b{$.[*].nodes[*].ip}:$b{$.[*].nodes[*].port}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-resource-module-name-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-resource-module-name-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..f190f06
--- /dev/null
@@ -0,0 +1,61 @@
+#  Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-show-resource-module-name\r
+description: Show a resource module name from SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+- name: service-id\r
+  description: unique id for service instance\r
+  type: string\r
+  short_option: s\r
+  long_option: service-instace-id\r
+  is_optional: false\r
+\r
+results:\r
+  direction: landscape\r
+  attributes:\r
+  - name: name\r
+    description: Onap resource module name\r
+    scope: short\r
+    type: string\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-id}\r
+    method: GET\r
+  success_codes:\r
+  - 201\r
+  - 200\r
+  result_map:\r
+    name: $b{$.[*].serviceName}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-show-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..184707e
--- /dev/null
@@ -0,0 +1,91 @@
+#  Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-show\r
+description: Show a service instances from SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+- name: service-id\r
+  description: unique id for service instance\r
+  type: string\r
+  short_option: s\r
+  long_option: service-instace-id\r
+  is_optional: false\r
+\r
+results:\r
+  direction: landscape\r
+  attributes:\r
+  - name: name\r
+    description: Onap service name\r
+    scope: short\r
+    type: string\r
+  - name: version\r
+    description: Onap service version\r
+    scope: short\r
+    type: string\r
+  - name: url\r
+    description: Onap service base url\r
+    scope: short\r
+    type: url\r
+  - name: status\r
+    description: Onap service status\r
+    scope: short\r
+    type: digit\r
+  - name: nodes\r
+    description: Onap service running nodes\r
+    scope: long\r
+    type: json\r
+  - name: enable-ssl\r
+    description: Onap service is enabled with https or not\r
+    scope: long\r
+    type: string\r
+  - name: path\r
+    description: Onap service path\r
+    scope: long\r
+    type: string\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-id}\r
+    method: GET\r
+  success_codes:\r
+  - 201\r
+  - 200\r
+  result_map:\r
+    name: $b{$.[*].serviceName}\r
+    version: $b{$.[*].version}\r
+    url: $b{$.[*].url}\r
+    status: $b{$.[*].status}\r
+    enable-ssl: $b{$.[*].enable_ssl}\r
+    path: $b{$.[*].path}\r
+    nodes: $b{$.[*].nodes[*].ip}:$b{$.[*].nodes[*].port}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-update-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/service-update-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..ab4ad00
--- /dev/null
@@ -0,0 +1,162 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: service-update\r
+description: Update a service instance using SO\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: service-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: x\r
+    long_option: service-instace-id\r
+    is_optional: false\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: tenant id\r
+    type: string\r
+    short_option: b\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: model-invariant-id\r
+    description: model invariant id generated by ASDC.\r
+    type: string\r
+    short_option: e\r
+    long_option: model-invariant-id\r
+    is_optional: false\r
+  - name: model-uuid\r
+    description: model uuid generated by ASDC.\r
+    type: string\r
+    short_option: g\r
+    long_option: model-uuid\r
+    is_optional: false\r
+  - name: model-name\r
+    description: model name as provided in ASDC design time.\r
+    type: string\r
+    short_option: i\r
+    long_option: model-name\r
+    is_optional: false\r
+  - name: model-version\r
+    description: model-version\r
+    type: string\r
+    short_option: j\r
+    long_option: model-version\r
+    is_optional: false\r
+  - name: model-version-id\r
+    description: model-version-id\r
+    type: string\r
+    short_option: n\r
+    long_option: model-version-id\r
+    is_optional: false\r
+  - name: customer\r
+    description: unique id for customer\r
+    type: string\r
+    short_option: c\r
+    long_option: customer\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: q\r
+    long_option: requestor-id\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: k\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: supress-rollback\r
+    description: rollback changes if instantiation fails.\r
+    type: bool\r
+    short_option: r\r
+    long_option: supress-rollback\r
+    is_optional: true\r
+  - name: service-type\r
+    description: subscription service type\r
+    type: string\r
+    short_option: w\r
+    long_option: service-type\r
+    is_optional: false\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: service-id\r
+      description: instance id for the created service.\r
+      type: string\r
+      scope: short\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-id}\r
+    method: PUT\r
+    body: '{\r
+      "requestDetails":{\r
+        "cloudConfiguration":{\r
+          "lcpCloudRegionId":"${cloud-region}",\r
+          "tenantId":"${tenant-id}"\r
+        },\r
+        "modelInfo":{\r
+          "modelType":"service",\r
+          "modelInvariantId":"${model-invariant-id}",\r
+          "modelNameVersionId":"${model-uuid}",\r
+          "modelName":"${model-name}",\r
+          "modelVersion":"${model-version}",\r
+          "modelVersionId":"${model-version-id}"\r
+        },\r
+        "subscriberInfo":{\r
+          "globalSubscriberId":"${customer}"\r
+        },\r
+        "requestInfo":{\r
+          "requestorId":"${requestor-id}",\r
+          "instanceName":"${instance-name}",\r
+          "source":"VID",\r
+          "suppressRollback":"${supress-rollback}"\r
+        },\r
+        "requestParameters":{\r
+          "subscriptionServiceType":"${service-type}",\r
+          "aLaCarte":true\r
+        }\r
+      }\r
+    }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    service-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-create-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-create-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..7dc5c37
--- /dev/null
@@ -0,0 +1,143 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vf-module-create\r
+description: Create a VF Module\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: lcp-cloudregion-id\r
+    description: AIC LCP node location identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: lcp-cloudregion-id\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id (uuid)\r
+    type: string\r
+    short_option: w\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: vnf-instance-id\r
+    description: vnf instance id\r
+    type: string\r
+    short_option: y\r
+    long_option: vnf-instace-id\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: x\r
+    long_option: service-instace-id\r
+    is_optional: false\r
+  - name: parenet-service-model\r
+    description: parent service model name\r
+    type: string\r
+    short_option: z\r
+    long_option: parenet-service-model\r
+    is_optional: false\r
+  - name: supress-rollback\r
+    description: rollback changes if instantiation fails.\r
+    type: bool\r
+    short_option: r\r
+    long_option: supress-rollback\r
+    is_optional: true\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: i\r
+    long_option: instance-name\r
+    is_optional: false\r
+\r
+results:\r
+  direction: portrait\r
+  attribute:\r
+    - name: vf-instance-id\r
+      description: id for the created vf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs/${vnf-instance-id}/vfModules\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vfModule",\r
+                    "modelInvariantId":"ff5256d2-5a33-55df-13ab-12abad84e7ff",\r
+                    "modelNameVersionId":"fe6478e5-ea33-3346-ac12-ab121484a3fe",\r
+                    "modelName":"vSAMP12..base..module-0",\r
+                    "modelVersion":"1"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${lcp-cloudregion-id}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "suppressRollback":"${supress-rollback}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"${parenet-service-model}",\r
+                             "modelVersion":"1.0"\r
+                          }\r
+                       }\r
+                    },\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${vnf-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"vnf",\r
+                             "modelInvariantId":"ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"vSAMP12",\r
+                             "modelVersion":"1.0",\r
+                             "modelCustomizationName":"vSAMP12 1"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+                    "userParams":[\r
+\r
+                    ]\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_mpa:\r
+    vf-instance-id: $b{$.vfInstanceId}\r
+  sample_response:\r
+    body: '{ "vfInstanceId" : "234567AB" }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-delete-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-delete-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..81b7fad
--- /dev/null
@@ -0,0 +1,103 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vfmodule-delete\r
+\r
+description: delete a VF module (experimental)\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: vfmodule-id\r
+    description: VF module Id\r
+    type: string\r
+    short_option: x\r
+    long_option: vfmodule-id\r
+    is_optional: false\r
+  - name: service-id\r
+    description: unique id for service\r
+    type: string\r
+    short_option: j\r
+    long_option: service-id\r
+    is_optional: false\r
+  - name: vf-id\r
+    description: unique id for related VF\r
+    type: string\r
+    short_option: y\r
+    long_option: vf-id\r
+    is_optional: false\r
+  - name: vf-model-invariant-id\r
+    description: vf model invariant id\r
+    type: string\r
+    short_option: k\r
+    long_option: vf-model-invariant-id\r
+    is_optional: false\r
+  - name: vfmodule-name\r
+    description: vfmodule model name\r
+    type: string\r
+    short_option: e\r
+    long_option: vfmodule-name\r
+    is_optional: false\r
+  - name: vfmodule-version\r
+    description: vf module version\r
+    type: string\r
+    short_option: g\r
+    long_option: vfmodule-version\r
+    is_optional: false\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id\r
+    type: string\r
+    long_option: tenant-id\r
+    short_option: z\r
+    is_optional: false\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-id}/vnfs/${vf-id}/vfModules/${vfmodule-id}\r
+    method: DELETE\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vfModule",\r
+                    "modelInvariantId":"${vf-model-invariant-id}",\r
+                    "modelName":"${vfmodule-name}",\r
+                    "modelVersion":"${vfmodule-version}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "source":"VID"\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202
\ No newline at end of file
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-list-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-list-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..e9d1ca7
--- /dev/null
@@ -0,0 +1,143 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vf-module-list\r
+description: List all VF Modules\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: lcp-cloudregion-id\r
+    description: AIC LCP node location identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: lcp-cloudregion-id\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id (uuid)\r
+    type: string\r
+    short_option: w\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: vnf-instance-id\r
+    description: vnf instance id\r
+    type: string\r
+    short_option: y\r
+    long_option: vnf-instace-id\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: x\r
+    long_option: service-instace-id\r
+    is_optional: false\r
+  - name: parenet-service-model\r
+    description: parent service model name\r
+    type: string\r
+    short_option: z\r
+    long_option: parenet-service-model\r
+    is_optional: false\r
+  - name: supress-rollback\r
+    description: rollback changes if instantiation fails.\r
+    type: bool\r
+    short_option: r\r
+    long_option: supress-rollback\r
+    is_optional: true\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: i\r
+    long_option: instance-name\r
+    is_optional: false\r
+\r
+results:\r
+  direction: portrait\r
+  attribute:\r
+    - name: vf-instance-id\r
+      description: id for the created vf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs/${vnf-instance-id}/vfModules\r
+    method: PUT\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vfModule",\r
+                    "modelInvariantId":"ff5256d2-5a33-55df-13ab-12abad84e7ff",\r
+                    "modelNameVersionId":"fe6478e5-ea33-3346-ac12-ab121484a3fe",\r
+                    "modelName":"vSAMP12..base..module-0",\r
+                    "modelVersion":"1"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${lcp-cloudregion-id}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "suppressRollback":"${supress-rollback}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"${parenet-service-model}",\r
+                             "modelVersion":"1.0"\r
+                          }\r
+                       }\r
+                    },\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${vnf-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"vnf",\r
+                             "modelInvariantId":"ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"vSAMP12",\r
+                             "modelVersion":"1.0",\r
+                             "modelCustomizationName":"vSAMP12 1"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+                    "userParams":[\r
+\r
+                    ]\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_mpa:\r
+    vf-instance-id: $b{$.vfInstanceId}\r
+  sample_response:\r
+    body: '{ "vfInstanceId" : "234567AB" }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-show-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-show-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..93a986b
--- /dev/null
@@ -0,0 +1,83 @@
+#  Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vf-module-show\r
+description: Show a VF Module\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+results:\r
+  direction: landscape\r
+  attributes:\r
+  - name: name\r
+    description: Onap service name\r
+    scope: short\r
+    type: string\r
+  - name: version\r
+    description: Onap service version\r
+    scope: short\r
+    type: string\r
+  - name: url\r
+    description: Onap service base url\r
+    scope: short\r
+    type: url\r
+  - name: status\r
+    description: Onap service status\r
+    scope: short\r
+    type: digit\r
+  - name: nodes\r
+    description: Onap service running nodes\r
+    scope: long\r
+    type: json\r
+  - name: enable-ssl\r
+    description: Onap service is enabled with https or not\r
+    scope: long\r
+    type: string\r
+  - name: path\r
+    description: Onap service path\r
+    scope: long\r
+    type: string\r
+\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6\r
+    method: GET\r
+  success_codes:\r
+  - 201\r
+  - 200\r
+  result_map:\r
+    name: $b{$.[*].serviceName}\r
+    version: $b{$.[*].version}\r
+    url: $b{$.[*].url}\r
+    status: $b{$.[*].status}\r
+    enable-ssl: $b{$.[*].enable_ssl}\r
+    path: $b{$.[*].path}\r
+    nodes: $b{$.[*].nodes[*].ip}:$b{$.[*].nodes[*].port}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"${instance-id}",\r
+                 "requestId":"375ba428-65e7-4f2b-afb9-74735ac6bfd0"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-update-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vf-module-update-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..02c1adc
--- /dev/null
@@ -0,0 +1,143 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vf-module-update\r
+description: Update a VF Module\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+  - name: lcp-cloudregion-id\r
+    description: AIC LCP node location identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: lcp-cloudregion-id\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id (uuid)\r
+    type: string\r
+    short_option: w\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: vnf-instance-id\r
+    description: vnf instance id\r
+    type: string\r
+    short_option: y\r
+    long_option: vnf-instace-id\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: x\r
+    long_option: service-instace-id\r
+    is_optional: false\r
+  - name: parenet-service-model\r
+    description: parent service model name\r
+    type: string\r
+    short_option: z\r
+    long_option: parenet-service-model\r
+    is_optional: false\r
+  - name: supress-rollback\r
+    description: rollback changes if instantiation fails.\r
+    type: bool\r
+    short_option: r\r
+    long_option: supress-rollback\r
+    is_optional: true\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: i\r
+    long_option: instance-name\r
+    is_optional: false\r
+\r
+results:\r
+  direction: portrait\r
+  attribute:\r
+    - name: vf-instance-id\r
+      description: id for the created vf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs/${vnf-instance-id}/vfModules\r
+    method: PUT\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vfModule",\r
+                    "modelInvariantId":"ff5256d2-5a33-55df-13ab-12abad84e7ff",\r
+                    "modelNameVersionId":"fe6478e5-ea33-3346-ac12-ab121484a3fe",\r
+                    "modelName":"vSAMP12..base..module-0",\r
+                    "modelVersion":"1"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${lcp-cloudregion-id}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "suppressRollback":"${supress-rollback}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"${parenet-service-model}",\r
+                             "modelVersion":"1.0"\r
+                          }\r
+                       }\r
+                    },\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${vnf-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"vnf",\r
+                             "modelInvariantId":"ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
+                             "modelNameVersionId":"fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
+                             "modelName":"vSAMP12",\r
+                             "modelVersion":"1.0",\r
+                             "modelCustomizationName":"vSAMP12 1"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+                    "userParams":[\r
+\r
+                    ]\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_mpa:\r
+    vf-instance-id: $b{$.vfInstanceId}\r
+  sample_response:\r
+    body: '{"vfInstanceId":"234567AB"}'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-create-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-create-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..072f19c
--- /dev/null
@@ -0,0 +1,185 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vfn-create\r
+description: Create a VNF\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+\r
+parameters:\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id\r
+    type: string\r
+    short_option: z\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: product-family\r
+    description: service type for serivce (e.g. vLB)\r
+    type: string\r
+    short_option: w\r
+    long_option: product-family\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: o\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: y\r
+    long_option: service-instance-id\r
+    is_optional: false\r
+  - name: vf-model-invariant-id\r
+    description: vf model invariant id\r
+    type: string\r
+    short_option: b\r
+    long_option: vf-model-invariant-id\r
+    is_optional: false\r
+  - name: vf-model-uuid\r
+    description: model uuid for vf\r
+    type: string\r
+    short_option: c\r
+    long_option: vf-model-uuid\r
+    is_optional: false\r
+  - name: vf-model-name\r
+    description: vf model name\r
+    type: string\r
+    short_option: e\r
+    long_option: vf-model-name\r
+    is_optional: false\r
+  - name: vf-model-version\r
+    description: vf model version\r
+    type: string\r
+    short_option: g\r
+    long_option: vf-model-version\r
+    is_optional: false\r
+  - name: vf-model-customization-id\r
+    description: vf model customization id\r
+    type: string\r
+    short_option: i\r
+    long_option: vf-model-customization-id\r
+    is_optional: false\r
+  - name: service-model-invariant-id\r
+    description: model invariant id\r
+    type: string\r
+    short_option: j\r
+    long_option: service-model-invariant-id\r
+    is_optional: false\r
+  - name: service-model-uuid\r
+    description: model name version id\r
+    type: string\r
+    short_option: k\r
+    long_option: service-model-uuid\r
+    is_optional: false\r
+  - name: service-model-name\r
+    description: service model name\r
+    type: string\r
+    short_option: q\r
+    long_option: service-model-name\r
+    is_optional: false\r
+  - name: service-model-version\r
+    description: service model version\r
+    type: string\r
+    short_option: n\r
+    long_option: service-model-version\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: r\r
+    long_option: requestor-id\r
+    is_optional: false\r
+\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: vf-id\r
+      description: id for the created vnf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vnf",\r
+                    "modelInvariantId":"${vf-model-invariant-id}",\r
+                    "modelVersionId":"${vf-model-uuid}",\r
+                    "modelName":"${vf-model-name}",\r
+                    "modelVersion":"${vf-model-version}",\r
+                    "modelCustomizationId":"${vf-model-customization-id}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "productFamilyId":"${product-family}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"${service-model-invariant-id}",\r
+                             "modelVersionId":"${service-model-uuid}",\r
+                             "modelName":"${service-model-name}",\r
+                             "modelVersion":"${service-model-version}"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    vf-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"2a152730-f6eb-4dc6-9b81-7a6f6f263d71",\r
+                 "requestId":"6402628f-7f67-4605-9e60-0d8632616d02"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-delete-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-delete-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..439dfd5
--- /dev/null
@@ -0,0 +1,106 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vnf-delete\r
+description: Delete a VNF\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+parameters:\r
+- name: vf-id\r
+  description: id for vnf\r
+  type: string\r
+  short_option: x\r
+  long_option: vf-id\r
+  is_optional: false\r
+- name: service-instance-id\r
+  description: unique id for service instance\r
+  type: string\r
+  short_option: y\r
+  long_option: service-instance-id\r
+  is_optional: false\r
+- name: cloud-region\r
+  description: Cloud region ID\r
+  type: string\r
+  short_option: l\r
+  long_option: cloud-region\r
+  is_optional: false\r
+- name: tenant-id\r
+  description: openstack tenant id (uuid)\r
+  type: string\r
+  short_option: z\r
+  long_option: tenant-id\r
+  is_optional: false\r
+- name: model-invariant-id\r
+  description: model invariant id for service in SDC catalog\r
+  type: string\r
+  short_option: b\r
+  long_option: model-invariant-id\r
+  is_optional: false\r
+- name: model-uuid\r
+  description: model uuid for service in SDC catalog\r
+  type: string\r
+  short_option: c\r
+  long_option: model-uuid\r
+  is_optional: false\r
+- name: model-name\r
+  description: model name available in SDC catalog\r
+  type: string\r
+  short_option: e\r
+  long_option: model-name\r
+  is_optional: false\r
+- name: model-version\r
+  description: model version of service (eg. 1.0)\r
+  type: string\r
+  short_option: g\r
+  long_option: model-version\r
+  is_optional: false\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs/${vf-id}\r
+    method: DELETE\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vnf",\r
+                    "modelInvariantId":"${model-invariant-id}",\r
+                    "modelVersionId":"${model-uuid}",\r
+                    "modelName":"${model-name}",\r
+                    "modelVersion":"${model-version}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "source":"VID"\r
+                 },\r
+                 "requestParameters":{\r
+                    "userParams":[\r
+\r
+                    ]\r
+                 }\r
+              }\r
+           }'\r
+  success_codes:\r
+  - 202
\ No newline at end of file
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-list-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-list-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..51b0031
--- /dev/null
@@ -0,0 +1,185 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vnf-list\r
+description: List all VNFs\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+\r
+parameters:\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id\r
+    type: string\r
+    short_option: z\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: product-family\r
+    description: service type for serivce (e.g. vLB)\r
+    type: string\r
+    short_option: w\r
+    long_option: product-family\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: o\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: y\r
+    long_option: service-instance-id\r
+    is_optional: false\r
+  - name: vf-model-invariant-id\r
+    description: vf model invariant id\r
+    type: string\r
+    short_option: b\r
+    long_option: vf-model-invariant-id\r
+    is_optional: false\r
+  - name: vf-model-uuid\r
+    description: model uuid for vf\r
+    type: string\r
+    short_option: c\r
+    long_option: vf-model-uuid\r
+    is_optional: false\r
+  - name: vf-model-name\r
+    description: vf model name\r
+    type: string\r
+    short_option: e\r
+    long_option: vf-model-name\r
+    is_optional: false\r
+  - name: vf-model-version\r
+    description: vf model version\r
+    type: string\r
+    short_option: g\r
+    long_option: vf-model-version\r
+    is_optional: false\r
+  - name: vf-model-customization-id\r
+    description: vf model customization id\r
+    type: string\r
+    short_option: i\r
+    long_option: vf-model-customization-id\r
+    is_optional: false\r
+  - name: service-model-invariant-id\r
+    description: model invariant id\r
+    type: string\r
+    short_option: j\r
+    long_option: service-model-invariant-id\r
+    is_optional: false\r
+  - name: service-model-uuid\r
+    description: model name version id\r
+    type: string\r
+    short_option: k\r
+    long_option: service-model-uuid\r
+    is_optional: false\r
+  - name: service-model-name\r
+    description: service model name\r
+    type: string\r
+    short_option: q\r
+    long_option: service-model-name\r
+    is_optional: false\r
+  - name: service-model-version\r
+    description: service model version\r
+    type: string\r
+    short_option: n\r
+    long_option: service-model-version\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: r\r
+    long_option: requestor-id\r
+    is_optional: false\r
+\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: vf-id\r
+      description: id for the created vnf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vnf",\r
+                    "modelInvariantId":"${vf-model-invariant-id}",\r
+                    "modelVersionId":"${vf-model-uuid}",\r
+                    "modelName":"${vf-model-name}",\r
+                    "modelVersion":"${vf-model-version}",\r
+                    "modelCustomizationId":"${vf-model-customization-id}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "productFamilyId":"${product-family}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"${service-model-invariant-id}",\r
+                             "modelVersionId":"${service-model-uuid}",\r
+                             "modelName":"${service-model-name}",\r
+                             "modelVersion":"${service-model-version}"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    vf-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"2a152730-f6eb-4dc6-9b81-7a6f6f263d71",\r
+                 "requestId":"6402628f-7f67-4605-9e60-0d8632616d02"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-show-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-show-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..9eab64f
--- /dev/null
@@ -0,0 +1,185 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vnf-show\r
+description: Show a VNF\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+\r
+parameters:\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id\r
+    type: string\r
+    short_option: z\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: product-family\r
+    description: service type for serivce (e.g. vLB)\r
+    type: string\r
+    short_option: w\r
+    long_option: product-family\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: o\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: y\r
+    long_option: service-instance-id\r
+    is_optional: false\r
+  - name: vf-model-invariant-id\r
+    description: vf model invariant id\r
+    type: string\r
+    short_option: b\r
+    long_option: vf-model-invariant-id\r
+    is_optional: false\r
+  - name: vf-model-uuid\r
+    description: model uuid for vf\r
+    type: string\r
+    short_option: c\r
+    long_option: vf-model-uuid\r
+    is_optional: false\r
+  - name: vf-model-name\r
+    description: vf model name\r
+    type: string\r
+    short_option: e\r
+    long_option: vf-model-name\r
+    is_optional: false\r
+  - name: vf-model-version\r
+    description: vf model version\r
+    type: string\r
+    short_option: g\r
+    long_option: vf-model-version\r
+    is_optional: false\r
+  - name: vf-model-customization-id\r
+    description: vf model customization id\r
+    type: string\r
+    short_option: i\r
+    long_option: vf-model-customization-id\r
+    is_optional: false\r
+  - name: service-model-invariant-id\r
+    description: model invariant id\r
+    type: string\r
+    short_option: j\r
+    long_option: service-model-invariant-id\r
+    is_optional: false\r
+  - name: service-model-uuid\r
+    description: model name version id\r
+    type: string\r
+    short_option: k\r
+    long_option: service-model-uuid\r
+    is_optional: false\r
+  - name: service-model-name\r
+    description: service model name\r
+    type: string\r
+    short_option: q\r
+    long_option: service-model-name\r
+    is_optional: false\r
+  - name: service-model-version\r
+    description: service model version\r
+    type: string\r
+    short_option: n\r
+    long_option: service-model-version\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: r\r
+    long_option: requestor-id\r
+    is_optional: false\r
+\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: vf-id\r
+      description: id for the created vnf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs\r
+    method: POST\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vnf",\r
+                    "modelInvariantId":"${vf-model-invariant-id}",\r
+                    "modelVersionId":"${vf-model-uuid}",\r
+                    "modelName":"${vf-model-name}",\r
+                    "modelVersion":"${vf-model-version}",\r
+                    "modelCustomizationId":"${vf-model-customization-id}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "productFamilyId":"${product-family}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"${service-model-invariant-id}",\r
+                             "modelVersionId":"${service-model-uuid}",\r
+                             "modelName":"${service-model-name}",\r
+                             "modelVersion":"${service-model-version}"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    vf-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"2a152730-f6eb-4dc6-9b81-7a6f6f263d71",\r
+                 "requestId":"6402628f-7f67-4605-9e60-0d8632616d02"\r
+              }\r
+           }'\r
diff --git a/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-update-schema-dublin.yaml b/products/onap-dublin/features/so/src/main/resources/open-cli-schema/vnf-update-schema-dublin.yaml
new file mode 100644 (file)
index 0000000..937d069
--- /dev/null
@@ -0,0 +1,185 @@
+# Copyright © Intel Corporation 2019\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#     http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+open_cli_schema_version: 1.0\r
+name: vnf-update\r
+description: Update a VNF\r
+\r
+info:\r
+  product: onap-dublin\r
+  service: so\r
+  author: ONAP CLI Team onap-discuss@lists.onap.org\r
+\r
+\r
+parameters:\r
+  - name: cloud-region\r
+    description: cloud region identifier\r
+    type: string\r
+    short_option: l\r
+    long_option: cloud-region\r
+    is_optional: false\r
+  - name: tenant-id\r
+    description: openstack tenant id\r
+    type: string\r
+    short_option: z\r
+    long_option: tenant-id\r
+    is_optional: false\r
+  - name: product-family\r
+    description: service type for serivce (e.g. vLB)\r
+    type: string\r
+    short_option: w\r
+    long_option: product-family\r
+    is_optional: false\r
+  - name: instance-name\r
+    description: service instance name\r
+    type: string\r
+    short_option: o\r
+    long_option: instance-name\r
+    is_optional: false\r
+  - name: service-instance-id\r
+    description: unique id for service instance\r
+    type: string\r
+    short_option: y\r
+    long_option: service-instance-id\r
+    is_optional: false\r
+  - name: vf-model-invariant-id\r
+    description: vf model invariant id\r
+    type: string\r
+    short_option: b\r
+    long_option: vf-model-invariant-id\r
+    is_optional: false\r
+  - name: vf-model-uuid\r
+    description: model uuid for vf\r
+    type: string\r
+    short_option: c\r
+    long_option: vf-model-uuid\r
+    is_optional: false\r
+  - name: vf-model-name\r
+    description: vf model name\r
+    type: string\r
+    short_option: e\r
+    long_option: vf-model-name\r
+    is_optional: false\r
+  - name: vf-model-version\r
+    description: vf model version\r
+    type: string\r
+    short_option: g\r
+    long_option: vf-model-version\r
+    is_optional: false\r
+  - name: vf-model-customization-id\r
+    description: vf model customization id\r
+    type: string\r
+    short_option: i\r
+    long_option: vf-model-customization-id\r
+    is_optional: false\r
+  - name: service-model-invariant-id\r
+    description: model invariant id\r
+    type: string\r
+    short_option: j\r
+    long_option: service-model-invariant-id\r
+    is_optional: false\r
+  - name: service-model-uuid\r
+    description: model name version id\r
+    type: string\r
+    short_option: k\r
+    long_option: service-model-uuid\r
+    is_optional: false\r
+  - name: service-model-name\r
+    description: service model name\r
+    type: string\r
+    short_option: q\r
+    long_option: service-model-name\r
+    is_optional: false\r
+  - name: service-model-version\r
+    description: service model version\r
+    type: string\r
+    short_option: n\r
+    long_option: service-model-version\r
+    is_optional: false\r
+  - name: requestor-id\r
+    description: requestor ID\r
+    type: string\r
+    short_option: r\r
+    long_option: requestor-id\r
+    is_optional: false\r
+\r
+\r
+results:\r
+  direction: portrait\r
+  attributes:\r
+    - name: vf-id\r
+      description: id for the created vnf\r
+      type: string\r
+      scope: short\r
+\r
+http:\r
+  service:\r
+    name: so\r
+    version: v6\r
+    auth: basic\r
+    mode: direct\r
+  request:\r
+    uri: /onap/so/infra/serviceInstances/v6/${service-instance-id}/vnfs\r
+    method: PUT\r
+    body: '{\r
+              "requestDetails":{\r
+                 "modelInfo":{\r
+                    "modelType":"vnf",\r
+                    "modelInvariantId":"${vf-model-invariant-id}",\r
+                    "modelVersionId":"${vf-model-uuid}",\r
+                    "modelName":"${vf-model-name}",\r
+                    "modelVersion":"${vf-model-version}",\r
+                    "modelCustomizationId":"${vf-model-customization-id}"\r
+                 },\r
+                 "cloudConfiguration":{\r
+                    "lcpCloudRegionId":"${cloud-region}",\r
+                    "tenantId":"${tenant-id}"\r
+                 },\r
+                 "requestInfo":{\r
+                    "requestorId":"${requestor-id}",\r
+                    "instanceName":"${instance-name}",\r
+                    "source":"VID",\r
+                    "productFamilyId":"${product-family}"\r
+                 },\r
+                 "relatedInstanceList":[\r
+                    {\r
+                       "relatedInstance":{\r
+                          "instanceId":"${service-instance-id}",\r
+                          "modelInfo":{\r
+                             "modelType":"service",\r
+                             "modelInvariantId":"${service-model-invariant-id}",\r
+                             "modelVersionId":"${service-model-uuid}",\r
+                             "modelName":"${service-model-name}",\r
+                             "modelVersion":"${service-model-version}"\r
+                          }\r
+                       }\r
+                    }\r
+                 ],\r
+                 "requestParameters":{\r
+\r
+                 }\r
+              }\r
+           }'\r
+\r
+  success_codes:\r
+    - 202\r
+  result_map:\r
+    vf-id: $b{$.requestReferences.instanceId}\r
+  sample_response:\r
+    body: '{\r
+              "requestReferences":{\r
+                 "instanceId":"2a152730-f6eb-4dc6-9b81-7a6f6f263d71",\r
+                 "requestId":"6402628f-7f67-4605-9e60-0d8632616d02"\r
+              }\r
+           }'\r
index 097db45..b733d2f 100644 (file)
             <artifactId>cli-products-onap-dublin-features-sdnc</artifactId>
             <version>${project.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.onap.cli</groupId>
+            <artifactId>cli-products-onap-dublin-features-so</artifactId>
+            <version>${project.version}</version>
+        </dependency>
         <dependency>
             <groupId>commons-io</groupId>
             <artifactId>commons-io</artifactId>