Revision ef2e6c9f kamaki/clients/compute/__init__.py
b/kamaki/clients/compute/__init__.py | ||
---|---|---|
175 | 175 |
r = self.servers_delete(server_id) |
176 | 176 |
return r.headers |
177 | 177 |
|
178 |
def change_admin_password(self, server_id, new_password): |
|
179 |
""" |
|
180 |
:param server_id: (int) |
|
181 |
|
|
182 |
:param new_password: (str) |
|
183 |
""" |
|
184 |
req = {"changePassword": {"adminPass": new_password}} |
|
185 |
r = self.servers_action_post(server_id, json_data=req) |
|
186 |
return r.headers |
|
187 |
|
|
188 |
def rebuild_server(self, server_id, response_headers=dict(location=None)): |
|
189 |
"""OS""" |
|
190 |
server = self.get_server_details(server_id) |
|
191 |
r = self.servers_action_post( |
|
192 |
server_id, json_data=dict(rebuild=server['server'])) |
|
193 |
for k, v in response_headers.items(): |
|
194 |
response_headers[k] = r.headers.get(k, v) |
|
195 |
return r.json['server'] |
|
196 |
|
|
178 | 197 |
def reboot_server(self, server_id, hard=False): |
179 | 198 |
""" |
180 | 199 |
:param server_id: integer (str or int) |
181 | 200 |
|
182 | 201 |
:param hard: perform a hard reboot if true, soft reboot otherwise |
183 | 202 |
""" |
184 |
boot_type = 'HARD' if hard else 'SOFT' |
|
185 |
req = {'reboot': {'type': boot_type}} |
|
186 |
r = self.servers_post(server_id, 'action', json_data=req) |
|
203 |
req = {'reboot': {'type': 'HARD' if hard else 'SOFT'}} |
|
204 |
r = self.servers_action_post(server_id, json_data=req) |
|
187 | 205 |
return r.headers |
188 | 206 |
|
189 | 207 |
def resize_server(self, server_id, flavor_id): |
... | ... | |
195 | 213 |
:returns: (dict) request headers |
196 | 214 |
""" |
197 | 215 |
req = {'resize': {'flavorRef': flavor_id}} |
198 |
r = self.servers_post(server_id, 'action', json_data=req) |
|
216 |
r = self.servers_action_post(server_id, json_data=req) |
|
217 |
return r.headers |
|
218 |
|
|
219 |
def confirm_resize_server(self, server_id): |
|
220 |
"""OS""" |
|
221 |
r = self.servers_action_post( |
|
222 |
server_id, json_data=dict(confirmResize=None)) |
|
223 |
return r.headers |
|
224 |
|
|
225 |
def revert_resize_server(self, server_id): |
|
226 |
"""OS""" |
|
227 |
r = self.servers_action_post( |
|
228 |
server_id, json_data=dict(revertResize=None)) |
|
229 |
return r.headers |
|
230 |
|
|
231 |
def create_server_image(self, server_id, image_name, **metadata): |
|
232 |
"""OpenStack method for taking snapshots""" |
|
233 |
req = dict(createImage=dict(name=image_name, metadata=metadata)) |
|
234 |
r = self.servers_action_post(server_id, json_data=req) |
|
235 |
return r.headers['location'] |
|
236 |
|
|
237 |
def start_server(self, server_id): |
|
238 |
"""OS Extentions""" |
|
239 |
req = {'os-start': None} |
|
240 |
r = self.servers_action_post(server_id, json_data=req, success=202) |
|
241 |
return r.headers |
|
242 |
|
|
243 |
def shutdown_server(self, server_id): |
|
244 |
"""OS Extentions""" |
|
245 |
req = {'os-stop': None} |
|
246 |
r = self.servers_action_post(server_id, json_data=req, success=202) |
|
199 | 247 |
return r.headers |
200 | 248 |
|
201 | 249 |
def get_server_metadata(self, server_id, key='', response_headers=dict( |
Also available in: Unified diff