blob: 630901e24d5846e0b40271d02529ec62b53535af [file] [log] [blame]
Ghanshyam1002a032014-03-26 20:48:10 +09001# 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
Ghanshyamdd8ae352014-03-28 09:48:38 +090015import copy
16
Ghanshyam1002a032014-03-26 20:48:10 +090017hypervisor_statistics = {
18 'status_code': [200],
19 'response_body': {
20 'type': 'object',
21 'properties': {
22 'hypervisor_statistics': {
23 'type': 'object',
24 'properties': {
25 'count': {'type': 'integer'},
26 'current_workload': {'type': 'integer'},
27 'disk_available_least': {'type': 'integer'},
28 'free_disk_gb': {'type': 'integer'},
29 'free_ram_mb': {'type': 'integer'},
30 'local_gb': {'type': 'integer'},
31 'local_gb_used': {'type': 'integer'},
32 'memory_mb': {'type': 'integer'},
33 'memory_mb_used': {'type': 'integer'},
34 'running_vms': {'type': 'integer'},
35 'vcpus': {'type': 'integer'},
36 'vcpus_used': {'type': 'integer'}
37 },
38 'required': ['count', 'current_workload',
39 'disk_available_least', 'free_disk_gb',
40 'free_ram_mb', 'local_gb', 'local_gb_used',
41 'memory_mb', 'memory_mb_used', 'running_vms',
42 'vcpus', 'vcpus_used']
43 }
44 },
45 'required': ['hypervisor_statistics']
46 }
47}
Ghanshyam028044c2014-03-26 19:20:28 +090048
49common_list_hypervisors_detail = {
50 'status_code': [200],
51 'response_body': {
52 'type': 'object',
53 'properties': {
54 'hypervisors': {
55 'type': 'array',
56 'items': {
57 'type': 'object',
58 'properties': {
59 'cpu_info': {'type': 'string'},
60 'current_workload': {'type': 'integer'},
61 'disk_available_least': {'type': ['integer', 'null']},
62 'host_ip': {
63 'type': 'string',
64 'format': 'ip-address'
65 },
66 'free_disk_gb': {'type': 'integer'},
67 'free_ram_mb': {'type': 'integer'},
68 'hypervisor_hostname': {'type': 'string'},
69 'hypervisor_type': {'type': 'string'},
70 'hypervisor_version': {'type': 'integer'},
71 'id': {'type': ['integer', 'string']},
72 'local_gb': {'type': 'integer'},
73 'local_gb_used': {'type': 'integer'},
74 'memory_mb': {'type': 'integer'},
75 'memory_mb_used': {'type': 'integer'},
76 'running_vms': {'type': 'integer'},
77 'service': {
78 'type': 'object',
79 'properties': {
80 'host': {'type': 'string'},
81 'id': {'type': ['integer', 'string']}
82 },
83 'required': ['host', 'id']
84 },
85 'vcpus': {'type': 'integer'},
86 'vcpus_used': {'type': 'integer'}
87 },
88 'required': ['cpu_info', 'current_workload',
89 'disk_available_least', 'host_ip',
90 'free_disk_gb', 'free_ram_mb',
91 'hypervisor_hostname', 'hypervisor_type',
92 'hypervisor_version', 'id', 'local_gb',
93 'local_gb_used', 'memory_mb',
94 'memory_mb_used', 'running_vms', 'service',
95 'vcpus', 'vcpus_used']
96 }
97 }
98 },
99 'required': ['hypervisors']
100 }
101}
Ghanshyam3495c4f2014-03-24 09:22:57 +0900102
103common_show_hypervisor = {
104 'status_code': [200],
105 'response_body': {
106 'type': 'object',
107 'properties': {
108 'hypervisor': {
109 'type': 'object',
110 'properties': {
111 'cpu_info': {'type': 'string'},
112 'current_workload': {'type': 'integer'},
113 'disk_available_least': {'type': 'integer'},
114 'host_ip': {
115 'type': 'string',
116 'format': 'ip-address'
117 },
118 'free_disk_gb': {'type': 'integer'},
119 'free_ram_mb': {'type': 'integer'},
120 'hypervisor_hostname': {'type': 'string'},
121 'hypervisor_type': {'type': 'string'},
122 'hypervisor_version': {'type': 'integer'},
123 'id': {'type': ['integer', 'string']},
124 'local_gb': {'type': 'integer'},
125 'local_gb_used': {'type': 'integer'},
126 'memory_mb': {'type': 'integer'},
127 'memory_mb_used': {'type': 'integer'},
128 'running_vms': {'type': 'integer'},
129 'service': {
130 'type': 'object',
131 'properties': {
132 'host': {'type': 'string'},
133 'id': {'type': ['integer', 'string']}
134 },
135 'required': ['host', 'id']
136 },
137 'vcpus': {'type': 'integer'},
138 'vcpus_used': {'type': 'integer'}
139 },
140 'required': ['cpu_info', 'current_workload',
141 'disk_available_least', 'host_ip',
142 'free_disk_gb', 'free_ram_mb',
143 'hypervisor_hostname', 'hypervisor_type',
144 'hypervisor_version', 'id', 'local_gb',
145 'local_gb_used', 'memory_mb', 'memory_mb_used',
146 'running_vms', 'service', 'vcpus', 'vcpus_used']
147 }
148 },
149 'required': ['hypervisor']
150 }
151}
Ghanshyam8676fa62014-03-26 20:00:37 +0900152
153common_hypervisors_detail = {
154 'status_code': [200],
155 'response_body': {
156 'type': 'object',
157 'properties': {
158 'hypervisors': {
159 'type': 'array',
160 'items': {
161 'type': 'object',
162 'properties': {
163 'id': {'type': ['integer', 'string']},
164 'hypervisor_hostname': {'type': 'string'}
165 },
166 'required': ['id', 'hypervisor_hostname']
167 }
168 }
169 },
170 'required': ['hypervisors']
171 }
172}
173
174common_hypervisors_info = {
175 'status_code': [200],
176 'response_body': {
177 'type': 'object',
178 'properties': {
179 'hypervisor': {
180 'type': 'object',
181 'properties': {
182 'id': {'type': ['integer', 'string']},
183 'hypervisor_hostname': {'type': 'string'},
184 },
185 'required': ['id', 'hypervisor_hostname']
186 }
187 },
188 'required': ['hypervisor']
189 }
190}
Ghanshyamdd8ae352014-03-28 09:48:38 +0900191
192
193hypervisor_uptime = copy.deepcopy(common_hypervisors_info)
194hypervisor_uptime['response_body']['properties']['hypervisor'][
195 'properties']['uptime'] = {'type': 'string'}
196hypervisor_uptime['response_body']['properties']['hypervisor'][
197 'required'] = ['id', 'hypervisor_hostname', 'uptime']