# Copyright 2018 Huawei Technologies Co., Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. open_cli_schema_version: 1.0 name: sample-create-http description: Register microservice into Onap info: product: open-cli service: test type: cmd author: Kanagaraj Manickam kanagaraj.manickam@huawei.com parameters: - name: service-name description: Oclip service name type: string short_option: x long_option: service-name is_optional: false - name: service-version description: Oclip service version type: string short_option: y long_option: service-version is_optional: false - name: service-url description: Oclip service base url type: url short_option: r long_option: service-url is_optional: false - name: status description: Oclip service status type: digit short_option: z long_option: service-status is_optional: true default_value: 1 - name: node-ip description: Oclip service running node IP type: string - name: node-port description: Oclip service running node port type: string - name: create-or-update description: Oclip service create or update type: bool default_value: true results: direction: portrait attributes: - name: name description: Oclip service name scope: short type: string - name: version description: Oclip service version scope: short type: string - name: url description: Oclip service base url scope: short type: url - name: status description: Oclip service status scope: short type: digit - name: nodes description: Oclip service running nodes scope: long type: string - name: location description: Oclip service location scope: long type: url http: request: uri: /services method: POST body: '{"serviceName":"${service-name}","version":"${service-version}","url":"${service-url}","protocol":"REST","visualRange":"1","lb_policy":"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} nodes: $b{$.nodes[*].ip}:$b{$.nodes[*].port} location: $h{Location} 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"}