summaryrefslogtreecommitdiffstats
path: root/plugins/openecomp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/openecomp')
-rw-r--r--plugins/openecomp/auth/pom.xml41
-rw-r--r--plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLoginCommand.java30
-rw-r--r--plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLogoutCommand.java30
-rw-r--r--plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapSdcBasicAuthLoginCommand.java30
-rw-r--r--plugins/openecomp/auth/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand3
-rw-r--r--plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-1-0.yaml29
-rw-r--r--plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-sdc-1-0.yaml35
-rw-r--r--plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-logout-onap-1-0.yaml11
-rw-r--r--plugins/openecomp/catalog/pom.xml41
-rw-r--r--plugins/openecomp/catalog/src/main/resources/open-cli-schema/catalog-onap-1-0.yaml56
-rw-r--r--plugins/openecomp/features/aai/pom.xml41
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/cloud-region/cloud-list-schema.yaml55
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-create-schema.yaml36
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-delete-schema.yaml33
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-list-schema.yaml34
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-show-schema.yaml53
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-create-schema.yaml36
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-delete-schema.yaml37
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-list-schema.yaml40
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-create-schema.yaml66
-rw-r--r--plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-list-schema.yaml43
-rw-r--r--plugins/openecomp/features/aai/src/test/resources/open-cli-sample/cloud-region/cloud-list-sample-1.0.yaml27
-rw-r--r--plugins/openecomp/features/pom.xml70
-rw-r--r--plugins/openecomp/features/sdc/pom.xml39
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-create-schema.yaml44
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-show-schema.yaml52
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkin-schema.yaml29
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkout-schema.yaml29
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-create-schema.yaml88
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-list-schema.yaml34
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-show-schema.yaml47
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-submit-schema.yaml29
-rw-r--r--plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-upload-schema.yaml35
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkin-sample.yaml8
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkout-sample.yaml9
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-create-sample.yaml14
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-list-sample.yaml18
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-show-sample.yaml14
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-submit-sample.yaml8
-rw-r--r--plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-upload-sample.yaml8
-rw-r--r--plugins/openecomp/pom.xml71
41 files changed, 1453 insertions, 0 deletions
diff --git a/plugins/openecomp/auth/pom.xml b/plugins/openecomp/auth/pom.xml
new file mode 100644
index 00000000..8b69d782
--- /dev/null
+++ b/plugins/openecomp/auth/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2017 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-openecomp</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp-auth</artifactId>
+ <name>cli/plugins/openecomp/auth</name>
+ <packaging>jar</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLoginCommand.java b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLoginCommand.java
new file mode 100644
index 00000000..e0fa3abf
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLoginCommand.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2017 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.
+ */
+
+package org.onap.cli.cmd.auth;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.BasicAuthLoginCommand;
+import org.onap.cli.fw.error.OnapCommandException;
+
+@OnapCommandSchema(schema = "basic-login-onap-1-0.yaml")
+public class OnapBasicAuthLoginCommand extends BasicAuthLoginCommand {
+
+ @Override
+ protected void run() throws OnapCommandException {
+ super.run();
+ }
+}
diff --git a/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLogoutCommand.java b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLogoutCommand.java
new file mode 100644
index 00000000..b87989c7
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapBasicAuthLogoutCommand.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2017 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.
+ */
+
+package org.onap.cli.cmd.auth;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.BasicAuthLogoutCommand;
+import org.onap.cli.fw.error.OnapCommandException;
+
+@OnapCommandSchema(schema = "basic-logout-onap-1-0.yaml")
+public class OnapBasicAuthLogoutCommand extends BasicAuthLogoutCommand {
+
+ @Override
+ protected void run() throws OnapCommandException {
+ super.run();
+ }
+}
diff --git a/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapSdcBasicAuthLoginCommand.java b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapSdcBasicAuthLoginCommand.java
new file mode 100644
index 00000000..0e8805a4
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/java/org/onap/cli/cmd/auth/OnapSdcBasicAuthLoginCommand.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2017 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.
+ */
+
+package org.onap.cli.cmd.auth;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.BasicAuthLoginCommand;
+import org.onap.cli.fw.error.OnapCommandException;
+
+@OnapCommandSchema(schema = "basic-login-onap-sdc-1-0.yaml")
+public class OnapSdcBasicAuthLoginCommand extends BasicAuthLoginCommand {
+
+ @Override
+ protected void run() throws OnapCommandException {
+ super.run();
+ }
+}
diff --git a/plugins/openecomp/auth/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand b/plugins/openecomp/auth/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand
new file mode 100644
index 00000000..7594b30f
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand
@@ -0,0 +1,3 @@
+org.onap.cli.cmd.auth.OnapBasicAuthLoginCommand
+org.onap.cli.cmd.auth.OnapBasicAuthLogoutCommand
+org.onap.cli.cmd.auth.OnapSdcBasicAuthLoginCommand \ No newline at end of file
diff --git a/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-1-0.yaml b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-1-0.yaml
new file mode 100644
index 00000000..675a1f88
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-1-0.yaml
@@ -0,0 +1,29 @@
+open_cli_schema_version: 1.0
+
+name: basic-login
+
+description: ONAP basic login auth command
+
+info:
+ product: openecomp
+ service: basic-auth
+ type: auth
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+results:
+ direction: portrait
+ attributes:
+ - name: Authorization
+ description: Authorization
+ scope: short
+ type: string
+ - name: X-TransactionId
+ description: X-TransactionId
+ scope: short
+ type: string
+ default_value: req-$s{uuid}
+ - name: X-FromAppId
+ description: X-FromAppId
+ scope: short
+ type: string
+ default_value: ONAP CLI
diff --git a/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-sdc-1-0.yaml b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-sdc-1-0.yaml
new file mode 100644
index 00000000..d9467440
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-login-onap-sdc-1-0.yaml
@@ -0,0 +1,35 @@
+open_cli_schema_version: 1.0
+
+name: sdc-basic-login
+
+description: ONAP basic login auth command
+
+
+info:
+ product: openecomp
+ service: sdc-basic-auth
+ type: auth
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+results:
+ direction: portrait
+ attributes:
+ - name: Authorization
+ description: Authorization
+ scope: short
+ type: string
+ - name: X-TransactionId
+ description: X-TransactionId
+ scope: short
+ type: string
+ default_value: req-$s{uuid}
+ - name: X-FromAppId
+ description: X-FromAppId
+ scope: short
+ type: string
+ default_value: ONAP CLI
+ - name: USER_ID
+ description: USER_ID for sdc
+ scope: short
+ type: string
+ default_value: ${host-username} \ No newline at end of file
diff --git a/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-logout-onap-1-0.yaml b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-logout-onap-1-0.yaml
new file mode 100644
index 00000000..1e2bea22
--- /dev/null
+++ b/plugins/openecomp/auth/src/main/resources/open-cli-schema/basic-logout-onap-1-0.yaml
@@ -0,0 +1,11 @@
+open_cli_schema_version: 1.0
+
+name: basic-logout
+
+description: ONAP basic logout auth command
+
+info:
+ product: openecomp
+ service: basic-auth
+ type: auth
+ author: ONAP CLI Team onap-discuss@lists.onap.org
diff --git a/plugins/openecomp/catalog/pom.xml b/plugins/openecomp/catalog/pom.xml
new file mode 100644
index 00000000..6e216449
--- /dev/null
+++ b/plugins/openecomp/catalog/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2017 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-openecomp</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp-catalog</artifactId>
+ <name>cli/plugins/openecomp/catalog</name>
+ <packaging>jar</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/plugins/openecomp/catalog/src/main/resources/open-cli-schema/catalog-onap-1-0.yaml b/plugins/openecomp/catalog/src/main/resources/open-cli-schema/catalog-onap-1-0.yaml
new file mode 100644
index 00000000..d55e23d3
--- /dev/null
+++ b/plugins/openecomp/catalog/src/main/resources/open-cli-schema/catalog-onap-1-0.yaml
@@ -0,0 +1,56 @@
+open_cli_schema_version: 1.0
+
+name: catalog
+
+description: ONAP catalog command to find the base path for service.
+
+info:
+ product: openecomp
+ service: msb
+ type: catalog
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: catalog-service-name
+ type: string
+ description: service name registered in catalog service
+ short_option: l
+ long_option: catalog-service-name
+ is_optional: false
+ - name: catalog-service-version
+ type: string
+ description: service version registered in catalog service
+ short_option: i
+ long_option: catalog-service-version
+ is_optional: false
+
+results:
+ direction: portrait
+ attributes:
+ - name: catalog-service-host-url
+ description: Service connection url
+ scope: short
+ type: string
+ default_value: ${host-url}
+ - name: catalog-service-base-path
+ description: service base path, to append with host-url for connecting the service.
+ scope: short
+ type: string
+ default_value: /
+
+http:
+
+ service:
+ mode: direct
+ auth: none
+ request:
+ uri: /services/${catalog-service-name}/version/${catalog-service-version}
+ method: GET
+ success_codes:
+ - 201
+ - 200
+ result_map:
+ catalog-service-base-path: $b{$.url}
+ catalog-service-host-url: ${host-url}
+ sample_response:
+ body: '{"serviceName":"test","version":"v1","url":"/api/test/v1","protocol":"REST","visualRange":"1","lb_policy":"hash","nodes":[{"ip":"127.0.0.1","port":"8012","ttl":0,"nodeId":"test_127.0.0.1_8012","expiration":"2017-02-10T05:33:25Z","created_at":"2017-02-10T05:33:25Z","updated_at":"2017-02-10T05:33:25Z"}],"status":"1"}'
diff --git a/plugins/openecomp/features/aai/pom.xml b/plugins/openecomp/features/aai/pom.xml
new file mode 100644
index 00000000..dc452b45
--- /dev/null
+++ b/plugins/openecomp/features/aai/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2017 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-openecomp-features</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp-features-aai</artifactId>
+ <name>cli/plugins/openecomp/features/aai</name>
+ <packaging>jar</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/cloud-region/cloud-list-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/cloud-region/cloud-list-schema.yaml
new file mode 100644
index 00000000..50cea668
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/cloud-region/cloud-list-schema.yaml
@@ -0,0 +1,55 @@
+open_cli_schema_version: 1.0
+name: cloud-list
+description: List the configured clouds and Onap service subscriptions
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+results:
+ direction: landscape
+ attributes:
+ - name: cloud
+ description: Onap cloud
+ scope: short
+ type: string
+ - name: region
+ description: Onap cloud region
+ scope: short
+ type: string
+ - name: tenant
+ description: Onap cloud tenat
+ scope: short
+ type: string
+ - name: tenant-id
+ description: Onap cloud tenat id
+ scope: short
+ type: string
+ - name: customer
+ description: Onap cloud customer
+ scope: long
+ type: string
+ - name: service
+ description: Onap cloud service
+ scope: long
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/cloud-infrastructure/cloud-regions
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ cloud: $b{cloud-region.[*].cloud-owner}
+ region: $b{cloud-region.[*].cloud-region-id}
+ tenant: $b{cloud-region.[*].tenants.tenant.[*].tenant-name}
+ tenant-id: $b{cloud-region.[*].tenants.tenant.[*].tenant-id}
+ customer: $b{cloud-region.[*].tenants.tenant.[*].relationship-list.relationship.[*].relationship-data.[?(@.relationship-key == 'customer.global-customer-id')].relationship-value}
+ service: $b{cloud-region.[*].tenants.tenant.[*].relationship-list.relationship.[*].relationship-data.[?(@.relationship-key == 'service-subscription.service-type')].relationship-value}
+ sample_response:
+ body: '{"cloud-region":[{"cloud-owner":"Rackspace","cloud-region-id":"RegionOne","cloud-type":"SharedNode","owner-defined-type":"OwnerType","cloud-region-version":"v1","cloud-zone":"CloudZone","resource-version":"1500729864","tenants":{"tenant":[{"tenant-id":"e69e6d64b44347509c3fc512391f34a6","tenant-name":"onap","resource-version":"1500729865","relationship-list":{"relationship":[{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"Demonstration"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/Demonstration123/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"Demonstration123"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/u1/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"u1"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/u2/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"u2"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/DemoCust_7151e36a-1a57-4993-b513-54134f2b8f19/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"DemoCust_7151e36a-1a57-4993-b513-54134f2b8f19"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vLB/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"Demonstration"},{"relationship-key":"service-subscription.service-type","relationship-value":"vLB"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/Linan/service-subscriptions/service-subscription/vFW/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"Linan"},{"relationship-key":"service-subscription.service-type","relationship-value":"vFW"}]},{"related-to":"service-subscription","related-link":"https://192.168.17.12:8443/aai/v8/business/customers/customer/Linan/service-subscriptions/service-subscription/vLB/","relationship-data":[{"relationship-key":"customer.global-customer-id","relationship-value":"Linan"},{"relationship-key":"service-subscription.service-type","relationship-value":"vLB"}]}]}}]}}]}'
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-create-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-create-schema.yaml
new file mode 100644
index 00000000..8ca23903
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-create-schema.yaml
@@ -0,0 +1,36 @@
+open_cli_schema_version: 1.0
+name: customer-create
+description: Create a customer in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: customer-name
+ description: Onap customer name
+ type: string
+ short_option: x
+ long_option: customer-name
+ is_optional: false
+ - name: subscriber-name
+ description: Onap subscriber name
+ type: string
+ short_option: y
+ long_option: subscriber-name
+ is_optional: false
+
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers/customer/${customer-name}
+ method: PUT
+ body: '{"global-customer-id": "${customer-name}", "subscriber-name": "${subscriber-name}", "subscriber-type": "INFRA"}'
+ success_codes:
+ - 201
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-delete-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-delete-schema.yaml
new file mode 100644
index 00000000..01fecefb
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-delete-schema.yaml
@@ -0,0 +1,33 @@
+open_cli_schema_version: 1.0
+name: customer-delete
+description: Delete a customer from Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: customer-name
+ description: Onap customer name
+ type: string
+ short_option: x
+ long_option: customer-name
+ is_optional: false
+ - name: resource-version
+ description: Onap customer resource version
+ type: uuid
+ short_option: y
+ long_option: resource-version
+ is_optional: true
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers/customer/${customer-name}?resource-version=${resource-version}
+ method: DELETE
+ success_codes:
+ - 204
+ - 404
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-list-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-list-schema.yaml
new file mode 100644
index 00000000..043e5bc7
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-list-schema.yaml
@@ -0,0 +1,34 @@
+open_cli_schema_version: 1.0
+name: customer-list
+description: Lists the registetred customers in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+results:
+ direction: landscape
+ attributes:
+ - name: name
+ description: Onap customer name
+ scope: short
+ type: string
+ - name: resource-version
+ description: Onap customer resource version
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ name: $b{customer.[*].global-customer-id}
+ resource-version: $b{customer.[*].resource-version}
+ sample_response:
+ body: '{"customer":[{"global-customer-id":"Demonstration","subscriber-name":"Demonstration","subscriber-type":"INFRA","resource-version":"1500729865","service-subscriptions":{"service-subscription":[{"service-type":"vFW","resource-version":"1500729865","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}},{"service-type":"vLB","resource-version":"1500729865","service-instances":{"service-instance":[{"service-instance-id":"d6167ea1-ff83-4236-9b32-37494dfb7537","service-instance-name":"demoVLB-1","persona-model-id":"af01a849-721b-407d-a880-be836e26ee81","persona-model-version":"1.0","resource-version":"1501154574","relationship-list":{"relationship":[{"related-to":"generic-vnf","related-link":"https://192.168.17.12:8443/aai/v8/network/generic-vnfs/generic-vnf/16c6d95d-44e3-4527-aa63-a495bf8e776e/","relationship-data":[{"relationship-key":"generic-vnf.vnf-id","relationship-value":"16c6d95d-44e3-4527-aa63-a495bf8e776e"}],"related-to-property":[{"property-key":"generic-vnf.vnf-name","property-value":"demoVLB-1-VNF-1"}]}]}}]},"relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}}]}},{"global-customer-id":"Linan","subscriber-name":"Linan","subscriber-type":"INFRA","resource-version":"1501768482","service-subscriptions":{"service-subscription":[{"service-type":"vFW","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}},{"service-type":"vLB","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}}]}},{"global-customer-id":"DemoCust_7151e36a-1a57-4993-b513-54134f2b8f19","subscriber-name":"DemoCust_7151e36a-1a57-4993-b513-54134f2b8f19","subscriber-type":"INFRA","resource-version":"1501766760","service-subscriptions":{"service-subscription":[{"service-type":"vFW","resource-version":"1501766760","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}}]}}]}' \ No newline at end of file
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-show-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-show-schema.yaml
new file mode 100644
index 00000000..357efefa
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/customer/customer-show-schema.yaml
@@ -0,0 +1,53 @@
+open_cli_schema_version: 1.0
+name: customer-show
+description: Lists the registetred customers in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: customer-name
+ description: Onap customer name
+ type: string
+ short_option: x
+ long_option: customer-name
+ is_optional: false
+
+results:
+ direction: landscape
+ attributes:
+ - name: name
+ description: Onap customer name
+ scope: short
+ type: string
+ - name: subscriber-name
+ description: Onap subscriber name
+ scope: short
+ type: string
+ - name: resource-version
+ description: Onap subscriber resource version
+ scope: long
+ type: string
+ - name: subscriber-type
+ description: Onap subscriber type
+ scope: long
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers/customer/${customer-name}
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ name: $b{$.global-customer-id}
+ subscriber-name: $b{$.subscriber-name}
+ subscriber-type: $b{$.subscriber-type}
+ resource-version: $b{$.resource-version}
+ sample_response:
+ body: '{"global-customer-id":"Linan","subscriber-name":"Linan","subscriber-type":"INFRA","resource-version":"1501768482","service-subscriptions":{"service-subscription":[{"service-type":"vFW","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}},{"service-type":"vLB","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}}]}}'
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-create-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-create-schema.yaml
new file mode 100644
index 00000000..e59e910f
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-create-schema.yaml
@@ -0,0 +1,36 @@
+open_cli_schema_version: 1.0
+name: service-type-create
+description: Add a service type in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: service-type
+ description: Onap service type
+ type: string
+ short_option: x
+ long_option: service-type
+ is_optional: false
+ - name: service-type-id
+ description: Onap service type uuid
+ type: uuid
+ short_option: y
+ long_option: service-type-id
+ is_optional: true
+
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/service-design-and-creation/services/service/${service-type-id}
+ method: PUT
+ body: '{"service-description": "${service-type}", "service-id": "${service-type-id}"}'
+ success_codes:
+ - 201
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-delete-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-delete-schema.yaml
new file mode 100644
index 00000000..4c615b40
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-delete-schema.yaml
@@ -0,0 +1,37 @@
+open_cli_schema_version: 1.0
+name: service-type-delete
+description: Delete a service type from Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: service-type-id
+ description: Onap service type uuid
+ type: uuid
+ short_option: x
+ long_option: service-type-id
+ is_optional: true
+ - name: resource-version
+ description: Onap service resource version
+ type: uuid
+ short_option: y
+ long_option: resource-version
+ is_optional: true
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/service-design-and-creation/services/service/${service-type-id}?resource-version=${resource-version}
+ queries:
+ resource-version: ${resource-version}
+ method: DELETE
+ success_codes:
+ - 204
+ - 404
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-list-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-list-schema.yaml
new file mode 100644
index 00000000..746b58f8
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/service-type/service-type-list-schema.yaml
@@ -0,0 +1,40 @@
+open_cli_schema_version: 1.0
+name: service-type-list
+description: List the service types configured in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+results:
+ direction: landscape
+ attributes:
+ - name: service-type-id
+ description: Onap cloud service
+ scope: short
+ type: string
+ - name: service-type
+ description: Onap cloud service
+ scope: short
+ type: string
+ - name: resource-version
+ description: Onap cloud service resource version
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/service-design-and-creation/services
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ service-type: $b{service.[*].service-description}
+ service-type-id: $b{service.[*].service-id}
+ resource-version: $b{service.[*].resource-version}
+ sample_response:
+ body: '{"service":[{"service-id":"db3403eb-5c94-4295-bb00-a9dba8964ab3","service-description":"vFW","resource-version":"1500729865"},{"service-id":"33737156-ff09-4b3d-884a-fe9a372afa4e","service-description":"vLB","resource-version":"1500729866"}]}'
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-create-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-create-schema.yaml
new file mode 100644
index 00000000..2fd3ca98
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-create-schema.yaml
@@ -0,0 +1,66 @@
+open_cli_schema_version: 1.0
+name: subscription-create
+description: Create a subscription for a customer in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: customer-name
+ description: Onap customer name
+ type: string
+ short_option: x
+ long_option: customer-name
+ is_optional: false
+ - name: subscriber-name
+ description: Onap subscriber name
+ type: string
+ short_option: y
+ long_option: subscriber-name
+ is_optional: false
+ - name: cloud-type
+ description: Onap cloud type (openstack, rackspace)
+ type: string
+ short_option: z
+ long_option: cloud-type
+ is_optional: false
+ - name: cloud-region
+ description: Onap cloud region
+ type: string
+ short_option: r
+ long_option: cloud-region
+ is_optional: false
+ - name: cloud-tenant-id
+ description: Onap cloud tenant id
+ type: string
+ short_option: c
+ long_option: cloud-tenant-id
+ is_optional: false
+ - name: service-type
+ description: Onap service type
+ type: string
+ short_option: e
+ long_option: service-type
+ is_optional: false
+ - name: resource-version
+ description: Onap subscription resource version. It is mandatory for existing customer to create a new subscription
+ type: string
+ short_option: g
+ long_option: resource-version
+ is_optional: true
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers/customer/${customer-name}
+ method: PUT
+ body: '{"global-customer-id": "${customer-name}", "subscriber-name": "${subscriber-name}", "subscriber-type": "INFRA", "resource-version":"${resource-version}", "service-subscriptions":{"service-subscription":[{"relationship-list":{"relationship":[{"related-to":"tenant","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"${cloud-type}"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"${cloud-region}"},{"relationship-key":"tenant.tenant-id","relationship-value":"${cloud-tenant-id}"}]}]},"service-type":"${service-type}"}]}}}'
+ success_codes:
+ - 200
+ - 201
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-list-schema.yaml b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-list-schema.yaml
new file mode 100644
index 00000000..4893194d
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/main/resources/open-cli-schema/subscription/subscription-list-schema.yaml
@@ -0,0 +1,43 @@
+open_cli_schema_version: 1.0
+name: subscription-list
+description: Lists the subscription for a given customer in Onap
+
+info:
+ product: openecomp
+ service: aai
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: customer-name
+ description: Onap customer name
+ type: string
+ short_option: x
+ long_option: customer-name
+ is_optional: false
+
+results:
+ direction: landscape
+ attributes:
+ - name: service-type
+ description: Onap service type
+ scope: short
+ type: string
+
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /aai/v8/business/customers/customer/${customer-name}
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ service-type: $b{$.service-subscriptions.service-subscription.[*].service-type}
+ sample_response:
+ body: '{"global-customer-id":"Linan","subscriber-name":"Linan","subscriber-type":"INFRA","resource-version":"1501768482","service-subscriptions":{"service-subscription":[{"service-type":"vFW","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}},{"service-type":"vLB","resource-version":"1501768482","relationship-list":{"relationship":[{"related-to":"tenant","related-link":"https://192.168.17.12:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/Rackspace/RegionOne/tenants/tenant/e69e6d64b44347509c3fc512391f34a6/","relationship-data":[{"relationship-key":"cloud-region.cloud-owner","relationship-value":"Rackspace"},{"relationship-key":"cloud-region.cloud-region-id","relationship-value":"RegionOne"},{"relationship-key":"tenant.tenant-id","relationship-value":"e69e6d64b44347509c3fc512391f34a6"}],"related-to-property":[{"property-key":"tenant.tenant-name","property-value":"onap"}]}]}}]}}'
+
+
+
+
diff --git a/plugins/openecomp/features/aai/src/test/resources/open-cli-sample/cloud-region/cloud-list-sample-1.0.yaml b/plugins/openecomp/features/aai/src/test/resources/open-cli-sample/cloud-region/cloud-list-sample-1.0.yaml
new file mode 100644
index 00000000..f57b3018
--- /dev/null
+++ b/plugins/openecomp/features/aai/src/test/resources/open-cli-sample/cloud-region/cloud-list-sample-1.0.yaml
@@ -0,0 +1,27 @@
+open_cli_sample_version: 1.0
+
+name: cloud-list
+version: openecomp
+samples:
+ sample1:
+ name: List the configured clouds in onap
+ input: -h https://locahost:8443 -u AAI -p AAI
+ output: |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ |cloud |region |tenant |tenant-id |customer |service |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ |Rackspace |RegionOne |onap |e69e6d64b44347509c3fc512391f34a6 |Demonstration |vFW |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |Demonstration123 |vFW |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |u2 |vFW |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |DemoCust_7151e36a-1a57-4993-b513-54134f2b8f19 |vFW |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |Demonstration |vLB |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |Linan |vFW |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+ | | | | |Linan |vLB |
+ +------------+------------+--------+----------------------------------+------------------------------------------------+----------+
+
diff --git a/plugins/openecomp/features/pom.xml b/plugins/openecomp/features/pom.xml
new file mode 100644
index 00000000..b1f334bf
--- /dev/null
+++ b/plugins/openecomp/features/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2017 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-openecomp</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp-features</artifactId>
+ <name>cli/plugins/openecomp/features</name>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>aai</module>
+ <module>sdc</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-artifact</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}</artifactId>
+ <version>${project.version}</version>
+ <type>${project.packaging}</type>
+ </artifactItem>
+ </artifactItems>
+ <!-- copy to plugin dependencies -->
+ <outputDirectory>../../../../plugins/target/lib</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>
diff --git a/plugins/openecomp/features/sdc/pom.xml b/plugins/openecomp/features/sdc/pom.xml
new file mode 100644
index 00000000..fc2b1b5a
--- /dev/null
+++ b/plugins/openecomp/features/sdc/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-openecomp-features</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp-features-sdc</artifactId>
+ <name>cli/plugins/openecomp/features/sdc</name>
+ <packaging>jar</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-create-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-create-schema.yaml
new file mode 100644
index 00000000..a223c8d4
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-create-schema.yaml
@@ -0,0 +1,44 @@
+open_cli_schema_version: 1.0
+name: license-model-create
+description: Create License Model
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+
+parameters:
+ - name: vendor-name
+ description: vendor name
+ type: string
+ short_option: x
+ long_option: vendor-name
+ is_optional: false
+ - name: license-model-description
+ description: Description for License Model
+ type: string
+ short_option: y
+ long_option: license-model-description
+ is_optional: true
+results:
+ direction: portrait
+ attributes:
+ - name: ID
+ description: License Model ID
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-license-models
+ method: POST
+ body: '{"vendorName": "${vendor-name}", "description": "${license-model-description}", "iconRef": "icon"}'
+ success_codes:
+ - 200
+ result_map:
+ ID: $b{$.value}
+ sample_response:
+ body: '{"value":"2DEB6CB4B082415BB7A697C9CD1273BA"}'
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-show-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-show-schema.yaml
new file mode 100644
index 00000000..860cbea9
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/license-models/license-model-show-schema.yaml
@@ -0,0 +1,52 @@
+open_cli_schema_version: 1.0
+name: license-model-show
+description: Details of the License Model
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: license-model-id
+ description: Onap License Model ID
+ type: string
+ short_option: x
+ long_option: license-model-id
+ is_optional: false
+
+results:
+ direction: landscape
+ attributes:
+ - name: name
+ description: License Model Name
+ scope: short
+ type: string
+ - name: ID
+ description: License Model ID
+ scope: short
+ type: string
+ - name: description
+ description: Description for the License Model
+ scope: short
+ type: string
+ - name: status
+ description: Status of the License Model
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${license-model-id}
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ name: $b{$.vendorName}
+ ID: $b{$.id}
+ description: $b{$.description}
+ status: $b{$.status}
+ sample_response:
+ body: '{"vendorName": "5aa8a88c","description": "vendor license model","iconRef": "icon","id": "109F0F948B974D998D89893A1BD39D4A","version": "0.1","status": "Locked","lockingUser": "cs0008","viewableVersions": ["0.1"]}'
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkin-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkin-schema.yaml
new file mode 100644
index 00000000..d7b2d90f
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkin-schema.yaml
@@ -0,0 +1,29 @@
+open_cli_schema_version: 1.0
+name: vsp-checkin
+description: Checkin Vendor Software Product
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-id
+ description: Onap VSP ID
+ type: string
+ short_option: x
+ long_option: vsp-id
+ is_optional: false
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${vsp-id}/actions
+ method: PUT
+ body: '{"action": "Checkin"}'
+ success_codes:
+ - 201
+ - 200
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkout-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkout-schema.yaml
new file mode 100644
index 00000000..50d73517
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-checkout-schema.yaml
@@ -0,0 +1,29 @@
+open_cli_schema_version: 1.0
+name: vsp-checkout
+description: Checkout Vendor Software Product
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-id
+ description: Onap VSP ID
+ type: string
+ short_option: x
+ long_option: vsp-id
+ is_optional: false
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${vsp-id}/actions
+ method: PUT
+ body: '{"action": "Checkout"}'
+ success_codes:
+ - 201
+ - 200
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-create-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-create-schema.yaml
new file mode 100644
index 00000000..f3fbbd6a
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-create-schema.yaml
@@ -0,0 +1,88 @@
+open_cli_schema_version: 1.0
+name: vsp-create
+description: Create Vendor Software Product
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-name
+ description: Onap VSP Name
+ type: string
+ short_option: x
+ long_option: vsp-name
+ is_optional: false
+ - name: vsp-description
+ description: Description for VSP
+ type: string
+ short_option: y
+ long_option: vsp-description
+ is_optional: true
+ - name: vsp-category
+ description: Category of the VSP
+ type: string
+ short_option: b
+ long_option: vsp-category
+ is_optional: true
+ default_value: resourceNewCategory.generic
+ - name: vsp-subcategory
+ description: Sub Category of VSP
+ type: string
+ short_option: c
+ long_option: vsp-subcategory
+ is_optional: true
+ default_value: resourceNewCategory.generic.abstract
+ - name: vlm-version
+ description: License version
+ type: string
+ short_option: e
+ long_option: vlm-version
+ is_optional: true
+ default_value: 1.0
+ - name: vlm-vendor
+ description: License Model Name
+ type: string
+ short_option: g
+ long_option: vlm-vendor
+ is_optional: false
+ - name: vlm-id
+ description: License Model ID
+ type: string
+ short_option: i
+ long_option: vlm-id
+ is_optional: false
+ - name: vlm-agreement-id
+ description: License Agreement ID
+ type: string
+ short_option: j
+ long_option: vlm-agreement-id
+ is_optional: false
+ - name: vlm-feature-group-id
+ description: Feature Group ID
+ type: string
+ short_option: k
+ long_option: vlm-feature-group-id
+ is_optional: false
+results:
+ direction: portrait
+ attributes:
+ - name: ID
+ description: VSP ID
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products
+ method: POST
+ body: '{"name": "${vsp-name}", "description": "${vsp-description}", "category": "${vsp-category}", "subCategory": "${vsp-subcategory}", "licensingVersion": "${vlm-version}", "vendorName": "${vlm-vendor}", "vendorId": "${vlm-id}", "icon": "icon", "licensingData": { "licenseAgreement": "${vlm-agreement-id}", "featureGroups": [ "${vlm-feature-group-id}" ]}}'
+ success_codes:
+ - 200
+ result_map:
+ ID: $b{$.vspId}
+ sample_response:
+ body: '{"vspId":"2DEB6CB4B082415BB7A697C9CD1273BA"}'
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-list-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-list-schema.yaml
new file mode 100644
index 00000000..3bdd41d7
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-list-schema.yaml
@@ -0,0 +1,34 @@
+open_cli_schema_version: 1.0
+name: vsp-list
+description: List of the Vendor Software Products
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+results:
+ direction: landscape
+ attributes:
+ - name: ID
+ description: VSP ID
+ scope: short
+ type: string
+ - name: name
+ description: VSP Name
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ name: $b{results.[*].name}
+ ID: $b{results.[*].id}
+ sample_response:
+ body: '{"results":[{"name":"test-vsp1","description":"vendor software product","category":"resourceNewCategory.generic","subCategory":"resourceNewCategory.generic.abstract","vendorName":"5aa8a88c","vendorId":"DBB202617952486691C1E35C9621CD4E","licensingVersion":"1.0","licensingData":{"licenseAgreement":"E19DBDDB137B494385F9535325BFD585","featureGroups":["94835F096DAF4ED78781A394A4F22AD1"]},"id":"354BF3E32E494EAFBB15037CFAB262FF","version":"0.1","viewableVersions":["0.1"],"status":"Locked","lockingUser":"cs0008"},{"name":"test-vsp","description":"vendor software product","category":"resourceNewCategory.generic","subCategory":"resourceNewCategory.generic.abstract","vendorName":"5aa8a88c","vendorId":"DBB202617952486691C1E35C9621CD4E","licensingVersion":"1.0","licensingData":{"licenseAgreement":"E19DBDDB137B494385F9535325BFD585","featureGroups":["94835F096DAF4ED78781A394A4F22AD1"]},"id":"2DEB6CB4B082415BB7A697C9CD1273BA","version":"1.0","viewableVersions":["1.0"],"finalVersions":["1.0"],"status":"Final"}],"listCount":2}'
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-show-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-show-schema.yaml
new file mode 100644
index 00000000..affe73e7
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-show-schema.yaml
@@ -0,0 +1,47 @@
+open_cli_schema_version: 1.0
+name: vsp-show
+description: Details of the Vendor Software Product
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-id
+ description: Onap VSP ID
+ type: string
+ short_option: x
+ long_option: vsp-id
+ is_optional: false
+
+results:
+ direction: landscape
+ attributes:
+ - name: name
+ description: VSP Name
+ scope: short
+ type: string
+ - name: ID
+ description: VSP ID
+ scope: short
+ type: string
+ - name: description
+ description: Description for the VSP
+ scope: short
+ type: string
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${vsp-id}
+ method: GET
+ success_codes:
+ - 200
+ result_map:
+ name: $b{$.name}
+ ID: $b{$.id}
+ description: $b{$.description}
+ sample_response:
+ body: '{"name":"test-vsp1","description":"vendor software product","category":"resourceNewCategory.generic","subCategory":"resourceNewCategory.generic.abstract","vendorName":"5aa8a88c","vendorId":"DBB202617952486691C1E35C9621CD4E","licensingVersion":"1.0","licensingData":{"licenseAgreement":"E19DBDDB137B494385F9535325BFD585","featureGroups":["94835F096DAF4ED78781A394A4F22AD1"]},"id":"354BF3E32E494EAFBB15037CFAB262FF","version":"0.1","viewableVersions":["0.1"],"status":"Locked","lockingUser":"cs0008"}'
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-submit-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-submit-schema.yaml
new file mode 100644
index 00000000..00c95f01
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-submit-schema.yaml
@@ -0,0 +1,29 @@
+open_cli_schema_version: 1.0
+name: vsp-submit
+description: Submit Vendor Software Product
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-id
+ description: Onap VSP ID
+ type: string
+ short_option: x
+ long_option: vsp-id
+ is_optional: false
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${vsp-id}/actions
+ method: PUT
+ body: '{"action": "Submit"}'
+ success_codes:
+ - 201
+ - 200
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-upload-schema.yaml b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-upload-schema.yaml
new file mode 100644
index 00000000..b8708b83
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/main/resources/open-cli-schema/vsp/vsp-upload-schema.yaml
@@ -0,0 +1,35 @@
+open_cli_schema_version: 1.0
+name: vsp-upload
+description: Upload the CSAR file to VSP
+
+info:
+ product: openecomp
+ service: sdc
+ author: ONAP CLI Team onap-discuss@lists.onap.org
+
+parameters:
+ - name: vsp-id
+ description: Onap VSP ID
+ type: string
+ short_option: x
+ long_option: vsp-id
+ is_optional: false
+ - name: vsp-file
+ description: CSAR File path
+ type: binary
+ short_option: y
+ long_option: vsp-file
+ is_optional: false
+http:
+ service:
+ auth: basic
+ mode: direct
+ request:
+ uri: /onboarding-api/v1.0/vendor-software-products/${vsp-id}/upload
+ method: POST
+ body: ${vsp-file}
+ multipart_entity_name: upload
+ success_codes:
+ - 200
+ sample_response:
+ body: ''
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkin-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkin-sample.yaml
new file mode 100644
index 00000000..6d703741
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkin-sample.yaml
@@ -0,0 +1,8 @@
+open_cli_sample_version: 1.0
+
+name: vsp-checkin
+version: openecomp
+samples:
+ sample1:
+ name: Checkin the Vendor Software Product
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080 --vsp-id E563CB23A6BE49AF9A84CF579DAFB929
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkout-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkout-sample.yaml
new file mode 100644
index 00000000..b935cd20
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-checkout-sample.yaml
@@ -0,0 +1,9 @@
+open_cli_sample_version: 1.0
+
+name: vsp-checkout
+version: onap-amsterdam
+
+samples:
+ sample1:
+ name: Checkout the Vendor Software Product
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080 --vsp-id E563CB23A6BE49AF9A84CF579DAFB929
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-create-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-create-sample.yaml
new file mode 100644
index 00000000..3fb85e48
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-create-sample.yaml
@@ -0,0 +1,14 @@
+open_cli_sample_version: 1.0
+
+name: vsp-create
+version: openecomp
+samples:
+ sample1:
+ name: Create the Vendor Software Product
+ input: --host-username cs0008 --host-password demo123456! --host-url http://locahost:8080 --vsp-name demo-vsp2 --vsp-vendor-name 5aa8a88c --vsp-vendor-id DBB202617952486691C1E35C9 621CD4E --license-agreement-id E19DBDDB137B494385F9535325BFD585 --feature-group-id 94835F096DAF4ED78781A394A4F22AD1
+ output: |
+ +----------+----------------------------------+
+ |property |value |
+ +----------+----------------------------------+
+ |ID |6897DFFF8E864F84AD17A34B7FB936A3 |
+ +----------+----------------------------------+
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-list-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-list-sample.yaml
new file mode 100644
index 00000000..50ba22db
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-list-sample.yaml
@@ -0,0 +1,18 @@
+open_cli_sample_version: 1.0
+
+name: vsp-list
+version: openecomp
+samples:
+ sample1:
+ name: List Vendor Software Products
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080
+ output: |
+ +----------------------------------+------------+
+ |ID |name |
+ +----------------------------------+------------+
+ |E563CB23A6BE49AF9A84CF579DAFB929 |demo-vsp2 |
+ +----------------------------------+------------+
+ |79E62AA736C34E359B869E757D3DDBBE |demo-vsp1 |
+ +----------------------------------+------------+
+ |928B828EE3CC46B99B92D7B9A2AB2118 |demo-vsp |
+ +----------------------------------+------------+
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-show-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-show-sample.yaml
new file mode 100644
index 00000000..4af221e3
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-show-sample.yaml
@@ -0,0 +1,14 @@
+open_cli_sample_version: 1.0
+
+name: vsp-show
+version: openecomp
+samples:
+ sample1:
+ name: Show the details of Vendor Software Products
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080 --vsp-id 2DEB6CB4B082415BB7A697C9CD1273BA
+ output: |
+ +----------+----------------------------------+--------------------------+
+ |name |ID |description |
+ +----------+----------------------------------+--------------------------+
+ |test-vsp |2DEB6CB4B082415BB7A697C9CD1273BA |vendor software product |
+ +----------+----------------------------------+--------------------------+
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-submit-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-submit-sample.yaml
new file mode 100644
index 00000000..3cf101bc
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-submit-sample.yaml
@@ -0,0 +1,8 @@
+open_cli_sample_version: 1.0
+
+name: vsp-submit
+version: openecomp
+samples:
+ sample1:
+ name: Submit the Vendor Software Product
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080 --vsp-id E563CB23A6BE49AF9A84CF579DAFB929
diff --git a/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-upload-sample.yaml b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-upload-sample.yaml
new file mode 100644
index 00000000..b615bd66
--- /dev/null
+++ b/plugins/openecomp/features/sdc/src/test/resources/open-cli-sample/vsp/vsp-upload-sample.yaml
@@ -0,0 +1,8 @@
+open_cli_sample_version: 1.0
+
+name: vsp-upload
+version: openecomp
+samples:
+ sample1:
+ name: upload the zip file to Vendor Software Product
+ input: --host-username cs0008 --host-password demo123456! --host-url http://localhost:8080 --vsp-id E563CB23A6BE49AF9A84CF579DAFB929 --vsp-file /home/user/vFW.zip
diff --git a/plugins/openecomp/pom.xml b/plugins/openecomp/pom.xml
new file mode 100644
index 00000000..2f490432
--- /dev/null
+++ b/plugins/openecomp/pom.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2017 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.
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins</artifactId>
+ <version>2.0.0</version>
+ </parent>
+
+ <artifactId>cli-plugins-openecomp</artifactId>
+ <name>cli/plugins/openecomp</name>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>auth</module>
+ <module>catalog</module>
+ <module>features</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-artifact</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}</artifactId>
+ <version>${project.version}</version>
+ <type>${project.packaging}</type>
+ </artifactItem>
+ </artifactItems>
+ <!-- copy to plugin dependencies -->
+ <outputDirectory>../../../plugins/target/lib</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>