aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/msb/src/main/resources/onap-cli-schema/microservice-create-schema.yaml
blob: 1d0053fcd39abf6bebfebd56a80c30573da8773a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
open_cli_schema_version: 1.0
name: microservice-create
description: Register microservice into Onap
version: onap-1.1
service:
  name: msb
  version: v1

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: 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: long
    - name: nodes
      description: Onap service running nodes
      scope: long
      type: string
    - name: location
      description: Onap 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"}'