aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsubhash kumar singh <subhash.kumar.singh@huawei.com>2017-10-27 14:54:19 +0000
committersubhash kumar singh <subhash.kumar.singh@huawei.com>2017-10-31 10:52:03 +0000
commit2bd37da0feb25c2fc5373c49059474ee4f3d2007 (patch)
treea0b87db42c9a1a38cb4b2a978ef8b9cf5a40d287
parentb8b5d164b7901dc3150a6f9b9004f1cc71c1c848 (diff)
Implement vnf-create command
Implement vnf-create command. Change-Id: Ie6370110de0f704d69521d394d1f36b4c9e02f2f Issue-ID: CLI-15 Signed-off-by: subhash kumar singh <subhash.kumar.singh@huawei.com>
-rw-r--r--plugins/so/src/main/resources/onap-cli-schema/services/vf-create-schema-1.1.yaml108
-rw-r--r--plugins/so/src/main/resources/onap-cli-schema/services/vnf-create-schema-1.1.yaml74
-rw-r--r--plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-moco.json56
-rw-r--r--plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-sample.yaml14
-rw-r--r--plugins/so/src/test/resources/onap-cli-sample/services/vnf-create-sample-1.1.yaml8
5 files changed, 178 insertions, 82 deletions
diff --git a/plugins/so/src/main/resources/onap-cli-schema/services/vf-create-schema-1.1.yaml b/plugins/so/src/main/resources/onap-cli-schema/services/vf-create-schema-1.1.yaml
new file mode 100644
index 00000000..8b1d4af7
--- /dev/null
+++ b/plugins/so/src/main/resources/onap-cli-schema/services/vf-create-schema-1.1.yaml
@@ -0,0 +1,108 @@
+open_cli_schema_version: 1.0
+name: vf-create
+description: Create a VF
+version: onap-1.1
+service:
+ name: mso
+ version: v3
+ auth: basic
+ mode: direct
+
+parameters:
+ - name: cloud-region
+ description: cloud region identifier
+ type: string
+ short_option: l
+ long_option: cloud-region
+ is_optional: false
+ - name: tenant-id
+ description: openstack tenant id
+ type: string
+ short_option: z
+ long_option: tenant-id
+ is_optional: false
+ - name: product-family
+ description: service type for serivce (e.g. vLB)
+ type: string
+ short_option: w
+ long_option: product-family
+ is_optional: false
+ - name: instance-name
+ description: service instance name
+ type: string
+ short_option: i
+ long_option: instance-name
+ is_optional: false
+ - name: service-instance-id
+ description: unique id for service instance
+ type: string
+ short_option: y
+ long_option: service-instance-id
+ is_optional: false
+ - name: vf-model-invariant-id
+ description: vf model invariant id
+ type: string
+ long_option: vf-model-invariant-id
+ is_optional: false
+ - name: vf-model-uuid
+ description: model uuid for vf
+ type: string
+ long_option: vf-model-uuid
+ is_optional: false
+ - name: vf-model-name
+ description: vf model name
+ type: string
+ long_option: vf-model-name
+ is_optional: false
+ - name: vf-model-version
+ description: vf model version
+ type: string
+ long_option: vf-model-version
+ is_optional: false
+ - name: vf-model-customization-id
+ description: vf model customization id
+ type: string
+ long_option: vf-model-customization-id
+ is_optional: false
+ - name: service-model-invariant-id
+ description: model invariant id
+ type: string
+ long_option: service-model-invariant-id
+ is_optional: false
+ - name: service-model-uuid
+ description: model name version id
+ type: string
+ long_option: service-model-uuid
+ is_optional: false
+ - name: service-model-name
+ description: service model name
+ type: string
+ long_option: service-model-name
+ is_optional: false
+ - name: service-model-version
+ description: service model version
+ type: string
+ long_option: service-model-version
+ is_optional: false
+
+
+results:
+ direction: portrait
+ attributes:
+ - name: vf-id
+ description: id for the created vnf
+ type: string
+ scope: short
+
+http:
+ request:
+ uri: /ecomp/mso/infra/serviceInstances/v3/${service-instance-id}/vnfs
+ method: POST
+ body: '{"requestDetails": {"modelInfo": {"modelType": "vnf","modelInvariantId": "${vf-model-invariant-id}","modelVersionId": "${vf-model-uuid}","modelName": "${vf-model-name}","modelVersion": "${vf-model-version}","modelCustomizationId": "${vf-model-customization-id}"},"cloudConfiguration": {"lcpCloudRegionId": "${cloud-region}","tenantId": "${tenant-id}"},"requestInfo": {"instanceName": "${instance-name}","source": "VID","productFamilyId": "${product-family}" },"relatedInstanceList": [{"relatedInstance": {"instanceId": "${service-instance-id}","modelInfo": {"modelType": "service","modelInvariantId": "${service-model-invariant-id}","modelVersionId": "${service-model-uuid}","modelName": "${service-model-name}","modelVersion": "${service-model-version}"}}}],"requestParameters": {}}}'
+
+ success_codes:
+ - 202
+ result_map:
+ vf-id: $b{$.requestReferences.instanceId}
+ sample_response:
+ body: '{"requestReferences": {"instanceId": "2a152730-f6eb-4dc6-9b81-7a6f6f263d71","requestId": "6402628f-7f67-4605-9e60-0d8632616d02"}}'
diff --git a/plugins/so/src/main/resources/onap-cli-schema/services/vnf-create-schema-1.1.yaml b/plugins/so/src/main/resources/onap-cli-schema/services/vnf-create-schema-1.1.yaml
deleted file mode 100644
index 899be1bb..00000000
--- a/plugins/so/src/main/resources/onap-cli-schema/services/vnf-create-schema-1.1.yaml
+++ /dev/null
@@ -1,74 +0,0 @@
-open_cli_schema_version: 1.0
-name: vnf-create
-description: Create a VNF
-version: onap-1.1
-service:
- name: mso
- version: v2
- auth: basic
- mode: direct
-
-parameters:
- - name: lcp-cloudregion-id
- description: AIC LCP node location identifier
- type: string
- short_option: l
- long_option: lcp-cloudregion-id
- is_optional: false
- - name: tenant-id
- description: openstack tenant id (uuid)
- type: string
- short_option: z
- long_option: tenant-id
- is_optional: false
- - name: product-family-id
- description: UUID for product family (named service id in AAI)
- type: string
- short_option: w
- long_option: product-family-id
- is_optional: false
- - name: instance-name
- description: service instance name
- type: string
- short_option: i
- long_option: instance-name
- is_optional: false
- - name: supress-rollback
- description: rollback changes if instantiation fails.
- type: bool
- short_option: r
- long_option: supress-rollback
- is_optional: true
- - name: service-instance-id
- description: unique id for service instance
- type: string
- short_option: y
- long_option: service-instance-id
- is_optional: false
- - name: parenet-service-model
- description: parent service model name
- type: string
- short_option: x
- long_option: parenet-service-model
- is_optional: false
-
-results:
- direction: portrait
- attribute:
- - name: vnf-instance-id
- description: id for the created vnf
- type: string
- scope: short
-
-http:
- request:
- uri: ecomp/mso/infra/serviceInstances/v2/${service-instance-id}/vnfs
- method: PUT
- body: '{"requestDetails":{"modelInfo":{"modelType":"vnf","modelInvariantId":"ff5256d1-5a33-55df-13ab-12abad84e7ff","modelNameVersionId":"fe6478e4-ea33-3346-ac12-ab121484a3fe","modelName":"vSAMP12","modelVersion":"1.0","modelCustomizationName":"vSAMP12 1"},"cloudConfiguration":{"lcpCloudRegionId": "${lcp-cloudregion-id}","tenantId":"${tenant-id}"},"requestInfo":{"instanceName":"${instance-name}","productFamilyId":"${product-family-id}","source":"VID","suppressRollback":"${supress-rollback}"},"relatedInstanceList":[{"relatedInstance":{"instanceId":"${service-instance-id}","modelInfo":{"modelType":"service","modelInvariantId":"ff3514e3-5a33-55df-13ab-12abad84e7ff","modelNameVersionId":"fe6985cd-ea33-3346-ac12-ab121484a3fe","modelName":"${parenet-service-model}","modelVersion":"1.0"}}}],"requestParameters":{}}}'
-
- success_codes:
- - 202
- result_mpa:
- vnf-instance-id: $b{$.vnfInstanceId}
- sample_response:
- body: '{"vnfInstanceId":"234567AB"}'
diff --git a/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-moco.json b/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-moco.json
new file mode 100644
index 00000000..0d8a97b9
--- /dev/null
+++ b/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-moco.json
@@ -0,0 +1,56 @@
+[ {
+ "request" : {
+ "method" : "post",
+ "uri" : "/ecomp/mso/infra/serviceInstances/v3/2ad87511-4289-4bd7-ab0b-0b29d3d4c8ee/vnfs",
+ "headers" : {
+ "Authorization" : "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+ "X-FromAppId" : "onap-cli",
+ "Accept" : "application/json",
+ "X-TransactionId" : "req-8120ae88-0e56-4f1d-9a00-44f07e9469db",
+ "Content-Type" : "application/json"
+ },
+ "json" : {
+ "requestDetails" : {
+ "modelInfo" : {
+ "modelType" : "vnf",
+ "modelInvariantId" : "cc34cd54-dd7c-44cd-8847-f9577c6f1a49",
+ "modelVersionId" : "8b1f63f3-e0cc-4c27-8903-fafe2f25bfbe",
+ "modelName" : "847cb26a-59a6-475a-94dd",
+ "modelVersion" : "1.0",
+ "modelCustomizationId" : "cf893f5a-1bb1-4e32-a92b-2456e12178f8"
+ },
+ "cloudConfiguration" : {
+ "lcpCloudRegionId" : "RegionOne",
+ "tenantId" : "onap"
+ },
+ "requestInfo" : {
+ "instanceName" : "vlb-cli-sample-11",
+ "source" : "VID",
+ "productFamilyId" : "vLB"
+ },
+ "relatedInstanceList" : [ {
+ "relatedInstance" : {
+ "instanceId" : "2ad87511-4289-4bd7-ab0b-0b29d3d4c8ee",
+ "modelInfo" : {
+ "modelType" : "service",
+ "modelInvariantId" : "1de901ed-17af-4b03-bc1f-41659cfa27cb",
+ "modelVersionId" : "ace39141-09ec-4068-b06d-ac6b23bdc6e0",
+ "modelName" : "demoVLB",
+ "modelVersion" : "1.0"
+ }
+ }
+ } ],
+ "requestParameters" : { }
+ }
+ }
+ },
+ "response" : {
+ "status" : 202,
+ "json" : {
+ "requestReferences" : {
+ "instanceId" : "048c2c4a-ee30-41a1-bb55-c4e7fe1a9a0d",
+ "requestId" : "7bbf50b3-50d9-449e-a87d-694e2f373aea"
+ }
+ }
+ }
+} ] \ No newline at end of file
diff --git a/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-sample.yaml b/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-sample.yaml
new file mode 100644
index 00000000..c8b5d94e
--- /dev/null
+++ b/plugins/so/src/test/resources/onap-cli-sample/services/vf-create-schema-1.1-sample.yaml
@@ -0,0 +1,14 @@
+onap_cli_sample_version: 1.0
+name: vf-create
+version: onap-1.1
+samples:
+ sample1:
+ name: vf-create
+ input: --cloud-region RegionOne --tenant-id onap --product-family vLB --instance-name vlb-cli-sample-11 --service-instance-id 2ad87511-4289-4bd7-ab0b-0b29d3d4c8ee --vf-model-invariant-id cc34cd54-dd7c-44cd-8847-f9577c6f1a49 --vf-model-uuid 8b1f63f3-e0cc-4c27-8903-fafe2f25bfbe --vf-model-name 847cb26a-59a6-475a-94dd --vf-model-version 1.0 --vf-model-customization-id cf893f5a-1bb1-4e32-a92b-2456e12178f8 --service-model-invariant-id 1de901ed-17af-4b03-bc1f-41659cfa27cb --service-model-uuid ace39141-09ec-4068-b06d-ac6b23bdc6e0 --service-model-name demoVLB --service-model-version 1.0 -m http://192.168.17.121:8080 -u InfraPortalClient -p password1$
+ moco: vf-create-schema-1.1-moco.json
+ ouput: |
+ +--------------+--------------------------------------+
+ |property |value |
+ +--------------+--------------------------------------+
+ |vf-id |048c2c4a-ee30-41a1-bb55-c4e7fe1a9a0d |
+ +--------------+--------------------------------------+
diff --git a/plugins/so/src/test/resources/onap-cli-sample/services/vnf-create-sample-1.1.yaml b/plugins/so/src/test/resources/onap-cli-sample/services/vnf-create-sample-1.1.yaml
deleted file mode 100644
index 267d3b9c..00000000
--- a/plugins/so/src/test/resources/onap-cli-sample/services/vnf-create-sample-1.1.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-onap_cli_sample_version: 1.0
-
-name: vnf-create
-version: onap-1.1
-samples:
- sample1:
- name: Create a vnf
- input: -h https://locahost:8080 -u InfraPortalClient -p password1$ -l region1 -t 123ABC -p a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb -i instance -r -s a445678da -m serviceA \ No newline at end of file