diff options
| author | Brian Waldon <brian.waldon@rackspace.com> | 2011-08-23 17:31:19 -0400 |
|---|---|---|
| committer | Brian Waldon <brian.waldon@rackspace.com> | 2011-08-23 17:31:19 -0400 |
| commit | 360dbeebadb76b3628b2cfbd8b3c41e77581b24c (patch) | |
| tree | 02cb5a32f95f717c880e1abeef5e140e2ed53e46 /nova/api | |
| parent | e23eb5aa5c9810f68f3818cd1119e4993b99a297 (diff) | |
| download | nova-360dbeebadb76b3628b2cfbd8b3c41e77581b24c.tar.gz nova-360dbeebadb76b3628b2cfbd8b3c41e77581b24c.tar.xz nova-360dbeebadb76b3628b2cfbd8b3c41e77581b24c.zip | |
rebuilds are functional again
Diffstat (limited to 'nova/api')
| -rw-r--r-- | nova/api/openstack/servers.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/nova/api/openstack/servers.py b/nova/api/openstack/servers.py index 553357404..fa499b192 100644 --- a/nova/api/openstack/servers.py +++ b/nova/api/openstack/servers.py @@ -604,8 +604,10 @@ class ControllerV10(Controller): LOG.debug(msg) raise exc.HTTPBadRequest(explanation=msg) + password = utils.generate_password(16) + try: - self.compute_api.rebuild(context, instance_id, image_id) + self.compute_api.rebuild(context, instance_id, image_id, password) except exception.BuildInProgress: msg = _("Instance %s is currently being rebuilt.") % instance_id LOG.debug(msg) @@ -741,15 +743,19 @@ class ControllerV11(Controller): self._validate_metadata(metadata) self._decode_personalities(personalities) + password = info["rebuild"].get("adminPass", + utils.generate_password(16)) + try: - self.compute_api.rebuild(context, instance_id, image_href, name, - metadata, personalities) + self.compute_api.rebuild(context, instance_id, image_href, + password, name=name, metadata=metadata, + files_to_inject=personalities) except exception.BuildInProgress: msg = _("Instance %s is currently being rebuilt.") % instance_id LOG.debug(msg) raise exc.HTTPConflict(explanation=msg) - return webob.Response(status_int=202) + return webob.Response(status_int=202, headers={'x-nova-password':password}) @common.check_snapshots_enabled def _action_create_image(self, input_dict, req, instance_id): |
