aboutsummaryrefslogtreecommitdiffstats
path: root/products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml')
-rw-r--r--products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml210
1 files changed, 210 insertions, 0 deletions
diff --git a/products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml b/products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml
new file mode 100644
index 00000000..980a9493
--- /dev/null
+++ b/products/onap-dublin/features/integration/src/main/resources/open-cli-schema/vnf-tosca-lcm-dublin-schema.yaml
@@ -0,0 +1,210 @@
+# Copyright 2019 Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+open_cli_schema_version: 1.0
+name: vnf-tosca-lcm
+description: |
+ ONAP TOSCA VNF validation using ONAP CLI and Open Command Platform (OCOMP)
+
+ This command runs in 5 mode:
+ 1. setup: Create requires Vendor, Service Subscription and VNF cloud in ONAP
+ 2. standup: From the given VSP csar, VNF csar and NS csar, it creates VF Model, NS Model and NS service
+ 3. cleanup: Remove those entries provided in onap-objects parameter
+ 4. provision:Run setup -> standup
+ 5. validate: Run setup -> standup -> cleanup
+
+ On every execution, it reports the ONAP managed object's ids in result onap-objects attribute. so
+ if requires, these attribute value could be passed in input parameter onap-objects on subsequent
+ executions to avoid recreation of these ONA managed objects
+
+ prerequisites
+ -------------
+ 1. Setup the OCOMP profile to configure the ONAP service URL and creadentials as given below
+
+ a. Run command 'oclip' to go to OCOMP interactive mode
+
+ b. Type 'use onap-dublin' to choose the onap-dublin product
+
+ c. Type 'profile onap-dublin' to create or to use existing onap-dublin profile
+
+ d. Set following entries:
+ set sdc.onboarding:host-url=http://159.138.8.8:30280
+ set sdc.onboarding:host-username=cs0008
+ set sdc.onboarding:host-password=demo123456!
+ set sdc.catalog:host-url=http://159.138.8.8:30205
+ set sdc.catalog:host-password=demo123456\!
+ set sdc.catalog:host-username=cs0008
+ set sdc.catalog:service-model-approve:host-username=gv0001
+ set sdc.catalog:service-model-distribute:host-username=op0001
+ set sdc.catalog:service-model-test-start:host-username=jm0007
+ set sdc.catalog:service-model-test-accept:host-username=jm0007
+ set sdc.catalog:service-model-add-artifact:host-username=ocomp
+ set sdc.catalog:vf-model-add-artifact:host-username=ocomp
+ set aai:host-url=https://159.138.8.8:30233
+ set aai:host-username=AAI
+ set aai:host-password=AAI
+ set vfc:host-url=http://159.138.8.8:30280
+ set multicloud:host-url=http://159.138.8.8:30280
+
+ NOTE:
+ By default, SDC onboarding service does not provide node port, which is available to access from external ONAP network.
+ so to enable for external access, register the SDC onboarding service into MSB and use MSB url for sdc.onboarding:host-url.
+
+ oclip --product onap-dublin microservice-create --host-url http://159.138.8.8:30280 --service-name sdcob --service-version v1.0 --service-url /onboarding-api/v1.0 --path /onboarding-api/v1.0 --node-ip 172.16.1.0 --node-port 8081
+
+ oclip --product onap-dublin microservice-create --host-url http://159.138.8.8:30280 --service-name sdcobs --service-version v1.0 --service-url /onboarding-api/v1.0 --path /onboarding-api/v1.0 --node-ip 172.16.1.0 --node-port 8445 --enable-ssl
+
+ Find out SDC onboarding service IP and port details as given here:
+ [root@onap-dublin-vfw-93996-50c1z ~]# kubectl get pods -n onap -o wide | grep sdc-onboarding-be
+ dev-sdc-sdc-onboarding-be-5564b877c8-vpwr5 2/2 Running 0 29d 172.16.1.0 192.168.2.163 <none> <none>
+ dev-sdc-sdc-onboarding-be-cassandra-init-mtvz6 0/1 Completed 0 29d 172.16.0.220 192.168.2.163 <none> <none>
+ [root@onap-dublin-vfw-93996-50c1z ~]#
+
+ Note down the IP address for sdc-onboarding-be 172.16.1.0
+
+ [root@onap-dublin-vfw-93996-50c1z ~]# kubectl get services -n onap -o wide | grep sdc-onboarding-be
+ sdc-onboarding-be ClusterIP 10.247.198.92 <none> 8445/TCP,8081/TCP 29d app=sdc-onboarding-be,release=dev-sdc
+ [root@onap-dublin-vfw-93996-50c1z ~]#
+
+ Note down the port for sdc-onboarding-be 8445 8081
+
+ Similarly, other service IP and Port could be discovered like above, in case not know earlier :)
+
+ This profile would be used while running the command with ONAP setup configured in it, as below
+ oclip --profile onap-dublin vnf-tosca-lcm .....
+
+ e. Verify these details once by typing 'set'
+
+ f. Exit from the interactive console by typing 'exit'
+
+ 2. Setup SDC consumer
+ oclip --product onap-dublin --profile onap-dublin sdc-consumer-create --consumer-name ocomp
+
+ 3. Update the cloud and vnfm driver details in the configuration file $OPEN_CLI_HOME/conf/vnf-tosca-provision.json
+
+info:
+ product: onap-dublin
+ service: vnf-validation
+ author: ONAP VTP Team kanagaraj.manickam@huawei.com
+
+parameters:
+ - name: config-json
+ description: Configuration file path
+ type: string
+ short_option: x
+ long_option: config-json
+ default_value: $s{env:OPEN_CLI_HOME}/conf/vnf-tosca-lcm.json
+ is_optional: false
+ - name: vsp
+ description: Path to the ONAP vendor service product (VSP) for the VNF to provision
+ type: binary
+ short_option: y
+ long_option: vsp
+ is_optional: false
+ - name: vnf-csar
+ description: Path to the TOSCA CSAR for the VNF to provision
+ type: binary
+ short_option: r
+ long_option: vnf-csar
+ is_optional: false
+ - name: ns-csar
+ description: Path to the TOSCA CSAR for the NS service to provision
+ type: binary
+ short_option: b
+ long_option: ns-csar
+ is_optional: true
+ default: false
+ - name: vnfm-driver
+ description: VNFM driver to use. One of gvnfmdriver or hwvnfmdriver
+ type: string
+ short_option: c
+ long_option: vnfm-driver
+ is_optional: false
+ - name: onap-objects
+ description: Existing ONAP object ids to use instead of creating them while running this task
+ type: json
+ short_option: Z
+ long_option: onap-objects
+ is_optional: true
+ default_value: {}
+ - name: mode
+ description: setup or standup or cleanup or provision or validate
+ type: string
+ short_option: Y
+ long_option: mode
+ is_optional: true
+ default_value: checkup
+ - name: vnf-name
+ description: VNF Name
+ type: string
+ short_option: A
+ long_option: vnf-name
+ is_optional: false
+ - name: vnf-vendor-name
+ description: VNF Vendor Name
+ type: string
+ short_option: B
+ long_option: vnf-vendor-name
+ is_optional: false
+results:
+ direction: portrait
+ attributes:
+ - name: vnf-id
+ description: ONAP VNF instance id
+ scope: short
+ type: string
+ - name: vnf-status
+ description: Onap VNF status
+ scope: short
+ type: string
+ - name: ns-id
+ description: Onap NS service instance id
+ scope: short
+ type: string
+ - name: ns-status
+ description: Onap NS status
+ scope: short
+ type: string
+ - name: vnfm-driver
+ description: VNFM driver used
+ type: string
+ scope: short
+ - name: onap-objects
+ description: ONAP object used
+ type: json
+ scope: short
+ - name: vnf-vendor-name
+ description: VNF Vendor Name
+ type: string
+ scope: short
+ - name: vnf-name
+ description: VNF Name
+ type: string
+ scope: short
+cmd:
+ command:
+ - python $s{env:OPEN_CLI_HOME}/script/vnf-tosca-lcm.py --vendor-name ${vnf-vendor-name} --vnf-name ${vnf-name} --mode ${mode} --result-json $s{tmp:result.json:onap-objects} --conf ${config-json} --vsp ${vsp} --vnf-csar ${vnf-csar} --ns-csar ${ns-csar} --vnfm-driver ${vnfm-driver}
+ success_codes:
+ - 0
+ working_directory: .
+ output: $s{tmp:result.json}
+ result_map:
+ vnf-id: $o{$.vnf_id}
+ vnf-status: $o{$.vnf_status}
+ ns-id: $o{$.ns_instance_id}
+ ns-status: $o{$.ns_instance_status}
+ vnfm-driver: ${vnfm-driver}
+ vnf-name: ${vnf-name}
+ vnf-vendor-name: ${vnf-vendor-name}
+ onap-objects: $o{$}