aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/onap-1.1/features/msb
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/onap-1.1/features/msb')
-rw-r--r--plugins/onap-1.1/features/msb/pom.xml41
-rw-r--r--plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceCreateCommand.java24
-rw-r--r--plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceDeleteCommand.java24
-rw-r--r--plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceListCommand.java24
-rw-r--r--plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceShowCommand.java24
-rw-r--r--plugins/onap-1.1/features/msb/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand4
-rw-r--r--plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-create-schema.yaml104
-rw-r--r--plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-delete-schema.yaml46
-rw-r--r--plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-list-schema.yaml60
-rw-r--r--plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-show-schema.yaml73
-rw-r--r--plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-create-service-sample-1.1.yaml20
-rw-r--r--plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-delete-service-sample-1.1.yaml8
-rw-r--r--plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-list-service-sample-1.1.yaml14
-rw-r--r--plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-show-service-sample-1.1.yaml14
14 files changed, 480 insertions, 0 deletions
diff --git a/plugins/onap-1.1/features/msb/pom.xml b/plugins/onap-1.1/features/msb/pom.xml
new file mode 100644
index 00000000..c67ff7b2
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/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-onap-1.1-features</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>cli-plugins-onap-1.1-features-msb</artifactId>
+ <name>cli/plugins/onap-1.1/features/msb</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/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceCreateCommand.java b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceCreateCommand.java
new file mode 100644
index 00000000..1ab3b97a
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceCreateCommand.java
@@ -0,0 +1,24 @@
+/*
+ * 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.cs.msb;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.OnapHttpCommand;
+
+@OnapCommandSchema(name = "microservice-create", version = "onap-1.1", schema = "microservice-create-schema.yaml")
+public class OnapServiceCreateCommand extends OnapHttpCommand {
+}
diff --git a/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceDeleteCommand.java b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceDeleteCommand.java
new file mode 100644
index 00000000..a7424fa0
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceDeleteCommand.java
@@ -0,0 +1,24 @@
+/*
+ * 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.cs.msb;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.OnapHttpCommand;
+
+@OnapCommandSchema(name = "microservice-delete", version = "onap-1.1", schema = "microservice-delete-schema.yaml")
+public class OnapServiceDeleteCommand extends OnapHttpCommand {
+}
diff --git a/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceListCommand.java b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceListCommand.java
new file mode 100644
index 00000000..221b4c0e
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceListCommand.java
@@ -0,0 +1,24 @@
+/*
+ * 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.cs.msb;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.OnapHttpCommand;
+
+@OnapCommandSchema(name = "microservice-list", version = "onap-1.1", schema = "microservice-list-schema.yaml")
+public class OnapServiceListCommand extends OnapHttpCommand {
+}
diff --git a/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceShowCommand.java b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceShowCommand.java
new file mode 100644
index 00000000..40cb5315
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/java/org/onap/cli/cmd/cs/msb/OnapServiceShowCommand.java
@@ -0,0 +1,24 @@
+/*
+ * 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.cs.msb;
+
+import org.onap.cli.fw.OnapCommandSchema;
+import org.onap.cli.fw.cmd.OnapHttpCommand;
+
+@OnapCommandSchema(name = "microservice-show", version = "onap-1.1", schema = "microservice-show-schema.yaml")
+public class OnapServiceShowCommand extends OnapHttpCommand {
+}
diff --git a/plugins/onap-1.1/features/msb/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand b/plugins/onap-1.1/features/msb/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand
new file mode 100644
index 00000000..527abe0c
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/resources/META-INF/services/org.onap.cli.fw.OnapCommand
@@ -0,0 +1,4 @@
+org.onap.cli.cmd.cs.msb.OnapServiceListCommand
+org.onap.cli.cmd.cs.msb.OnapServiceShowCommand
+org.onap.cli.cmd.cs.msb.OnapServiceDeleteCommand
+org.onap.cli.cmd.cs.msb.OnapServiceCreateCommand \ No newline at end of file
diff --git a/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-create-schema.yaml b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-create-schema.yaml
new file mode 100644
index 00000000..79afd2c7
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-create-schema.yaml
@@ -0,0 +1,104 @@
+open_cli_schema_version: 1.0
+name: microservice-create
+description: Register microservice into Onap
+version: onap-1.1
+service:
+ name: msb
+ version: v1
+ auth: none
+
+parameters:
+ - name: service-name
+ description: Onap service name
+ type: string
+ short_option: x
+ long_option: service-name
+ is_optional: false
+ - name: service-version
+ description: Onap service version
+ type: string
+ short_option: y
+ long_option: service-version
+ is_optional: false
+ - name: service-url
+ description: Onap service base url
+ type: url
+ short_option: r
+ long_option: service-url
+ is_optional: false
+ - name: enable-ssl
+ description: Onap service is enabled with https or not
+ type: string
+ short_option: b
+ long_option: enable-ssl
+ is_optional: true
+ default: false
+ - name: path
+ description: Onap service path
+ type: string
+ short_option: c
+ long_option: path
+ is_optional: true
+ - name: node-ip
+ description: Onap service running node IP
+ type: string
+ - name: node-port
+ description: Onap service running node port
+ type: string
+ - name: create-or-update
+ description: Onap service create or update
+ type: bool
+ default_value: true
+results:
+ direction: portrait
+ attributes:
+ - name: name
+ description: Onap service name
+ scope: short
+ type: string
+ - name: version
+ description: Onap service version
+ scope: short
+ type: string
+ - name: url
+ description: Onap service base url
+ scope: short
+ type: url
+ - name: status
+ description: Onap service status
+ scope: short
+ type: digit
+ - name: nodes
+ description: Onap service running nodes
+ scope: long
+ type: string
+ - name: enable-ssl
+ description: Onap service is enabled with https or not
+ scope: long
+ type: string
+ - name: path
+ description: Onap service path
+ scope: long
+ type: string
+http:
+ request:
+ uri: /services
+ method: POST
+ body: '{"serviceName":"${service-name}","version":"${service-version}","path":"${path}","url":"${service-url}","protocol":"REST", "enable_ssl":"${enable-ssl}", "visualRange":"1","lb_policy":"ip_hash","nodes":[{"ip":"${node-ip}","port":"${node-port}","ttl":0}]}'
+ headers:
+ queries:
+ createOrUpdate: ${create-or-update}
+ success_codes:
+ - 201
+ - 200
+ result_map:
+ name: $b{$.serviceName}
+ version: $b{$.version}
+ url: $b{$.url}
+ status: $b{$.status}
+ enable-ssl: $b{$.enable_ssl}
+ path: $b{$.path}
+ nodes: $b{$.nodes[*].ip}:$b{$.nodes[*].port}
+
+ 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/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-delete-schema.yaml b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-delete-schema.yaml
new file mode 100644
index 00000000..82eabf95
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-delete-schema.yaml
@@ -0,0 +1,46 @@
+open_cli_schema_version: 1.0
+name: microservice-delete
+description: Deletes the micro service from Onap
+version: onap-1.1
+service:
+ name: msb
+ version: v1
+ auth: none
+
+parameters:
+ - name: service-name
+ description: Onap service name
+ type: string
+ short_option: x
+ long_option: service-name
+ is_optional: false
+ - name: service-version
+ description: Onap service version
+ type: string
+ short_option: y
+ long_option: service-version
+ is_optional: false
+ - name: node-ip
+ description: Onap service running node IP
+ type: string
+ short_option: i
+ long_option: node-ip
+ is_optional: false
+ - name: node-port
+ description: Onap service running node port
+ type: string
+ short_option: r
+ long_option: node-port
+ is_optional: false
+http:
+ request:
+ uri: /services/${service-name}/version/${service-version}/nodes/${node-ip}/${node-port}
+ method: DELETE
+ success_codes:
+ - 201
+ - 200
+ - 204
+ - 500
+
+
+
diff --git a/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-list-schema.yaml b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-list-schema.yaml
new file mode 100644
index 00000000..52014c9b
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-list-schema.yaml
@@ -0,0 +1,60 @@
+open_cli_schema_version: 1.0
+name: microservice-list
+description: Lists the registetred micro services in Onap
+version: onap-1.1
+service:
+ name: msb
+ version: v1
+ auth: none
+results:
+ direction: landscape
+ attributes:
+ - name: name
+ description: Onap service name
+ scope: short
+ type: string
+ - name: version
+ description: Onap service version
+ scope: short
+ type: string
+ - name: url
+ description: Onap service base url
+ scope: short
+ type: url
+ - name: status
+ description: Onap service status
+ scope: short
+ type: digit
+ - name: nodes
+ description: Onap service running nodes
+ scope: long
+ type: json
+ - name: enable-ssl
+ description: Onap service is enabled with https or not
+ scope: long
+ type: string
+ - name: path
+ description: Onap service path
+ scope: long
+ type: string
+http:
+ request:
+ uri: /services
+ method: GET
+ success_codes:
+ - 201
+ - 200
+ result_map:
+ name: $b{$.[*].serviceName}
+ version: $b{$.[*].version}
+ url: $b{$.[*].url}
+ status: $b{$.[*].status}
+ enable-ssl: $b{$.[*].enable_ssl}
+ path: $b{$.[*].path}
+ nodes: $b{$.[*].nodes[*].ip}:$b{$.[*].nodes[*].port}
+ 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/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-show-schema.yaml b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-show-schema.yaml
new file mode 100644
index 00000000..a9e1cced
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/main/resources/open-cli-schema/microservice-show-schema.yaml
@@ -0,0 +1,73 @@
+open_cli_schema_version: 1.0
+name: microservice-show
+description: Details the registered microservice in Onap
+version: onap-1.1
+service:
+ name: msb
+ version: v1
+ auth: none
+parameters:
+ - name: service-name
+ description: Onap service name
+ type: string
+ short_option: x
+ long_option: service-name
+ is_optional: false
+ - name: service-version
+ description: Onap service version
+ type: string
+ short_option: y
+ long_option: service-version
+ is_optional: false
+results:
+ direction: portrait
+ attributes:
+ - name: name
+ description: Onap service name
+ scope: short
+ type: string
+ - name: version
+ description: Onap service version
+ scope: short
+ type: string
+ - name: url
+ description: Onap service base url
+ scope: short
+ type: url
+ - name: status
+ description: Onap service status
+ scope: short
+ type: digit
+ - name: nodes
+ description: Onap service running nodes
+ scope: long
+ type: json
+ - name: enable-ssl
+ description: Onap service is enabled with https or not
+ scope: long
+ type: string
+ - name: path
+ description: Onap service path
+ scope: long
+ type: string
+http:
+ request:
+ uri: /services/${service-name}/version/${service-version}
+ method: GET
+ success_codes:
+ - 201
+ - 200
+ result_map:
+ name: $b{$.serviceName}
+ version: $b{$.version}
+ url: $b{$.url}
+ status: $b{$.status}
+ enable-ssl: $b{$.enable_ssl}
+ path: $b{$.path}
+ nodes: $b{$.nodes[*].ip}:$b{$.nodes[*].port}
+ 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/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-create-service-sample-1.1.yaml b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-create-service-sample-1.1.yaml
new file mode 100644
index 00000000..d316f388
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-create-service-sample-1.1.yaml
@@ -0,0 +1,20 @@
+onap_cli_sample_version: 1.0
+
+name: microservice-create
+version: onap-1.1
+samples:
+ sample1:
+ name: Create a service
+ input: --service-name test-service --service-version v1 --service-url /api/test/v1 --host-url http://192.168.17.23:80 23.14.15.156 80
+ output: |
+ +----------+------------------------------------+
+ |property |value |
+ +----------+------------------------------------+
+ |name |test-service |
+ +----------+------------------------------------+
+ |version |v1 |
+ +----------+------------------------------------+
+ |url |/api/test/v1 |
+ +----------+------------------------------------+
+ |status |1 |
+ +----------+------------------------------------+ \ No newline at end of file
diff --git a/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-delete-service-sample-1.1.yaml b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-delete-service-sample-1.1.yaml
new file mode 100644
index 00000000..2aaadb22
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-delete-service-sample-1.1.yaml
@@ -0,0 +1,8 @@
+onap_cli_sample_version: 1.0
+
+name: microservice-delete
+version: onap-1.1
+samples:
+ sample1:
+ name: Delete a service
+ input: --service-name test-service --service-version v1 --host-url http://192.168.17.23:80 --node-ip 23.14.15.156 --node-port 80 \ No newline at end of file
diff --git a/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-list-service-sample-1.1.yaml b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-list-service-sample-1.1.yaml
new file mode 100644
index 00000000..178a9c85
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-list-service-sample-1.1.yaml
@@ -0,0 +1,14 @@
+onap_cli_sample_version: 1.0
+
+name: microservice-list
+version: onap-1.1
+samples:
+ sample1:
+ name: List a service
+ input: --host-url http://192.168.17.23:80
+ output: |
+ +--------------+----------+------------------------------------+--------+------------------+
+ |name |version |url |status |nodes |
+ +--------------+----------+------------------------------------+--------+------------------+
+ |test-service |v1 |/C:/Program Files/Git/api/test/v1 |1 |23.14.15.156:80 |
+ +--------------+----------+------------------------------------+--------+------------------+ \ No newline at end of file
diff --git a/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-show-service-sample-1.1.yaml b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-show-service-sample-1.1.yaml
new file mode 100644
index 00000000..abf1f110
--- /dev/null
+++ b/plugins/onap-1.1/features/msb/src/test/resources/open-cli-sample/msb-show-service-sample-1.1.yaml
@@ -0,0 +1,14 @@
+onap_cli_sample_version: 1.0
+
+name: microservice-show
+version: onap-1.1
+samples:
+ sample1:
+ name: Show a service
+ input: --service-name test-service --service-version v1 --host-url http://192.168.17.23:80
+ output: |
+ +--------------+----------+------------------------------------+--------+------------------+
+ |name |version |url |status |nodes |
+ +--------------+----------+------------------------------------+--------+------------------+
+ |test-service |v1 |/C:/Program Files/Git/api/test/v1 |1 |23.14.15.156:80 |
+ +--------------+----------+------------------------------------+--------+------------------+ \ No newline at end of file