blob: 6dd44cd0ea8e03a434aa6b05e7e2d79a74e24c56 [file] [log] [blame]
Yuiko Takadac3aa1102014-03-19 15:19:19 +00001# Copyright 2014 NEC Corporation. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
15list_security_groups = {
16 'status_code': [200],
17 'response_body': {
18 'type': 'object',
19 'properties': {
20 'security_groups': {
21 'type': 'array',
22 'items': {
23 'type': 'object',
24 'properties': {
25 'id': {'type': ['integer', 'string']},
26 'name': {'type': 'string'},
27 'tenant_id': {'type': 'string'},
28 'rules': {'type': 'array'},
29 'description': {'type': 'string'},
30 },
31 'required': ['id', 'name', 'tenant_id', 'rules',
32 'description'],
33 }
34 }
35 },
36 'required': ['security_groups']
37 }
38}
Ghanshyamf79c7992014-04-01 12:20:12 +090039
40create_security_group_rule = {
41 'status_code': [200],
42 'response_body': {
43 'type': 'object',
44 'properties': {
45 'security_group_rule': {
46 'type': 'object',
47 'properties': {
48 'from_port': {'type': 'integer'},
49 'to_port': {'type': 'integer'},
50 'group': {'type': 'object'},
51 'ip_protocol': {'type': 'string'},
52 # 'parent_group_id' can be UUID so defining it
53 # as 'string' also.
54 'parent_group_id': {'type': ['integer', 'string']},
55 'id': {'type': ['integer', 'string']},
56 'ip_range': {
57 'type': 'object',
58 'properties': {
59 'cidr': {'type': 'string'}
60 }
61 # When optional argument is provided in request body
62 # like 'group_id' then, attribute 'cidr' does not
63 # comes in response body. So it is not 'required'.
64 }
65 },
66 'required': ['from_port', 'to_port', 'group', 'ip_protocol',
67 'parent_group_id', 'id', 'ip_range']
68 }
69 },
70 'required': ['security_group_rule']
71 }
72}
73
74delete_security_group_rule = {
75 'status_code': [202]
76}