summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.mailmap1
-rw-r--r--doc/source/conf.py2
-rw-r--r--doc/source/index.rst5
-rw-r--r--etc/nova/nova.conf.sample21
-rw-r--r--nova/api/openstack/__init__.py55
-rw-r--r--nova/api/openstack/compute/contrib/fixed_ips.py7
-rw-r--r--nova/api/openstack/compute/contrib/floating_ips.py4
-rw-r--r--nova/api/openstack/compute/plugins/v3/consoles.py144
-rw-r--r--nova/api/openstack/compute/plugins/v3/ips.py116
-rw-r--r--nova/api/openstack/compute/plugins/v3/servers.py2
-rw-r--r--nova/cells/manager.py10
-rw-r--r--nova/cells/messaging.py13
-rw-r--r--nova/cells/rpcapi.py14
-rw-r--r--nova/cells/scheduler.py153
-rw-r--r--nova/cells/state.py2
-rw-r--r--nova/compute/api.py253
-rw-r--r--nova/compute/cells_api.py16
-rwxr-xr-xnova/compute/manager.py73
-rw-r--r--nova/conductor/api.py22
-rw-r--r--nova/conductor/manager.py15
-rw-r--r--nova/conductor/rpcapi.py14
-rw-r--r--nova/db/api.py4
-rw-r--r--nova/db/sqlalchemy/api.py92
-rw-r--r--nova/filters.py2
-rw-r--r--nova/locale/bg_BG/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/bs/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ca/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/cs/LC_MESSAGES/nova.po775
-rw-r--r--nova/locale/da/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/de/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/en_AU/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/en_GB/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/en_US/LC_MESSAGES/nova.po775
-rw-r--r--nova/locale/es/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/fi_FI/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/fr/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/hr/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/hu/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/id/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/it/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/it_IT/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ja/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ka_GE/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ko/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ko_KR/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ms/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/nb/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/nl_NL/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/nova.pot773
-rw-r--r--nova/locale/pt/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/pt_BR/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/ru/LC_MESSAGES/nova.po775
-rw-r--r--nova/locale/ru_RU/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/sw_KE/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/tl/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/tr/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/tr_TR/LC_MESSAGES/nova.po775
-rw-r--r--nova/locale/uk/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/vi_VN/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/zh_CN/LC_MESSAGES/nova.po775
-rw-r--r--nova/locale/zh_HK/LC_MESSAGES/nova.po771
-rw-r--r--nova/locale/zh_TW/LC_MESSAGES/nova.po771
-rw-r--r--nova/network/linux_net.py2
-rw-r--r--nova/objects/base.py6
-rw-r--r--nova/objects/instance.py6
-rw-r--r--nova/objects/utils.py8
-rw-r--r--nova/scheduler/utils.py33
-rw-r--r--nova/storage/linuxscsi.py22
-rw-r--r--nova/test.py11
-rw-r--r--nova/tests/api/ec2/test_cinder_cloud.py2
-rw-r--r--nova/tests/api/ec2/test_cloud.py3
-rw-r--r--nova/tests/api/openstack/compute/contrib/test_fixed_ips.py19
-rw-r--r--nova/tests/api/openstack/compute/plugins/v3/test_consoles.py295
-rw-r--r--nova/tests/api/openstack/compute/plugins/v3/test_servers.py5813
-rw-r--r--nova/tests/api/openstack/compute/test_v3_extensions.py72
-rw-r--r--nova/tests/api/openstack/fakes.py12
-rw-r--r--nova/tests/cells/test_cells_manager.py9
-rw-r--r--nova/tests/cells/test_cells_messaging.py10
-rw-r--r--nova/tests/cells/test_cells_rpcapi.py15
-rw-r--r--nova/tests/cells/test_cells_scheduler.py260
-rw-r--r--nova/tests/compute/test_compute.py295
-rw-r--r--nova/tests/compute/test_compute_utils.py1
-rw-r--r--nova/tests/conductor/test_conductor.py36
-rw-r--r--nova/tests/console/test_console.py1
-rw-r--r--nova/tests/fake_instance.py40
-rw-r--r--nova/tests/fake_utils.py28
-rw-r--r--nova/tests/integrated/test_api_samples.py3
-rw-r--r--nova/tests/network/test_manager.py2
-rw-r--r--nova/tests/objects/test_objects.py8
-rw-r--r--nova/tests/scheduler/fakes.py1
-rw-r--r--nova/tests/test_db_api.py54
-rw-r--r--nova/tests/test_linuxscsi.py61
-rw-r--r--nova/tests/virt/hyperv/db_fakes.py2
-rw-r--r--nova/tests/virt/hyperv/test_hypervapi.py31
-rw-r--r--nova/tests/virt/libvirt/fakelibvirt.py4
-rw-r--r--nova/tests/virt/libvirt/test_libvirt.py47
-rw-r--r--nova/tests/virt/powervm/test_powervm.py32
-rw-r--r--nova/tests/virt/vmwareapi/db_fakes.py2
-rw-r--r--nova/tests/virt/vmwareapi/test_vmwareapi.py100
-rw-r--r--nova/tests/virt/xenapi/test_xenapi.py30
-rw-r--r--nova/utils.py16
-rw-r--r--nova/virt/baremetal/ipmi.py2
-rwxr-xr-xnova/virt/driver.py26
-rwxr-xr-xnova/virt/fake.py4
-rwxr-xr-xnova/virt/hyperv/driver.py8
-rw-r--r--nova/virt/hyperv/migrationops.py10
-rwxr-xr-xnova/virt/libvirt/driver.py39
-rwxr-xr-xnova/virt/powervm/driver.py13
-rw-r--r--nova/virt/powervm/operator.py11
-rwxr-xr-xnova/virt/vmwareapi/driver.py9
-rw-r--r--nova/virt/vmwareapi/vmops.py13
-rwxr-xr-xnova/virt/xenapi/driver.py11
-rw-r--r--nova/virt/xenapi/vmops.py17
-rw-r--r--setup.cfg2
-rw-r--r--tox.ini2
115 files changed, 23654 insertions, 14265 deletions
diff --git a/.mailmap b/.mailmap
index 0bc46f038..314596aa1 100644
--- a/.mailmap
+++ b/.mailmap
@@ -86,6 +86,7 @@ Dan Wendlandt <dan@nicira.com> danwent <dan@nicira.com>
Dan Wendlandt <dan@nicira.com> danwent <danwent@dan-xs3-cs>
Dan Wendlandt <dan@nicira.com> danwent@gmail.com <>
Dan Wendlandt <dan@nicira.com> danwent@gmail.com <dan@nicira.com>
+Davanum Srinivas <dims@linux.vnet.ibm.com> Davanum Srinivas <davanum@gmail.com>
Édouard Thuleau <edouard.thuleau@orange.com> Thuleau Édouard <thuleau@gmail.com>
Jake Dahn <jake@ansolabs.com> jakedahn <jake@ansolabs.com>
Jason Koelker <jason@koelker.net> Jason Kölker <jason@koelker.net>
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 4fa13e045..5e7dac52d 100644
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -250,7 +250,7 @@ htmlhelp_basename = 'novadoc'
# [howto/manual]).
latex_documents = [
('index', 'Nova.tex', u'Nova Documentation',
- u'Anso Labs, LLC', 'manual'),
+ u'OpenStack Foundation', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
diff --git a/doc/source/index.rst b/doc/source/index.rst
index c8befb415..077fc2920 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -53,11 +53,6 @@ API Extensions
Go to http://api.openstack.org for information about Compute API extensions.
-Outstanding Documentation Tasks
-===============================
-
-.. todolist::
-
Indices and tables
==================
diff --git a/etc/nova/nova.conf.sample b/etc/nova/nova.conf.sample
index 2ba888a86..29778a556 100644
--- a/etc/nova/nova.conf.sample
+++ b/etc/nova/nova.conf.sample
@@ -2872,4 +2872,25 @@
#keymap=en-us
+[osapi_v3]
+
+#
+# Options defined in nova.api.openstack
+#
+
+# Whether the V3 API is enabled or not
+#enabled=False
+
+# If the list is not empty then a v3 API extension
+# will only be loaded if it exists in this list.
+# Specify the extension aliases here
+#extensions_whitelist=
+
+# A list of v3 API extensions to never load.
+# Specify the extension aliases here.
+# Note that if an extension is in both the blacklist and
+# and whitelist then it will not be loaded
+#extensions_blacklist=
+
+
# Total option count: 584
diff --git a/nova/api/openstack/__init__.py b/nova/api/openstack/__init__.py
index 51a8785e2..96b9f5781 100644
--- a/nova/api/openstack/__init__.py
+++ b/nova/api/openstack/__init__.py
@@ -20,6 +20,7 @@
WSGI middleware for OpenStack API controllers.
"""
+from oslo.config import cfg
import routes
import stevedore
import webob.dec
@@ -33,7 +34,26 @@ from nova import utils
from nova import wsgi as base_wsgi
+api_opts = [
+ cfg.BoolOpt('enabled',
+ default=False,
+ help='Whether the V3 API is enabled or not'),
+ cfg.ListOpt('extensions_blacklist',
+ default=[],
+ help='A list of v3 API extensions to never load. '
+ 'Specify the extension aliases here.'),
+ cfg.ListOpt('extensions_whitelist',
+ default=[],
+ help='If the list is not empty then a v3 API extension '
+ 'will only be loaded if it exists in this list. Specify '
+ 'the extension aliases here.')
+]
+api_opts_group = cfg.OptGroup(name='osapi_v3', title='API v3 Options')
+
LOG = logging.getLogger(__name__)
+CONF = cfg.CONF
+CONF.register_group(api_opts_group)
+CONF.register_opts(api_opts, api_opts_group)
class FaultWrapper(base_wsgi.Middleware):
@@ -230,11 +250,44 @@ class APIRouterV3(base_wsgi.Router):
if (self.init_only is None or ext.obj.alias in
self.init_only) and isinstance(ext.obj,
extensions.V3APIExtensionBase):
- return self._register_extension(ext)
+
+ # Check whitelist is either empty or if not then the extension
+ # is in the whitelist
+ if (not CONF.osapi_v3.extensions_whitelist or
+ ext.obj.alias in CONF.osapi_v3.extensions_whitelist):
+
+ # Check the extension is not in the blacklist
+ if ext.obj.alias not in CONF.osapi_v3.extensions_blacklist:
+ return self._register_extension(ext)
+ else:
+ LOG.warning(_("Not loading %s because it is "
+ "in the blacklist"), ext.obj.alias)
+ return False
+ else:
+ LOG.warning(
+ _("Not loading %s because it is not in the whitelist"),
+ ext.obj.alias)
+ return False
else:
return False
+ if not CONF.osapi_v3.enabled:
+ LOG.warning("V3 API has been disabled by configuration")
+ return
+
self.init_only = init_only
+ LOG.debug(_("v3 API Extension Blacklist: %s"),
+ CONF.osapi_v3.extensions_blacklist)
+ LOG.debug(_("v3 API Extension Whitelist: %s"),
+ CONF.osapi_v3.extensions_whitelist)
+
+ in_blacklist_and_whitelist = set(
+ CONF.osapi_v3.extensions_whitelist).intersection(
+ CONF.osapi_v3.extensions_blacklist)
+ if len(in_blacklist_and_whitelist) != 0:
+ LOG.warning(_("Extensions in both blacklist and whitelist: %s"),
+ list(in_blacklist_and_whitelist))
+
self.api_extension_manager = stevedore.enabled.EnabledExtensionManager(
namespace=self.API_EXTENSION_NAMESPACE,
check_func=_check_load_extension,
diff --git a/nova/api/openstack/compute/contrib/fixed_ips.py b/nova/api/openstack/compute/contrib/fixed_ips.py
index 8c7e4f7d3..b474b685d 100644
--- a/nova/api/openstack/compute/contrib/fixed_ips.py
+++ b/nova/api/openstack/compute/contrib/fixed_ips.py
@@ -31,7 +31,8 @@ class FixedIPController(object):
try:
fixed_ip = db.fixed_ip_get_by_address_detailed(context, id)
- except exception.FixedIpNotFoundForAddress as ex:
+ except (exception.FixedIpNotFoundForAddress,
+ exception.FixedIpInvalid) as ex:
raise webob.exc.HTTPNotFound(explanation=ex.format_message())
fixed_ip_info = {"fixed_ip": {}}
@@ -54,6 +55,7 @@ class FixedIPController(object):
def action(self, req, id, body):
context = req.environ['nova.context']
authorize(context)
+
if 'reserve' in body:
return self._set_reserved(context, id, True)
elif 'unreserve' in body:
@@ -67,7 +69,8 @@ class FixedIPController(object):
fixed_ip = db.fixed_ip_get_by_address(context, address)
db.fixed_ip_update(context, fixed_ip['address'],
{'reserved': reserved})
- except exception.FixedIpNotFoundForAddress:
+ except (exception.FixedIpNotFoundForAddress,
+ exception.FixedIpInvalid) as ex:
msg = _("Fixed IP %s not found") % address
raise webob.exc.HTTPNotFound(explanation=msg)
diff --git a/nova/api/openstack/compute/contrib/floating_ips.py b/nova/api/openstack/compute/contrib/floating_ips.py
index a3d03e8de..284a211cd 100644
--- a/nova/api/openstack/compute/contrib/floating_ips.py
+++ b/nova/api/openstack/compute/contrib/floating_ips.py
@@ -125,7 +125,7 @@ class FloatingIPController(object):
try:
floating_ip = self.network_api.get_floating_ip(context, id)
- except exception.NotFound:
+ except (exception.NotFound, exception.InvalidID):
msg = _("Floating ip not found for id %s") % id
raise webob.exc.HTTPNotFound(explanation=msg)
@@ -173,7 +173,7 @@ class FloatingIPController(object):
# get the floating ip object
try:
floating_ip = self.network_api.get_floating_ip(context, id)
- except exception.NotFound:
+ except (exception.NotFound, exception.InvalidID):
msg = _("Floating ip not found for id %s") % id
raise webob.exc.HTTPNotFound(explanation=msg)
address = floating_ip['address']
diff --git a/nova/api/openstack/compute/plugins/v3/consoles.py b/nova/api/openstack/compute/plugins/v3/consoles.py
new file mode 100644
index 000000000..d99395652
--- /dev/null
+++ b/nova/api/openstack/compute/plugins/v3/consoles.py
@@ -0,0 +1,144 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2010 OpenStack Foundation
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import webob
+from webob import exc
+
+from nova.api.openstack import extensions
+from nova.api.openstack import wsgi
+from nova.api.openstack import xmlutil
+from nova.console import api as console_api
+from nova import exception
+
+
+def _translate_keys(cons):
+ """Coerces a console instance into proper dictionary format."""
+ pool = cons['pool']
+ info = {'id': cons['id'],
+ 'console_type': pool['console_type']}
+ return dict(console=info)
+
+
+def _translate_detail_keys(cons):
+ """Coerces a console instance into proper dictionary format with detail."""
+ pool = cons['pool']
+ info = {'id': cons['id'],
+ 'console_type': pool['console_type'],
+ 'password': cons['password'],
+ 'instance_name': cons['instance_name'],
+ 'port': cons['port'],
+ 'host': pool['public_hostname']}
+ return dict(console=info)
+
+
+class ConsoleTemplate(xmlutil.TemplateBuilder):
+ def construct(self):
+ root = xmlutil.TemplateElement('console', selector='console')
+
+ id_elem = xmlutil.SubTemplateElement(root, 'id', selector='id')
+ id_elem.text = xmlutil.Selector()
+
+ port_elem = xmlutil.SubTemplateElement(root, 'port', selector='port')
+ port_elem.text = xmlutil.Selector()
+
+ host_elem = xmlutil.SubTemplateElement(root, 'host', selector='host')
+ host_elem.text = xmlutil.Selector()
+
+ passwd_elem = xmlutil.SubTemplateElement(root, 'password',
+ selector='password')
+ passwd_elem.text = xmlutil.Selector()
+
+ constype_elem = xmlutil.SubTemplateElement(root, 'console_type',
+ selector='console_type')
+ constype_elem.text = xmlutil.Selector()
+
+ return xmlutil.MasterTemplate(root, 1)
+
+
+class ConsolesTemplate(xmlutil.TemplateBuilder):
+ def construct(self):
+ root = xmlutil.TemplateElement('consoles')
+ console = xmlutil.SubTemplateElement(root, 'console',
+ selector='consoles')
+ console.append(ConsoleTemplate())
+
+ return xmlutil.MasterTemplate(root, 1)
+
+
+class ConsolesController(object):
+ """The Consoles controller for the OpenStack API."""
+
+ def __init__(self):
+ self.console_api = console_api.API()
+
+ @wsgi.serializers(xml=ConsolesTemplate)
+ def index(self, req, server_id):
+ """Returns a list of consoles for this instance."""
+ consoles = self.console_api.get_consoles(
+ req.environ['nova.context'],
+ server_id)
+ return dict(consoles=[_translate_keys(console)
+ for console in consoles])
+
+ def create(self, req, server_id):
+ """Creates a new console."""
+ self.console_api.create_console(
+ req.environ['nova.context'], server_id)
+
+ @wsgi.serializers(xml=ConsoleTemplate)
+ def show(self, req, server_id, id):
+ """Shows in-depth information on a specific console."""
+ try:
+ console = self.console_api.get_console(
+ req.environ['nova.context'],
+ server_id,
+ int(id))
+ except exception.NotFound:
+ raise exc.HTTPNotFound()
+ return _translate_detail_keys(console)
+
+ def delete(self, req, server_id, id):
+ """Deletes a console."""
+ try:
+ self.console_api.delete_console(req.environ['nova.context'],
+ server_id,
+ int(id))
+ except exception.NotFound:
+ raise exc.HTTPNotFound()
+ return webob.Response(status_int=202)
+
+
+class Consoles(extensions.V3APIExtensionBase):
+ """Consoles."""
+
+ name = "Consoles"
+ alias = "consoles"
+ namespace = "http://docs.openstack.org/compute/core/consoles/v3"
+ version = 1
+
+ def get_resources(self):
+ parent = {'member_name': 'server',
+ 'collection_name': 'servers'}
+ resources = [
+ extensions.ResourceExtension(
+ 'consoles', ConsolesController(), parent=parent,
+ member_name='console')]
+
+ return resources
+
+ def get_controller_extensions(self):
+ return []
diff --git a/nova/api/openstack/compute/plugins/v3/ips.py b/nova/api/openstack/compute/plugins/v3/ips.py
new file mode 100644
index 000000000..2d9a4891d
--- /dev/null
+++ b/nova/api/openstack/compute/plugins/v3/ips.py
@@ -0,0 +1,116 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2011 OpenStack Foundation
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+from webob import exc
+
+import nova
+from nova.api.openstack import common
+from nova.api.openstack.compute.views import addresses as view_addresses
+from nova.api.openstack import extensions
+from nova.api.openstack import wsgi
+from nova.api.openstack import xmlutil
+
+
+def make_network(elem):
+ elem.set('id', 0)
+
+ ip = xmlutil.SubTemplateElement(elem, 'ip', selector=1)
+ ip.set('version')
+ ip.set('addr')
+
+
+network_nsmap = {None: xmlutil.XMLNS_V11}
+
+
+class NetworkTemplate(xmlutil.TemplateBuilder):
+ def construct(self):
+ sel = xmlutil.Selector(xmlutil.get_items, 0)
+ root = xmlutil.TemplateElement('network', selector=sel)
+ make_network(root)
+ return xmlutil.MasterTemplate(root, 1, nsmap=network_nsmap)
+
+
+class AddressesTemplate(xmlutil.TemplateBuilder):
+ def construct(self):
+ root = xmlutil.TemplateElement('addresses', selector='addresses')
+ elem = xmlutil.SubTemplateElement(root, 'network',
+ selector=xmlutil.get_items)
+ make_network(elem)
+ return xmlutil.MasterTemplate(root, 1, nsmap=network_nsmap)
+
+
+class IPsController(wsgi.Controller):
+ """The servers addresses API controller for the OpenStack API."""
+
+ _view_builder_class = view_addresses.ViewBuilder
+
+ def __init__(self, **kwargs):
+ super(IPsController, self).__init__(**kwargs)
+ self._compute_api = nova.compute.API()
+
+ def _get_instance(self, context, server_id):
+ try:
+ instance = self._compute_api.get(context, server_id)
+ except nova.exception.NotFound:
+ msg = _("Instance does not exist")
+ raise exc.HTTPNotFound(explanation=msg)
+ return instance
+
+ def create(self, req, server_id, body):
+ raise exc.HTTPNotImplemented()
+
+ def delete(self, req, server_id, id):
+ raise exc.HTTPNotImplemented()
+
+ @wsgi.serializers(xml=AddressesTemplate)
+ def index(self, req, server_id):
+ context = req.environ["nova.context"]
+ instance = self._get_instance(context, server_id)
+ networks = common.get_networks_for_instance(context, instance)
+ return self._view_builder.index(networks)
+
+ @wsgi.serializers(xml=NetworkTemplate)
+ def show(self, req, server_id, id):
+ context = req.environ["nova.context"]
+ instance = self._get_instance(context, server_id)
+ networks = common.get_networks_for_instance(context, instance)
+ if id not in networks:
+ msg = _("Instance is not a member of specified network")
+ raise exc.HTTPNotFound(explanation=msg)
+
+ return self._view_builder.show(networks[id], id)
+
+
+class IPs(extensions.V3APIExtensionBase):
+ """Server addresses."""
+
+ name = "ips"
+ alias = "ips"
+ namespace = "http://docs.openstack.org/compute/core/ips/v3"
+ version = 1
+
+ def get_resources(self):
+ parent = {'member_name': 'server',
+ 'collection_name': 'servers'}
+ resources = [
+ extensions.ResourceExtension(
+ 'ips', IPsController(), parent=parent, member_name='ip')]
+
+ return resources
+
+ def get_controller_extensions(self):
+ return []
diff --git a/nova/api/openstack/compute/plugins/v3/servers.py b/nova/api/openstack/compute/plugins/v3/servers.py
index 2475af0e4..d9b2d4a3b 100644
--- a/nova/api/openstack/compute/plugins/v3/servers.py
+++ b/nova/api/openstack/compute/plugins/v3/servers.py
@@ -1492,7 +1492,7 @@ class ServersController(wsgi.Controller):
def _get_server_search_options(self):
"""Return server search options allowed by non-admin."""
return ('reservation_id', 'name', 'status', 'image', 'flavor',
- 'changes-since', 'all_tenants')
+ 'ip', 'changes-since', 'all_tenants')
def remove_invalid_options(context, search_options, allowed_search_options):
diff --git a/nova/cells/manager.py b/nova/cells/manager.py
index 15ee2224c..ba909c034 100644
--- a/nova/cells/manager.py
+++ b/nova/cells/manager.py
@@ -64,7 +64,7 @@ class CellsManager(manager.Manager):
Scheduling requests get passed to the scheduler class.
"""
- RPC_API_VERSION = '1.7'
+ RPC_API_VERSION = '1.8'
def __init__(self, *args, **kwargs):
# Mostly for tests.
@@ -186,6 +186,14 @@ class CellsManager(manager.Manager):
self.msg_runner.schedule_run_instance(ctxt, our_cell,
host_sched_kwargs)
+ def build_instances(self, ctxt, build_inst_kwargs):
+ """Pick a cell (possibly ourselves) to build new instance(s) and
+ forward the request accordingly.
+ """
+ # Target is ourselves first.
+ our_cell = self.state_manager.get_my_state()
+ self.msg_runner.build_instances(ctxt, our_cell, build_inst_kwargs)
+
def get_cell_info_for_neighbors(self, _ctxt):
"""Return cell information for our neighbor cells."""
return self.state_manager.get_cell_info_for_neighbors()
diff --git a/nova/cells/messaging.py b/nova/cells/messaging.py
index 1ea68d29f..319067836 100644
--- a/nova/cells/messaging.py
+++ b/nova/cells/messaging.py
@@ -651,6 +651,10 @@ class _TargetedMessageMethods(_BaseMessageMethods):
"""Parent cell told us to schedule new instance creation."""
self.msg_runner.scheduler.run_instance(message, host_sched_kwargs)
+ def build_instances(self, message, build_inst_kwargs):
+ """Parent cell told us to schedule new instance creation."""
+ self.msg_runner.scheduler.build_instances(message, build_inst_kwargs)
+
def run_compute_api_method(self, message, method_info):
"""Run a method in the compute api class."""
method = method_info['method']
@@ -1132,6 +1136,15 @@ class MessageRunner(object):
method_kwargs, 'down', target_cell)
message.process()
+ def build_instances(self, ctxt, target_cell, build_inst_kwargs):
+ """Called by the cell scheduler to tell a child cell to build
+ instance(s).
+ """
+ method_kwargs = dict(build_inst_kwargs=build_inst_kwargs)
+ message = _TargetedMessage(self, ctxt, 'build_instances',
+ method_kwargs, 'down', target_cell)
+ message.process()
+
def run_compute_api_method(self, ctxt, cell_name, method_info, call):
"""Call a compute API method in a specific cell."""
message = _TargetedMessage(self, ctxt, 'run_compute_api_method',
diff --git a/nova/cells/rpcapi.py b/nova/cells/rpcapi.py
index c8b7c680f..4a45af255 100644
--- a/nova/cells/rpcapi.py
+++ b/nova/cells/rpcapi.py
@@ -50,6 +50,7 @@ class CellsAPI(rpc_proxy.RpcProxy):
action_events_get()
1.6 - Adds consoleauth_delete_tokens() and validate_console_port()
1.7 - Adds service_update()
+ 1.8 - Adds build_instances(), deprecates schedule_run_instance()
'''
BASE_RPC_API_VERSION = '1.0'
@@ -79,11 +80,24 @@ class CellsAPI(rpc_proxy.RpcProxy):
method_info=method_info,
call=True))
+ # NOTE(alaski): Deprecated and should be removed later.
def schedule_run_instance(self, ctxt, **kwargs):
"""Schedule a new instance for creation."""
self.cast(ctxt, self.make_msg('schedule_run_instance',
host_sched_kwargs=kwargs))
+ def build_instances(self, ctxt, **kwargs):
+ """Build instances."""
+ build_inst_kwargs = kwargs
+ instances = build_inst_kwargs['instances']
+ instances_p = [jsonutils.to_primitive(inst) for inst in instances]
+ build_inst_kwargs['instances'] = instances_p
+ build_inst_kwargs['image'] = jsonutils.to_primitive(
+ build_inst_kwargs['image'])
+ self.cast(ctxt, self.make_msg('build_instances',
+ build_inst_kwargs=build_inst_kwargs),
+ version=1.8)
+
def instance_update_at_top(self, ctxt, instance):
"""Update instance at API level."""
if not CONF.cells.enable:
diff --git a/nova/cells/scheduler.py b/nova/cells/scheduler.py
index c95498fa0..c54b9b578 100644
--- a/nova/cells/scheduler.py
+++ b/nova/cells/scheduler.py
@@ -27,10 +27,12 @@ from nova import compute
from nova.compute import instance_actions
from nova.compute import utils as compute_utils
from nova.compute import vm_states
+from nova import conductor
from nova.db import base
from nova import exception
from nova.openstack.common import log as logging
from nova.scheduler import rpcapi as scheduler_rpcapi
+from nova.scheduler import utils as scheduler_utils
cell_scheduler_opts = [
cfg.ListOpt('scheduler_filter_classes',
@@ -67,6 +69,7 @@ class CellsScheduler(base.Base):
self.state_manager = msg_runner.state_manager
self.compute_api = compute.API()
self.scheduler_rpcapi = scheduler_rpcapi.SchedulerAPI()
+ self.compute_task_api = conductor.ComputeTaskAPI()
self.filter_handler = filters.CellFilterHandler()
self.filter_classes = self.filter_handler.get_matching_classes(
CONF.cells.scheduler_filter_classes)
@@ -74,18 +77,19 @@ class CellsScheduler(base.Base):
self.weigher_classes = self.weight_handler.get_matching_classes(
CONF.cells.scheduler_weight_classes)
- def _create_instances_here(self, ctxt, request_spec):
- instance_values = request_spec['instance_properties']
- num_instances = len(request_spec['instance_uuids'])
- for i, instance_uuid in enumerate(request_spec['instance_uuids']):
+ def _create_instances_here(self, ctxt, instance_uuids, instance_properties,
+ instance_type, image, security_groups, block_device_mapping):
+ instance_values = copy.copy(instance_properties)
+ num_instances = len(instance_uuids)
+ for i, instance_uuid in enumerate(instance_uuids):
instance_values['uuid'] = instance_uuid
instance = self.compute_api.create_db_entry_for_new_instance(
ctxt,
- request_spec['instance_type'],
- request_spec['image'],
+ instance_type,
+ image,
instance_values,
- request_spec['security_group'],
- request_spec['block_device_mapping'],
+ security_groups,
+ block_device_mapping,
num_instances, i)
self.msg_runner.instance_update_at_top(ctxt, instance)
@@ -104,24 +108,7 @@ class CellsScheduler(base.Base):
cells.append(our_cell)
return cells
- def _run_instance(self, message, host_sched_kwargs):
- """Attempt to schedule instance(s). If we have no cells
- to try, raise exception.NoCellsAvailable
- """
- ctxt = message.ctxt
- routing_path = message.routing_path
- request_spec = host_sched_kwargs['request_spec']
-
- LOG.debug(_("Scheduling with routing_path=%(routing_path)s"),
- {'routing_path': routing_path})
-
- filter_properties = copy.copy(host_sched_kwargs['filter_properties'])
- filter_properties.update({'context': ctxt,
- 'scheduler': self,
- 'routing_path': routing_path,
- 'host_sched_kwargs': host_sched_kwargs,
- 'request_spec': request_spec})
-
+ def _grab_target_cells(self, filter_properties):
cells = self._get_possible_cells()
cells = self.filter_handler.get_filtered_objects(self.filter_classes,
cells,
@@ -140,42 +127,124 @@ class CellsScheduler(base.Base):
self.weigher_classes, cells, filter_properties)
LOG.debug(_("Weighted cells: %(weighted_cells)s"),
{'weighted_cells': weighted_cells})
+ target_cells = [cell.obj for cell in weighted_cells]
+ return target_cells
- # Keep trying until one works
- for weighted_cell in weighted_cells:
- cell = weighted_cell.obj
+ def _run_instance(self, message, target_cells, instance_uuids,
+ host_sched_kwargs):
+ """Attempt to schedule instance(s)."""
+ ctxt = message.ctxt
+ request_spec = host_sched_kwargs['request_spec']
+ instance_properties = request_spec['instance_properties']
+ instance_type = request_spec['instance_type']
+ image = request_spec['image']
+ security_groups = request_spec['security_group']
+ block_device_mapping = request_spec['block_device_mapping']
+
+ LOG.debug(_("Scheduling with routing_path=%(routing_path)s"),
+ {'routing_path': message.routing_path})
+
+ for target_cell in target_cells:
try:
- if cell.is_me:
- # Need to create instance DB entry as scheduler
- # thinks it's already created... At least how things
- # currently work.
- self._create_instances_here(ctxt, request_spec)
+ if target_cell.is_me:
+ # Need to create instance DB entries as the host scheduler
+ # expects that the instance(s) already exists.
+ self._create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image,
+ security_groups, block_device_mapping)
# Need to record the create action in the db as the
# scheduler expects it to already exist.
- self._create_action_here(
- ctxt, request_spec['instance_uuids'])
+ self._create_action_here(ctxt, instance_uuids)
self.scheduler_rpcapi.run_instance(ctxt,
**host_sched_kwargs)
return
- # Forward request to cell
- self.msg_runner.schedule_run_instance(ctxt, cell,
+ self.msg_runner.schedule_run_instance(ctxt, target_cell,
host_sched_kwargs)
return
except Exception:
LOG.exception(_("Couldn't communicate with cell '%s'") %
- cell.name)
+ target_cell.name)
# FIXME(comstud): Would be nice to kick this back up so that
# the parent cell could retry, if we had a parent.
msg = _("Couldn't communicate with any cells")
LOG.error(msg)
raise exception.NoCellsAvailable()
+ def _build_instances(self, message, target_cells, instance_uuids,
+ build_inst_kwargs):
+ """Attempt to build instance(s) or send msg to child cell."""
+ ctxt = message.ctxt
+ instance_properties = build_inst_kwargs['instances'][0]
+ instance_type = build_inst_kwargs['instance_type']
+ image = build_inst_kwargs['image']
+ security_groups = build_inst_kwargs['security_group']
+ block_device_mapping = build_inst_kwargs['block_device_mapping']
+
+ LOG.debug(_("Building instances with routing_path=%(routing_path)s"),
+ {'routing_path': message.routing_path})
+
+ for target_cell in target_cells:
+ try:
+ if target_cell.is_me:
+ # Need to create instance DB entries as the conductor
+ # expects that the instance(s) already exists.
+ self._create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image,
+ security_groups, block_device_mapping)
+ # Need to record the create action in the db as the
+ # conductor expects it to already exist.
+ self._create_action_here(ctxt, instance_uuids)
+ self.compute_task_api.build_instances(ctxt,
+ **build_inst_kwargs)
+ return
+ self.msg_runner.build_instances(ctxt, target_cell,
+ build_inst_kwargs)
+ return
+ except Exception:
+ LOG.exception(_("Couldn't communicate with cell '%s'") %
+ target_cell.name)
+ # FIXME(comstud): Would be nice to kick this back up so that
+ # the parent cell could retry, if we had a parent.
+ msg = _("Couldn't communicate with any cells")
+ LOG.error(msg)
+ raise exception.NoCellsAvailable()
+
+ def build_instances(self, message, build_inst_kwargs):
+ image = build_inst_kwargs['image']
+ instance_uuids = [inst['uuid'] for inst in
+ build_inst_kwargs['instances']]
+ instances = build_inst_kwargs['instances']
+ request_spec = scheduler_utils.build_request_spec(image, instances)
+ filter_properties = copy.copy(build_inst_kwargs['filter_properties'])
+ filter_properties.update({'context': message.ctxt,
+ 'scheduler': self,
+ 'routing_path': message.routing_path,
+ 'host_sched_kwargs': build_inst_kwargs,
+ 'request_spec': request_spec})
+ self._schedule_build_to_cells(message, instance_uuids,
+ filter_properties, self._build_instances, build_inst_kwargs)
+
def run_instance(self, message, host_sched_kwargs):
- """Pick a cell where we should create a new instance."""
+ request_spec = host_sched_kwargs['request_spec']
+ instance_uuids = request_spec['instance_uuids']
+ filter_properties = copy.copy(host_sched_kwargs['filter_properties'])
+ filter_properties.update({'context': message.ctxt,
+ 'scheduler': self,
+ 'routing_path': message.routing_path,
+ 'host_sched_kwargs': host_sched_kwargs,
+ 'request_spec': request_spec})
+ self._schedule_build_to_cells(message, instance_uuids,
+ filter_properties, self._run_instance, host_sched_kwargs)
+
+ def _schedule_build_to_cells(self, message, instance_uuids,
+ filter_properties, method, method_kwargs):
+ """Pick a cell where we should create a new instance(s)."""
try:
for i in xrange(max(0, CONF.cells.scheduler_retries) + 1):
try:
- return self._run_instance(message, host_sched_kwargs)
+ target_cells = self._grab_target_cells(filter_properties)
+ return method(message, target_cells, instance_uuids,
+ method_kwargs)
except exception.NoCellsAvailable:
if i == max(0, CONF.cells.scheduler_retries):
raise
@@ -186,8 +255,6 @@ class CellsScheduler(base.Base):
time.sleep(sleep_time)
continue
except Exception:
- request_spec = host_sched_kwargs['request_spec']
- instance_uuids = request_spec['instance_uuids']
LOG.exception(_("Error scheduling instances %(instance_uuids)s"),
{'instance_uuids': instance_uuids})
ctxt = message.ctxt
diff --git a/nova/cells/state.py b/nova/cells/state.py
index f1c77cef1..defa897a9 100644
--- a/nova/cells/state.py
+++ b/nova/cells/state.py
@@ -127,7 +127,7 @@ class CellStateManager(base.Base):
else:
values = set([value])
my_cell_capabs[name] = values
- self.my_cell_state.update_capabilities(my_cell_capabs)
+ self.my_cell_state.update_capabilities(my_cell_capabs)
def _refresh_cells_from_db(self, ctxt):
"""Make our cell info map match the db."""
diff --git a/nova/compute/api.py b/nova/compute/api.py
index 80c8074d9..f676c9797 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -25,7 +25,6 @@ import base64
import functools
import re
import string
-import time
import uuid
from oslo.config import cfg
@@ -542,34 +541,20 @@ class API(base.Base):
self._check_injected_file_quota(context, files_to_inject)
self._check_requested_image(context, image_id, image, instance_type)
- def _validate_and_provision_instance(self, context, instance_type,
- image_href, kernel_id, ramdisk_id,
- min_count, max_count,
- display_name, display_description,
- key_name, key_data, security_groups,
+ def _validate_and_build_base_options(self, context, instance_type,
+ image, image_href, image_id,
+ kernel_id, ramdisk_id, min_count,
+ max_count, display_name,
+ display_description, key_name,
+ key_data, security_groups,
availability_zone, user_data,
metadata, injected_files,
access_ip_v4, access_ip_v6,
requested_networks, config_drive,
block_device_mapping,
- auto_disk_config, reservation_id,
- scheduler_hints):
+ auto_disk_config, reservation_id):
"""Verify all the input parameters regardless of the provisioning
strategy being performed."""
-
- if not metadata:
- metadata = {}
- if not security_groups:
- security_groups = ['default']
-
- if not instance_type:
- instance_type = flavors.get_default_instance_type()
- if not min_count:
- min_count = 1
- if not max_count:
- max_count = min_count
-
- block_device_mapping = block_device_mapping or []
if min_count > 1 or max_count > 1:
if any(map(lambda bdm: 'volume_id' in bdm, block_device_mapping)):
msg = _('Cannot attach one or more volumes to multiple'
@@ -592,90 +577,87 @@ class API(base.Base):
except base64.binascii.Error:
raise exception.InstanceUserDataMalformed()
+ self._checks_for_create_and_rebuild(context, image_id, image,
+ instance_type, metadata, injected_files)
+
+ self._check_requested_secgroups(context, security_groups)
+ self._check_requested_networks(context, requested_networks)
+
+ kernel_id, ramdisk_id = self._handle_kernel_and_ramdisk(
+ context, kernel_id, ramdisk_id, image)
+
+ config_drive_id, config_drive = self._check_config_drive(
+ context, config_drive)
+
+ if key_data is None and key_name:
+ key_pair = self.db.key_pair_get(context, context.user_id,
+ key_name)
+ key_data = key_pair['public_key']
+
+ root_device_name = block_device.properties_root_device_name(
+ image.get('properties', {}))
+
+ system_metadata = flavors.save_instance_type_info(
+ dict(), instance_type)
+
+ base_options = {
+ 'reservation_id': reservation_id,
+ 'image_ref': image_href,
+ 'kernel_id': kernel_id or '',
+ 'ramdisk_id': ramdisk_id or '',
+ 'power_state': power_state.NOSTATE,
+ 'vm_state': vm_states.BUILDING,
+ 'config_drive_id': config_drive_id or '',
+ 'config_drive': config_drive or '',
+ 'user_id': context.user_id,
+ 'project_id': context.project_id,
+ 'instance_type_id': instance_type['id'],
+ 'memory_mb': instance_type['memory_mb'],
+ 'vcpus': instance_type['vcpus'],
+ 'root_gb': instance_type['root_gb'],
+ 'ephemeral_gb': instance_type['ephemeral_gb'],
+ 'display_name': display_name,
+ 'display_description': display_description or '',
+ 'user_data': user_data,
+ 'key_name': key_name,
+ 'key_data': key_data,
+ 'locked': False,
+ 'metadata': metadata,
+ 'access_ip_v4': access_ip_v4,
+ 'access_ip_v6': access_ip_v6,
+ 'availability_zone': availability_zone,
+ 'root_device_name': root_device_name,
+ 'progress': 0,
+ 'system_metadata': system_metadata}
+
+ options_from_image = self._inherit_properties_from_image(
+ image, auto_disk_config)
+
+ base_options.update(options_from_image)
+
+ return base_options
+
+ def _build_filter_properties(self, context, scheduler_hints, forced_host,
+ forced_node, instance_type):
+ filter_properties = dict(scheduler_hints=scheduler_hints)
+ filter_properties['instance_type'] = instance_type
+ if forced_host:
+ check_policy(context, 'create:forced_host', {})
+ filter_properties['force_hosts'] = [forced_host]
+ if forced_node:
+ check_policy(context, 'create:forced_host', {})
+ filter_properties['force_nodes'] = [forced_node]
+ return filter_properties
+
+ def _provision_instances(self, context, instance_type, min_count,
+ max_count, base_options, image, security_groups,
+ block_device_mapping):
# Reserve quotas
num_instances, quota_reservations = self._check_num_instances_quota(
context, instance_type, min_count, max_count)
-
- # Try to create the instance
+ LOG.debug(_("Going to run %s instances...") % num_instances)
+ instances = []
try:
- instances = []
- instance_uuids = []
-
- image_id, image = self._get_image(context, image_href)
-
- self._checks_for_create_and_rebuild(context, image_id, image,
- instance_type, metadata, injected_files)
-
- self._check_requested_secgroups(context, security_groups)
- self._check_requested_networks(context, requested_networks)
-
- kernel_id, ramdisk_id = self._handle_kernel_and_ramdisk(
- context, kernel_id, ramdisk_id, image)
-
- config_drive_id, config_drive = self._check_config_drive(
- context, config_drive)
-
- if key_data is None and key_name:
- key_pair = self.db.key_pair_get(context, context.user_id,
- key_name)
- key_data = key_pair['public_key']
-
- root_device_name = block_device.properties_root_device_name(
- image.get('properties', {}))
-
- availability_zone, forced_host, forced_node = \
- self._handle_availability_zone(availability_zone)
-
- system_metadata = flavors.save_instance_type_info(
- dict(), instance_type)
-
- base_options = {
- 'reservation_id': reservation_id,
- 'image_ref': image_href,
- 'kernel_id': kernel_id or '',
- 'ramdisk_id': ramdisk_id or '',
- 'power_state': power_state.NOSTATE,
- 'vm_state': vm_states.BUILDING,
- 'config_drive_id': config_drive_id or '',
- 'config_drive': config_drive or '',
- 'user_id': context.user_id,
- 'project_id': context.project_id,
- 'launch_time': time.strftime('%Y-%m-%dT%H:%M:%SZ',
- time.gmtime()),
- 'instance_type_id': instance_type['id'],
- 'memory_mb': instance_type['memory_mb'],
- 'vcpus': instance_type['vcpus'],
- 'root_gb': instance_type['root_gb'],
- 'ephemeral_gb': instance_type['ephemeral_gb'],
- 'display_name': display_name,
- 'display_description': display_description or '',
- 'user_data': user_data,
- 'key_name': key_name,
- 'key_data': key_data,
- 'locked': False,
- 'metadata': metadata,
- 'access_ip_v4': access_ip_v4,
- 'access_ip_v6': access_ip_v6,
- 'availability_zone': availability_zone,
- 'root_device_name': root_device_name,
- 'progress': 0,
- 'system_metadata': system_metadata}
-
- options_from_image = self._inherit_properties_from_image(
- image, auto_disk_config)
-
- base_options.update(options_from_image)
-
- LOG.debug(_("Going to run %s instances...") % num_instances)
-
- filter_properties = dict(scheduler_hints=scheduler_hints)
- if forced_host:
- check_policy(context, 'create:forced_host', {})
- filter_properties['force_hosts'] = [forced_host]
- if forced_node:
- check_policy(context, 'create:forced_host', {})
- filter_properties['force_nodes'] = [forced_node]
-
for i in xrange(num_instances):
options = base_options.copy()
instance = self.create_db_entry_for_new_instance(
@@ -684,7 +666,6 @@ class API(base.Base):
num_instances, i)
instances.append(instance)
- instance_uuids.append(instance['uuid'])
self._validate_bdm(context, instance)
# send a state update notification for the initial create to
# show it going from non-existent to BUILDING
@@ -696,30 +677,20 @@ class API(base.Base):
except Exception:
with excutils.save_and_reraise_exception():
try:
- for instance_uuid in instance_uuids:
- self.db.instance_destroy(context, instance_uuid)
+ for instance in instances:
+ self.db.instance_destroy(context, instance['uuid'])
finally:
QUOTAS.rollback(context, quota_reservations)
# Commit the reservations
QUOTAS.commit(context, quota_reservations)
-
- request_spec = {
- 'image': jsonutils.to_primitive(image),
- 'instance_properties': base_options,
- 'instance_type': instance_type,
- 'instance_uuids': instance_uuids,
- 'block_device_mapping': block_device_mapping,
- 'security_group': security_groups,
- }
-
- return (instances, request_spec, filter_properties)
+ return instances
def _create_instance(self, context, instance_type,
image_href, kernel_id, ramdisk_id,
min_count, max_count,
display_name, display_description,
- key_name, key_data, security_group,
+ key_name, key_data, security_groups,
availability_zone, user_data, metadata,
injected_files, admin_password,
access_ip_v4, access_ip_v6,
@@ -730,28 +701,48 @@ class API(base.Base):
strategy being performed and schedule the instance(s) for
creation."""
+ # Normalize and setup some parameters
if reservation_id is None:
reservation_id = utils.generate_uid('r')
+ security_groups = security_groups or ['default']
+ min_count = min_count or 1
+ max_count = max_count or min_count
+ block_device_mapping = block_device_mapping or []
+ if not instance_type:
+ instance_type = flavors.get_default_instance_type()
+ image_id, image = self._get_image(context, image_href)
+
+ handle_az = self._handle_availability_zone
+ availability_zone, forced_host, forced_node = handle_az(
+ availability_zone)
+
+ base_options = self._validate_and_build_base_options(context,
+ instance_type, image, image_href, image_id, kernel_id,
+ ramdisk_id, min_count, max_count, display_name,
+ display_description, key_name, key_data, security_groups,
+ availability_zone, user_data, metadata, injected_files,
+ access_ip_v4, access_ip_v6, requested_networks, config_drive,
+ block_device_mapping, auto_disk_config, reservation_id)
+
+ instances = self._provision_instances(context, instance_type,
+ min_count, max_count, base_options, image, security_groups,
+ block_device_mapping)
- (instances, request_spec, filter_properties) = \
- self._validate_and_provision_instance(context, instance_type,
- image_href, kernel_id, ramdisk_id, min_count,
- max_count, display_name, display_description,
- key_name, key_data, security_group, availability_zone,
- user_data, metadata, injected_files, access_ip_v4,
- access_ip_v6, requested_networks, config_drive,
- block_device_mapping, auto_disk_config,
- reservation_id, scheduler_hints)
+ filter_properties = self._build_filter_properties(context,
+ scheduler_hints, forced_host, forced_node, instance_type)
for instance in instances:
self._record_action_start(context, instance,
instance_actions.CREATE)
- self.scheduler_rpcapi.run_instance(context,
- request_spec=request_spec,
- admin_password=admin_password, injected_files=injected_files,
- requested_networks=requested_networks, is_first_time=True,
- filter_properties=filter_properties)
+ self.compute_task_api.build_instances(context,
+ instances=instances, image=image,
+ filter_properties=filter_properties,
+ admin_password=admin_password,
+ injected_files=injected_files,
+ requested_networks=requested_networks,
+ security_groups=security_groups,
+ block_device_mapping=block_device_mapping)
return (instances, reservation_id)
diff --git a/nova/compute/cells_api.py b/nova/compute/cells_api.py
index 4beeaeb3d..5ac5dd475 100644
--- a/nova/compute/cells_api.py
+++ b/nova/compute/cells_api.py
@@ -57,8 +57,18 @@ class SchedulerRPCAPIRedirect(object):
return None
return _noop_rpc_wrapper
- def run_instance(self, context, **kwargs):
- self.cells_rpcapi.schedule_run_instance(context, **kwargs)
+
+class ConductorTaskRPCAPIRedirect(object):
+ def __init__(self, cells_rpcapi_obj):
+ self.cells_rpcapi = cells_rpcapi_obj
+
+ def __getattr__(self, key):
+ def _noop_rpc_wrapper(*args, **kwargs):
+ return None
+ return _noop_rpc_wrapper
+
+ def build_instances(self, context, **kwargs):
+ self.cells_rpcapi.build_instances(context, **kwargs)
class ComputeRPCProxyAPI(compute_rpcapi.ComputeAPI):
@@ -90,6 +100,8 @@ class ComputeCellsAPI(compute_api.API):
self.compute_rpcapi = ComputeRPCAPINoOp()
# Redirect scheduler run_instance to cells.
self.scheduler_rpcapi = SchedulerRPCAPIRedirect(self.cells_rpcapi)
+ # Redirect conductor build_instances to cells
+ self._compute_task_api = ConductorTaskRPCAPIRedirect(self.cells_rpcapi)
def _cell_read_only(self, cell_name):
"""Is the target cell in a read-only mode?"""
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 7f092a5c6..f9a1cc94d 100755
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -523,10 +523,19 @@ class ComputeManager(manager.SchedulerDependentManager):
if instance['task_state'] == task_states.RESIZE_MIGRATING:
# We crashed during resize/migration, so roll back for safety
try:
+ # NOTE(mriedem): check old_vm_state for STOPPED here, if it's
+ # not in system_metadata we default to True for backwards
+ # compatibility
+ sys_meta = utils.metadata_to_dict(instance['system_metadata'])
+ power_on = sys_meta.get('old_vm_state') != vm_states.STOPPED
+
+ block_dev_info = self._get_instance_volume_block_device_info(
+ context, instance)
+
self.driver.finish_revert_migration(
instance, self._legacy_nw_info(net_info),
- self._get_instance_volume_block_device_info(context,
- instance))
+ block_dev_info, power_on)
+
except Exception as e:
LOG.exception(_('Failed to revert crashed migration'),
instance=instance)
@@ -2102,9 +2111,10 @@ class ComputeManager(manager.SchedulerDependentManager):
with self._error_out_instance_on_exception(context, instance['uuid'],
reservations):
- # NOTE(danms): delete stashed old/new instance_type information
+ # NOTE(danms): delete stashed migration information
sys_meta, instance_type = self._cleanup_stored_instance_types(
migration, instance)
+ sys_meta.pop('old_vm_state', None)
self._instance_update(context, instance['uuid'],
system_metadata=sys_meta)
@@ -2122,8 +2132,24 @@ class ComputeManager(manager.SchedulerDependentManager):
rt = self._get_resource_tracker(migration['source_node'])
rt.drop_resize_claim(instance, prefix='old_')
+ # NOTE(mriedem): The old_vm_state could be STOPPED but the user
+ # might have manually powered up the instance to confirm the
+ # resize/migrate, so we need to check the current power state
+ # on the instance and set the vm_state appropriately. We default
+ # to ACTIVE because if the power state is not SHUTDOWN, we
+ # assume _sync_instance_power_state will clean it up.
+ p_state = self._get_power_state(context, instance)
+ vm_state = None
+ if p_state == power_state.SHUTDOWN:
+ vm_state = vm_states.STOPPED
+ LOG.debug("Resized/migrated instance is powered off. "
+ "Setting vm_state to '%s'." % vm_state,
+ instance=instance)
+ else:
+ vm_state = vm_states.ACTIVE
+
instance = self._instance_update(context, instance['uuid'],
- vm_state=vm_states.ACTIVE,
+ vm_state=vm_state,
task_state=None,
expected_task_state=None)
@@ -2210,8 +2236,8 @@ class ComputeManager(manager.SchedulerDependentManager):
migration=None, migration_id=None):
"""Finishes the second half of reverting a resize.
- Power back on the source instance and revert the resized attributes
- in the database.
+ Bring the original source instance state back (active/shutoff) and
+ revert the resized attributes in the database.
"""
if not migration:
@@ -2227,6 +2253,11 @@ class ComputeManager(manager.SchedulerDependentManager):
sys_meta, instance_type = self._cleanup_stored_instance_types(
migration, instance, True)
+ # NOTE(mriedem): delete stashed old_vm_state information; we
+ # default to ACTIVE for backwards compability if old_vm_state is
+ # not set
+ old_vm_state = sys_meta.pop('old_vm_state', vm_states.ACTIVE)
+
instance = self._instance_update(context,
instance['uuid'],
memory_mb=instance_type['memory_mb'],
@@ -2246,9 +2277,10 @@ class ComputeManager(manager.SchedulerDependentManager):
block_device_info = self._get_instance_volume_block_device_info(
context, instance, bdms=bdms)
+ power_on = old_vm_state != vm_states.STOPPED
self.driver.finish_revert_migration(instance,
self._legacy_nw_info(network_info),
- block_device_info)
+ block_device_info, power_on)
# Just roll back the record. There's no need to resize down since
# the 'old' VM already has the preferred attributes
@@ -2260,8 +2292,17 @@ class ComputeManager(manager.SchedulerDependentManager):
instance,
migration)
- instance = self._instance_update(context, instance['uuid'],
- vm_state=vm_states.ACTIVE, task_state=None)
+ # if the original vm state was STOPPED, set it back to STOPPED
+ LOG.info(_("Updating instance to original state: '%s'") %
+ old_vm_state)
+ if power_on:
+ instance = self._instance_update(context, instance['uuid'],
+ vm_state=vm_states.ACTIVE, task_state=None)
+ else:
+ instance = self._instance_update(
+ context, instance['uuid'],
+ task_state=task_states.STOPPING)
+ self.stop_instance(context, instance)
self._notify_about_instance_usage(
context, instance, "resize.revert.end")
@@ -2300,6 +2341,11 @@ class ComputeManager(manager.SchedulerDependentManager):
sys_meta = utils.metadata_to_dict(instance['system_metadata'])
flavors.save_instance_type_info(sys_meta, instance_type,
prefix='new_')
+ # NOTE(mriedem): Stash the old vm_state so we can set the
+ # resized/reverted instance back to the same state later.
+ vm_state = instance['vm_state']
+ LOG.debug('Stashing vm_state: %s' % vm_state, instance=instance)
+ sys_meta['old_vm_state'] = vm_state
instance = self._instance_update(context, instance['uuid'],
system_metadata=sys_meta)
@@ -2466,6 +2512,10 @@ class ComputeManager(manager.SchedulerDependentManager):
new_instance_type_id = migration['new_instance_type_id']
old_instance_type = flavors.extract_instance_type(instance)
sys_meta = utils.metadata_to_dict(instance['system_metadata'])
+ # NOTE(mriedem): Get the old_vm_state so we know if we should
+ # power on the instance. If old_vm_sate is not set we need to default
+ # to ACTIVE for backwards compatibility
+ old_vm_state = sys_meta.get('old_vm_state', vm_states.ACTIVE)
flavors.save_instance_type_info(sys_meta,
old_instance_type,
prefix='old_')
@@ -2510,11 +2560,14 @@ class ComputeManager(manager.SchedulerDependentManager):
block_device_info = self._get_instance_volume_block_device_info(
context, instance, bdms=bdms)
+ # NOTE(mriedem): If the original vm_state was STOPPED, we don't
+ # automatically power on the instance after it's migrated
+ power_on = old_vm_state != vm_states.STOPPED
self.driver.finish_migration(context, migration, instance,
disk_info,
self._legacy_nw_info(network_info),
image, resize_instance,
- block_device_info)
+ block_device_info, power_on)
migration = self.conductor_api.migration_update(context,
migration, 'finished')
diff --git a/nova/conductor/api.py b/nova/conductor/api.py
index ec247d1ac..33415233e 100644
--- a/nova/conductor/api.py
+++ b/nova/conductor/api.py
@@ -349,6 +349,17 @@ class LocalComputeTaskAPI(object):
return self._manager.migrate_server(context, instance, scheduler_hint,
live, rebuild, flavor, block_migration, disk_over_commit)
+ def build_instances(self, context, instances, image,
+ filter_properties, admin_password, injected_files,
+ requested_networks, security_groups, block_device_mapping):
+ utils.spawn_n(self._manager.build_instances, context,
+ instances=instances, image=image,
+ filter_properties=filter_properties,
+ admin_password=admin_password, injected_files=injected_files,
+ requested_networks=requested_networks,
+ security_groups=security_groups,
+ block_device_mapping=block_device_mapping)
+
class API(object):
"""Conductor API that does updates via RPC to the ConductorManager."""
@@ -692,3 +703,14 @@ class ComputeTaskAPI(object):
return self.conductor_compute_rpcapi.migrate_server(context, instance,
scheduler_hint, live, rebuild, flavor, block_migration,
disk_over_commit)
+
+ def build_instances(self, context, instances, image, filter_properties,
+ admin_password, injected_files, requested_networks,
+ security_groups, block_device_mapping):
+ self.conductor_compute_rpcapi.build_instances(context,
+ instances=instances, image=image,
+ filter_properties=filter_properties,
+ admin_password=admin_password, injected_files=injected_files,
+ requested_networks=requested_networks,
+ security_groups=security_groups,
+ block_device_mapping=block_device_mapping)
diff --git a/nova/conductor/manager.py b/nova/conductor/manager.py
index c7f139e4f..a7da96a73 100644
--- a/nova/conductor/manager.py
+++ b/nova/conductor/manager.py
@@ -33,6 +33,7 @@ from nova.openstack.common.rpc import common as rpc_common
from nova.openstack.common import timeutils
from nova import quota
from nova.scheduler import rpcapi as scheduler_rpcapi
+from nova.scheduler import utils as scheduler_utils
LOG = logging.getLogger(__name__)
@@ -514,7 +515,7 @@ class ComputeTaskManager(object):
"""
RPC_API_NAMESPACE = 'compute_task'
- RPC_API_VERSION = '1.1'
+ RPC_API_VERSION = '1.2'
def __init__(self):
self.scheduler_rpcapi = scheduler_rpcapi.SchedulerAPI()
@@ -535,3 +536,15 @@ class ComputeTaskManager(object):
destination = scheduler_hint.get("host")
self.scheduler_rpcapi.live_migration(context, block_migration,
disk_over_commit, instance, destination)
+
+ def build_instances(self, context, instances, image, filter_properties,
+ admin_password, injected_files, requested_networks,
+ security_groups, block_device_mapping):
+ request_spec = scheduler_utils.build_request_spec(image, instances)
+ # NOTE(alaski): For compatibility until a new scheduler method is used.
+ request_spec.update({'block_device_mapping': block_device_mapping,
+ 'security_group': security_groups})
+ self.scheduler_rpcapi.run_instance(context, request_spec=request_spec,
+ admin_password=admin_password, injected_files=injected_files,
+ requested_networks=requested_networks, is_first_time=True,
+ filter_properties=filter_properties)
diff --git a/nova/conductor/rpcapi.py b/nova/conductor/rpcapi.py
index c2a0e1b93..59a4c9ff8 100644
--- a/nova/conductor/rpcapi.py
+++ b/nova/conductor/rpcapi.py
@@ -462,6 +462,7 @@ class ComputeTaskAPI(nova.openstack.common.rpc.proxy.RpcProxy):
1.0 - Initial version (empty).
1.1 - Added unified migrate_server call.
+ 1.2 - Added build_instances
"""
BASE_RPC_API_VERSION = '1.0'
@@ -481,3 +482,16 @@ class ComputeTaskAPI(nova.openstack.common.rpc.proxy.RpcProxy):
flavor=flavor_p, block_migration=block_migration,
disk_over_commit=disk_over_commit)
return self.call(context, msg, version='1.1')
+
+ def build_instances(self, context, instances, image, filter_properties,
+ admin_password, injected_files, requested_networks,
+ security_groups, block_device_mapping):
+ instances_p = [jsonutils.to_primitive(inst) for inst in instances]
+ image_p = jsonutils.to_primitive(image)
+ msg = self.make_msg('build_instances', instances=instances_p,
+ image=image_p, filter_properties=filter_properties,
+ admin_password=admin_password, injected_files=injected_files,
+ requested_networks=requested_networks,
+ security_groups=security_groups,
+ block_device_mapping=block_device_mapping)
+ self.cast(context, msg, version='1.2')
diff --git a/nova/db/api.py b/nova/db/api.py
index f796b7f5a..78e2eb7a4 100644
--- a/nova/db/api.py
+++ b/nova/db/api.py
@@ -112,9 +112,9 @@ def not_equal(*values):
###################
-def service_destroy(context, instance_id):
+def service_destroy(context, service_id):
"""Destroy the service or raise if it does not exist."""
- return IMPL.service_destroy(context, instance_id)
+ return IMPL.service_destroy(context, service_id)
def service_get(context, service_id):
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 18aa185ab..3b1d0b3a4 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -649,14 +649,18 @@ def certificate_get_all_by_user_and_project(context, user_id, project_id):
@require_context
def floating_ip_get(context, id):
- result = model_query(context, models.FloatingIp, project_only=True).\
- filter_by(id=id).\
- options(joinedload_all('fixed_ip.instance')).\
- first()
-
- if not result:
- raise exception.FloatingIpNotFound(id=id)
+ try:
+ result = model_query(context, models.FloatingIp, project_only=True).\
+ filter_by(id=id).\
+ options(joinedload_all('fixed_ip.instance')).\
+ first()
+ if not result:
+ raise exception.FloatingIpNotFound(id=id)
+ except DataError:
+ msg = _("Invalid floating ip id %s in request") % id
+ LOG.warn(msg)
+ raise exception.InvalidID(id=id)
return result
@@ -866,14 +870,18 @@ def _floating_ip_get_by_address(context, address, session=None):
# if address string is empty explicitly set it to None
if not address:
address = None
+ try:
+ result = model_query(context, models.FloatingIp, session=session).\
+ filter_by(address=address).\
+ options(joinedload_all('fixed_ip.instance')).\
+ first()
- result = model_query(context, models.FloatingIp, session=session).\
- filter_by(address=address).\
- options(joinedload_all('fixed_ip.instance')).\
- first()
-
- if not result:
- raise exception.FloatingIpNotFoundForAddress(address=address)
+ if not result:
+ raise exception.FloatingIpNotFoundForAddress(address=address)
+ except DataError:
+ msg = _("Invalid floating IP %s in request") % address
+ LOG.warn(msg)
+ raise exception.InvalidIpAddressError(msg)
# If the floating IP has a project ID set, check to make sure
# the non-admin user has access.
@@ -1149,11 +1157,16 @@ def _fixed_ip_get_by_address(context, address, session=None):
session = get_session()
with session.begin(subtransactions=True):
- result = model_query(context, models.FixedIp, session=session).\
- filter_by(address=address).\
- first()
- if not result:
- raise exception.FixedIpNotFoundForAddress(address=address)
+ try:
+ result = model_query(context, models.FixedIp, session=session).\
+ filter_by(address=address).\
+ first()
+ if not result:
+ raise exception.FixedIpNotFoundForAddress(address=address)
+ except DataError:
+ msg = _("Invalid fixed IP Address %s in request") % address
+ LOG.warn(msg)
+ raise exception.FixedIpInvalid(msg)
# NOTE(sirp): shouldn't we just use project_only here to restrict the
# results?
@@ -1175,19 +1188,25 @@ def fixed_ip_get_by_address_detailed(context, address):
"""
:returns: a tuple of (models.FixedIp, models.Network, models.Instance)
"""
- result = model_query(context, models.FixedIp,
- models.Network, models.Instance).\
- filter_by(address=address).\
- outerjoin((models.Network,
- models.Network.id ==
- models.FixedIp.network_id)).\
- outerjoin((models.Instance,
- models.Instance.uuid ==
- models.FixedIp.instance_uuid)).\
- first()
+ try:
+ result = model_query(context, models.FixedIp,
+ models.Network, models.Instance).\
+ filter_by(address=address).\
+ outerjoin((models.Network,
+ models.Network.id ==
+ models.FixedIp.network_id)).\
+ outerjoin((models.Instance,
+ models.Instance.uuid ==
+ models.FixedIp.instance_uuid)).\
+ first()
- if not result:
- raise exception.FixedIpNotFoundForAddress(address=address)
+ if not result:
+ raise exception.FixedIpNotFoundForAddress(address=address)
+
+ except DataError:
+ msg = _("Invalid fixed IP Address %s in request") % address
+ LOG.warn(msg)
+ raise exception.FixedIpInvalid(msg)
return result
@@ -1317,9 +1336,14 @@ def virtual_interface_get_by_address(context, address):
:param address: = the address of the interface you're looking to get
"""
- vif_ref = _virtual_interface_query(context).\
- filter_by(address=address).\
- first()
+ try:
+ vif_ref = _virtual_interface_query(context).\
+ filter_by(address=address).\
+ first()
+ except DataError:
+ msg = _("Invalid virtual interface address %s in request") % address
+ LOG.warn(msg)
+ raise exception.InvalidIpAddressError(msg)
return vif_ref
diff --git a/nova/filters.py b/nova/filters.py
index 4b7f9ff10..e1f65658a 100644
--- a/nova/filters.py
+++ b/nova/filters.py
@@ -64,4 +64,6 @@ class BaseFilterHandler(loadables.BaseLoader):
list_objs = list(objs)
LOG.debug("Filter %(cls_name)s returned %(obj_len)d host(s)",
{'cls_name': cls_name, 'obj_len': len(list_objs)})
+ if len(list_objs) == 0:
+ break
return list_objs
diff --git a/nova/locale/bg_BG/LC_MESSAGES/nova.po b/nova/locale/bg_BG/LC_MESSAGES/nova.po
index 90688b89f..c84bbc736 100644
--- a/nova/locale/bg_BG/LC_MESSAGES/nova.po
+++ b/nova/locale/bg_BG/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-18 19:07+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Bulgarian (Bulgaria) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/bs/LC_MESSAGES/nova.po b/nova/locale/bs/LC_MESSAGES/nova.po
index 4c9f3ac49..d5c460a09 100644
--- a/nova/locale/bs/LC_MESSAGES/nova.po
+++ b/nova/locale/bs/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-01-19 20:22+0000\n"
"Last-Translator: yazar <zrncescientiae@gmail.com>\n"
"Language-Team: Bosnian <bs@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1299,6 +1299,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1309,7 +1324,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1432,22 +1447,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1958,43 +1973,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2275,10 +2290,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3858,46 +3875,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3960,141 +3977,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4230,603 +4247,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4940,18 +4962,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5055,24 +5077,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5609,75 +5631,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5762,6 +5783,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6865,60 +6905,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6928,22 +6971,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7025,12 +7068,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7040,25 +7083,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7852,7 +7895,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8024,50 +8067,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8649,61 +8692,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8711,50 +8754,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8764,67 +8807,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9133,70 +9176,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9268,12 +9311,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9319,7 +9362,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9470,27 +9513,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9900,54 +9943,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10068,19 +10111,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10188,24 +10231,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10765,7 +10808,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10779,202 +10822,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ca/LC_MESSAGES/nova.po b/nova/locale/ca/LC_MESSAGES/nova.po
index 4a5ca982f..228d4c0f5 100644
--- a/nova/locale/ca/LC_MESSAGES/nova.po
+++ b/nova/locale/ca/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Catalan "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/cs/LC_MESSAGES/nova.po b/nova/locale/cs/LC_MESSAGES/nova.po
index 2933c5e41..3b40fb860 100644
--- a/nova/locale/cs/LC_MESSAGES/nova.po
+++ b/nova/locale/cs/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-05-17 20:04+0000\n"
"Last-Translator: Zbyněk Schwarz <Unknown>\n"
"Language-Team: Czech <cs@li.org>\n"
@@ -176,7 +176,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "Data páru klíčů jsou neplatná"
@@ -1343,6 +1343,21 @@ msgstr "Instance typu %(name)s již existuje."
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Očekáván objekt typu: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1353,7 +1368,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr "Oznamování schopností plánovačům ..."
@@ -1477,22 +1492,22 @@ msgstr "timefunc: '%(name)s' trvalo %(total_time).2f sek"
msgid "Reloading cached file %s"
msgstr "Odstraňování základního souboru: %s"
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, fuzzy, python-format
msgid "Could not remove tmpdir: %s"
msgstr "Nelze odstranit kontejner: %s"
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, fuzzy, python-format
msgid "%s is not a string or unicode"
msgstr "Název serveru není řetězec nebo unicode"
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, fuzzy, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr "Dvojice klíčů musí být dlouhá 1 až 255 znaků."
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -2024,43 +2039,43 @@ msgstr "Neplatný požadavek: %s"
msgid "Failed to get metadata for instance id: %s"
msgstr "Nelze získat metadata pro ip: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Zachycena chyba: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr "%(url)s vrácena s HTTP %(status)d"
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr "Musí být určena třída ExtensionManager"
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr "Rozšířený zdroj: %s"
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr "Rozšíření %(ext_name)s: nelze rozšířit %(collection)s: Žádný takový zdroj"
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr "Rozšíření %(ext_name)s: rozšiřování zdroje %(collection)s"
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2344,10 +2359,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "Instance neexistuje"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr "Instance není členem zadané sítě"
@@ -3994,26 +4011,26 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr "Překročena kvóta instancí. Nemůžete spustit další instance tohoto typu."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
"Překročena kvóta instancí. Můžete spustit pouze %s dalších instancí "
"tohoto typu."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, fuzzy, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr "Překročena kvóta pro %(pid)s, pokus o spuštění %(min_count)s instancí"
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
@@ -4022,25 +4039,25 @@ msgstr ""
"Překročena kvóta pro %(pid)s, pokus o nastavení %(num_metadata)s "
"vlastností metadat"
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
#, fuzzy
msgid "Metadata property key greater than 255 characters"
msgstr "Bezpečnostní skupina %s by neměla být větší než 255 znaků."
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
#, fuzzy
msgid "Metadata property value greater than 255 characters"
msgstr "Bezpečnostní skupina %s by neměla být větší než 255 znaků."
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Nelze připojit svazek k instanci %s"
@@ -4110,11 +4127,11 @@ msgstr "Hledání podle: %s"
msgid "snapshot for %s"
msgstr "Spouštění snímku ve VM %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr "flavor_id je None. Předpokládán přesun."
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
@@ -4123,62 +4140,62 @@ msgstr ""
"Stará instance typu %(current_instance_type_name)s, nová instance typu "
"%(new_instance_type_name)s"
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, fuzzy, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr "Překročena kvóta pro %(pid)s, pokus o spuštění %(min_count)s instancí"
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Pokus o ukončení %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr "Dvojice klíčů musí být dlouhá 1 až 255 znaků."
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr "Bezpečnostní skupina %s není řetězec nebo unicode"
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr "Bezpečnostní skupina %s nemůže být prázdná."
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, fuzzy, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
@@ -4187,70 +4204,70 @@ msgstr ""
"Hodnota (%s) parametru GroupName je neplatná. Délka překračuje maximum "
"255 znaků."
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr "Bezpečnostní skupina %s by neměla být větší než 255 znaků."
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Vytvořit bezpečnostní skupinu %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr "Bezpečnostní skupina %s již existuje"
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Nelze zničit vbd %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Nelze zničit vbd %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Id bezpečnostní skupiny by mělo být celé číslo"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Smazat bezpečnostní skupinu %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr "Pravidlo (%s) nenalezeno"
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
#, fuzzy
msgid "Quota exceeded, too many security group rules."
msgstr "Přidávání pravidla bezpečnostní skupiny: %r"
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Povolit přístup bezpečnostní skupiny %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Zrušit přístup bezpečnostní skupiny %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr "Id bezpečnostní skupiny by mělo být celé číslo"
@@ -4391,214 +4408,214 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Nelze restartovat instanci"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr "Současný stav je %(drv_state)s, stav v DB je %(db_state)s."
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr "Restartování instance po restartu nova-compute."
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
#, fuzzy
msgid "Hypervisor driver does not support resume guests"
msgstr "Ovladač hypervizoru nepodporuje pravidla firewallu"
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Nelze pozastavit instanci"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr "Ovladač hypervizoru nepodporuje pravidla firewallu"
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Neočekávaný kód stavu"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr "Kontrola stavu"
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr "Nastavování bdm %s"
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Navrácení sítě pro instnac"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
#, fuzzy
msgid "Instance was deleted during spawn."
msgstr "Instance nemohla být spuštěna"
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Chyba DB: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr "Spouštění instance..."
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr "Instance selhala v nastavení sítě"
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr "Informace o síti instance: |%s|"
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr "Instance selhala nastavení blokového zařízení"
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr "Instance nemohla být spuštěna"
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr "Navrácení sítě pro instnac"
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr "%(action_str)s nstance"
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Navrácení sítě pro instnac"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr "Ignorování DiskNenalezen: %s"
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, fuzzy, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr "Ignorování DiskNenalezen: %s"
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr "ukončování bdm %s"
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr "%s. Nastavování stavu vm instance na ERROR"
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Znovu sestavování instance %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, fuzzy, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr "%(path)s je ve sdíleném úložišti: %(reason)s"
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Vytvořit snímek ze svazku %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Restartování instance %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, fuzzy, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
@@ -4607,22 +4624,22 @@ msgstr ""
"pokus o restartování nespuštěné instance: %(instance_uuid)s (stav: "
"%(state)s očekáváno: %(running)s)"
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Nelze znovu sestavit instanci [%(instance_uuid)s]: %(exc)s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "instance %s: znovu zavedena"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instance %s: pořizování snímku"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, fuzzy, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
@@ -4631,47 +4648,47 @@ msgstr ""
"pokus o vytvoření snímku z nespuštěné instance: %(instance_uuid)s (stav: "
"%(state)s očekáváno: %(running)s)"
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr "Nalezeno %(num_images)d obrazů (střídání: %(rotation)d)"
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr "Střídání %d záloh"
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "Mazání obrazu %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr "Nelze nastavit heslo správce. Instance %s není spuštěna"
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
#, fuzzy
msgid "Root password set"
msgstr "Instance %s: Nastavení hesla root"
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
#, fuzzy
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr "set_admin_password není tímto ovladačem zavedeno"
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, fuzzy, python-format
msgid "set_admin_password failed: %s"
msgstr "set_admin_password není tímto ovladačem zavedeno"
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
#, fuzzy
msgid "error setting admin password"
msgstr "Chyba při nastavování hesla správce"
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, fuzzy, python-format
msgid ""
"trying to inject a file into a non-running (state: "
@@ -4680,179 +4697,184 @@ msgstr ""
"pokus o vsunutí souboru do nespuštěné instance: %(instance_uuid)s (stav: "
"%(current_power_state)s očekáváno: %(expected_state)s)"
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, fuzzy, python-format
msgid "injecting file to %(path)s"
msgstr "Vkládání cesty souboru: '%s'"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Nelze pozastavit instanci"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Chyba DB: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "instance %s: rušení záchrany"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "Nastavování instance %(instance_uuid)s do stavu ERROR"
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Instance nemá svazek."
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr "cíl stejný jako zdroj!"
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
#, fuzzy
msgid "Pausing"
msgstr "Aktualizování!"
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instance %s: získávání diagnostik"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "Reset sítě"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "instance %s: vkládání informací o síti"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr "network_info vkládá: |%s|"
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Získat výstup konzole pro instanci %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "instance %s: získávání konzole vnc"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "instance %s: získávání konzole vnc"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr "Zavádění pomocí svazku %(volume_id)s ve %(mountpoint)s"
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr "Připojování svazku %(volume_id)s do %(mountpoint)s"
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, fuzzy, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr "Zavádění pomocí svazku %(volume_id)s ve %(mountpoint)s"
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Připojování svazku %(volume_id)s do %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr "Odpojování svazku %(volume_id)s z bodu připojení %(mp)s"
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Odpojování svazku z neznámé instance %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Připojování svazku %(volume_id)s do %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, fuzzy, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr "přidělování sítě pro instanci %s"
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "Síť %(network_id)s nemohla být nalezena."
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Hostitel %(host)s nemohl být nalezen."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr "Přesun před spuštěním selhal na %(dest)s"
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
#, fuzzy
msgid "_post_live_migration() is started.."
msgstr "zahájen přesun po spuštění."
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr "Přesun instance do %(dest)s úspěšně dokončen."
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
@@ -4860,21 +4882,21 @@ msgstr ""
"Můžete vidět tuto chybu \"libvirt: QEMU error: Domain not found: no "
"domain with matching name.\" Tuto chybu můžete bezpečně ignorovat."
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
#, fuzzy
msgid "Post operation of migration started"
msgstr "Spuštěna operace po migraci"
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Nelze získat metadata pro ip: %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
@@ -4883,64 +4905,64 @@ msgstr ""
"Nalezeno %(migration_count)d nepotvrzených přesunů starších než "
"%(confirm_window)d vteřin"
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, fuzzy, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr "Vypínání VM pro instanci %(instance_uuid)s"
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "Instance %(instance_id)s nenalezena"
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
#, fuzzy
msgid "In ERROR state"
msgstr "Uzel je v neznámém chybovém stavu."
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr "Aktualizace mezipaměti využití šířky pásma"
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Aktualizace mezipaměti využití šířky pásma"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr "Aktualizace stavu hostitele"
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
@@ -4949,67 +4971,67 @@ msgstr ""
"Nalezeno %(num_db_instances)s v databázi a %(num_vm_instances)s na "
"hypervizoru."
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "Instance není zapnuta"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
#, fuzzy
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr "FLAGS.reclaim_instance_interval <= 0, překskování..."
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr "Znovu získávání smazané instance"
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Zaznamování ovladače svazku: %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, fuzzy, python-format
msgid "No service record for host %s"
msgstr "Žádná služba pro ID výpočtu %s"
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, fuzzy, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
@@ -5018,7 +5040,7 @@ msgstr ""
"Zjištěna instance se jmenovkou '%(name_label)s', která je označena jako "
"SMAZÁNA, ale stále je přítomna na hostiteli."
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, fuzzy, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
@@ -5027,14 +5049,14 @@ msgstr ""
"Ničení instance se jmenovkou '%(name_label)s', která je označena jako "
"SMAZÁNA, ale stále je přítomna na hostiteli."
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, fuzzy, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
"Nerozpoznaná hodnota '%(action)s' pro "
"FLAGS.running_deleted_instance_action"
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "Nastavování instance %(instance_uuid)s do stavu ERROR"
@@ -5150,18 +5172,18 @@ msgstr "Nelze najít hostitele pro instanci %s"
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
#, fuzzy
msgid "Invalid block_device_mapping_destroy invocation"
msgstr "block_device_mapping %s"
@@ -5270,24 +5292,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr "Nerozpoznaná hodnota read_deleted '%s'"
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "instance %s: zachráněna"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5845,76 +5867,76 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr "podsítě v4 jsou vyžadovány pro zastaralé nw_info"
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
-msgstr ""
+#: nova/network/quantumv2/__init__.py:67
+#, fuzzy
+msgid "quantum authentication failed"
+msgstr "Chyba ověření"
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, fuzzy, python-format
msgid "allocate_for_instance() for %s"
msgstr "přidělování sítě pro instanci %s"
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "přidělování sítě pro instanci %s"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Hostitel nenalezen"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, fuzzy, python-format
msgid "deallocate_for_instance() for %s"
msgstr "oddělení sítě pro instanci |%s|"
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, fuzzy, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr "Nelze smazat svazek v db"
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, fuzzy, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr "Nelze smazat svazek v db"
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, fuzzy, python-format
msgid "get_instance_nw_info() for %s"
msgstr "Informace o síti instance: |%s|"
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, fuzzy, python-format
msgid "validate_networks() for %s"
msgstr "Špatný formát sítě"
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "Plovoucí ip není nalezena pro id %(id)s."
@@ -6006,6 +6028,26 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Toto pravidlo již existuje ve skupině %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "Chyba při nastavování hesla správce"
+
+#: nova/objects/base.py:136
+#, fuzzy
+msgid "Invalid version string"
+msgstr "Neplatný server_string: %s"
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, fuzzy, python-format
msgid "Original exception being dropped: %s"
@@ -7134,6 +7176,7 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
#, fuzzy
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
@@ -7141,55 +7184,57 @@ msgid ""
msgstr "Překročena kvóta pro %(pid)s, pokus o spuštění %(min_count)s instancí"
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Spouštění instancí: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "Po ukončení instancí: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "Vnitřní chyba"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr "Po vynuceném ukončení instancí: %s"
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
#, fuzzy
msgid "spawn error"
msgstr "neznámá chyby připojení hosta"
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr "Adresa |%(address)s| není přidělena"
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7199,22 +7244,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr "Adresa |%(address)s| není přidělena"
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7300,12 +7345,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr "Vytváření souborů v %s pro simulaci agenta hosta"
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr "Odstraňování souborů simulovaného agenta hosta v %s"
@@ -7315,25 +7360,25 @@ msgstr "Odstraňování souborů simulovaného agenta hosta v %s"
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, fuzzy, python-format
msgid "Loading compute driver '%s'"
msgstr "Zaznamování ovladače svazku: %s"
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "Nelze načíst ovladač virtualizace: %s"
@@ -8141,7 +8186,7 @@ msgstr "Verze agenta instance: %s"
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr "Aktualizace statistik hostitele"
@@ -8323,51 +8368,51 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr "Instance %s: Spuštění dokočení vrácení přesunu"
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Plovoucí ip není nalezena pro id %(id)s."
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
#, fuzzy
msgid "finish_migration called"
msgstr "Instance %s: Spouštění dokončení přesunu"
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, fuzzy, python-format
msgid "Cannot find boot VHD file: %s"
msgstr "Neznámý základní soubor: %s"
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8974,27 +9019,27 @@ msgstr ""
"Chyba od libvirt při hledání %(instance_name)s: [Kód chyby "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
#, fuzzy
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
@@ -9003,35 +9048,35 @@ msgstr ""
"Nelze získat počet cpu, protože tato funkce není na této platformě "
"zavedena. Tuto chybu lze prozatím bezpečně ignorovat."
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr "verze libvirt je příliš stará (nepodporuje getVersion)"
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Získávání velikosto brazu %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -9039,21 +9084,21 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, fuzzy, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
@@ -9062,16 +9107,16 @@ msgstr ""
"Vytváření dočasného souboru %s pro informování ostatních počítačových "
"uzlů, že by se měli připojit ke stejnému úložišti."
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr "Přesunutí bloku nemůže být použito ve sdíleném úložišti."
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
#, fuzzy
msgid "Live migration can not be used without shared storage."
msgstr "Přesunutí bloku nemůže být použito ve sdíleném úložišti."
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, fuzzy, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
@@ -9080,7 +9125,7 @@ msgstr ""
"Nelze přesunout %(instance_id)s do %(dest)s: Nedostatek disku "
"(hostitel:%(available)s <= instance:%(necessary)s)"
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
@@ -9089,7 +9134,7 @@ msgstr ""
"Spuštěná instance má info o CPU:\n"
"%s"
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -9104,7 +9149,7 @@ msgstr ""
"\n"
"Prohlédněte si %(u)s"
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
@@ -9113,24 +9158,24 @@ msgstr ""
"Vytváření dočasného souboru %s pro informování ostatních počítačových "
"uzlů, že by se měli připojit ke stejnému úložišti."
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Přesun před spuštěním selhal na %(dest)s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, fuzzy, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
"plug_vifs() selhalo %(cnt)d.opakování až na %(max_retry)d pro "
"%(hostname)s."
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, fuzzy, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
@@ -9139,42 +9184,42 @@ msgstr ""
"Chyba od libvirt při hledání %(instance_name)s: [Kód chyby "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr "přeskakování %(path)s protože vypadá jako svazek"
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
#, fuzzy
msgid "Starting migrate_disk_and_power_off"
msgstr "Instance %s: Spouštění přesunu disku a vypnutí"
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
#, fuzzy
msgid "Instance running successfully."
msgstr "Instance %s úspěšně běží."
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
#, fuzzy
msgid "Starting finish_migration"
msgstr "Instance %s: Spouštění dokončení přesunu"
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
#, fuzzy
msgid "Starting finish_revert_migration"
msgstr "Instance %s: Spuštění dokočení vrácení přesunu"
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, fuzzy, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr "Mazání souborů instance %(target)s"
@@ -9496,43 +9541,43 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr "Nalezen uzel iSCSI %(mount_device)s (po %(tries)s pokusech)"
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "obraz již je připojen"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "iSCSI zařízení v %s nenalezeno"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, fuzzy, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
"ISCSI svazek zatím v %(mount_device)s nenalezen:. Bude znovu provedeno "
"hledání a další pokus. Číslo pokusu: %(tries)s"
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, fuzzy, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr "Nalezen uzel iSCSI %(mount_device)s (po %(tries)s pokusech)"
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
#, fuzzy
msgid "Fibre Channel device not found."
msgstr "iSCSI zařízení v %s nenalezeno"
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, fuzzy, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
@@ -9541,30 +9586,30 @@ msgstr ""
"ISCSI svazek zatím v %(mount_device)s nenalezen:. Bude znovu provedeno "
"hledání a další pokus. Číslo pokusu: %(tries)s"
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, fuzzy, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr "Nalezen uzel iSCSI %(mount_device)s (po %(tries)s pokusech)"
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9638,12 +9683,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9691,7 +9736,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9846,27 +9891,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr "značka [%s] nenalezena"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr "In vmwareapi:_create_session, obdržena tato výjimka: %s"
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr "In vmwareapi:_call_method, obdržena tato výjimka: %s"
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr "Úkol [%(task_name)s] %(task_ref)s stav: úspěch"
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr "Úkol [%(task_name)s] %(task_ref)s stav: chyba %(error_info)s"
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr "In vmwareapi:_poll_task, Obdržena tato chyba %s"
@@ -10331,62 +10376,62 @@ msgstr "Mazání svazku s ID: %s "
msgid "Renamed the VM from %s"
msgstr "Vytvořit svazek ze snímku %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
"Nalezeno %(instance_count)d zaseknutých restartování starších než "
"%(timeout)d vteřin"
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, fuzzy, python-format
msgid "Automatically hard rebooting %d"
msgstr "Automatický tvrdý restart %d"
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr "get_diagnostics není zavedeno pro vmwareapi"
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
#, fuzzy
msgid "Reconfiguring VM instance to set the machine id"
msgstr "Znovu nastavování instance VM %s pro připojení obrazu disku"
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
#, fuzzy
msgid "Reconfigured VM instance to set the machine id"
msgstr "Instance VM %s znovu nastavena pro připojení obrazu disku"
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, fuzzy, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
"Znovu nastavování instance VM %(name)s pro úpravu id stroje s ip - "
"%(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, fuzzy, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
"Instance VM %(name)s znovu nastavena pro úpravu id stroje s ip - "
"%(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr "Vytváření adresáře s cestou %s"
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr "Vytvořen adresář s cestou %s"
@@ -10509,14 +10554,14 @@ msgstr "Nelze najít svazek v db"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Bod připojení %(mountpoint)s odpojen od instance %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, fuzzy, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
"ČASOVÝ LIMIT: Vypršel čas volání %(method)s. VM id=%(instance_uuid)s; "
"arg=%(args)r"
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, fuzzy, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
@@ -10525,7 +10570,7 @@ msgstr ""
"NEZAVEDENO: Volání %(method)s není agentem podporováno. VM "
"id=%(instance_uuid)s; arg=%(args)r"
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, fuzzy, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr "Volání %(method)s vrátilo chybu: %(e)s."
@@ -10642,24 +10687,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "Nelze dešifrovat soukromý klíč: %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr "Spuštění hostitele na XenServer není podporováno."
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr "Nelze se přihlásit do XenAPI (je disk Dom0 plný?)"
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Obdržena výjimka: %s"
@@ -11243,7 +11288,7 @@ msgstr "Nelze připojit souborový systém (očekáváno v nelinuxových instanc
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, fuzzy, python-format
msgid "Updating progress to %(progress)d"
msgstr "Aktualizace postupu instance '%(instance_uuid)s' na %(progress)d"
@@ -11257,223 +11302,223 @@ msgstr "Odstraňování základního souboru: %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Spouštění instance..."
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr "Odstraňování souborů kernel/ramdisku z dom0"
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, fuzzy, python-format
msgid "Block device information present: %s"
msgstr "block_device_mapping %s"
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Nelze aktualizovat svazek v db"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
#, fuzzy
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
"Automatické nastavení disku pro instanci %(instance_uuid)s, pokus o změnu"
" velikosti oddílu..."
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "Restartování xvp"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr "Psled v agenta pro %(hypervisor)s/%(os)s/%(architecture)s je %(version)s"
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr "Nenalezena žádná verze agenta pro %(hypervisor)s/%(os)s/%(architecture)s"
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr "Verze agenta instance: %s"
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr "Nastavování váhy VCPU"
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, fuzzy, python-format
msgid "Could not find VM with name %s"
msgstr "Nelze najít odkaz na VDI"
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "Dokončen snímek a nahrání na VM %s"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr "Nelze převést vhd na nového hostitele"
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Nelze restartovat instanci"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr "Zvětšení velikosti VDI %(vdi_uuid)s z%(old_gb)d GB na %(new_gb)d GB"
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
#, fuzzy
msgid "Resize complete"
msgstr "Změna velikosti %s je hotova"
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
#, fuzzy
msgid "Unable to find root VBD/VDI for VM"
msgstr "Neůze najít vbd pro vdi %s"
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "Restartování xvp"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
#, fuzzy
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
"Instance %(instance_uuid)s pomocí RAW nebo VHD, přeskakování mazání "
"kernelu a ramdisku"
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr "Instance mí kernel nebo ramdisk, ale ne oba"
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "soubory kernel/ramdisk odstraněny"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "Restartování xvp"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr "VM není přítomno, přeskakování ničení..."
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr "Instance již je v záchranném režimu: %s"
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
#, fuzzy
msgid "VM is not present, skipping soft delete..."
msgstr "VM není přítomno, přeskakování ničení..."
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
#, fuzzy
msgid "Automatically hard rebooting"
msgstr "Automatický tvrdý restart %d"
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "Vkládání informací o síti do xs pro vm: |%s|"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
#, fuzzy
msgid "Creating vifs"
msgstr "Vytváření obrazu"
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "vytváření VIF pro VM %(vm_ref)s, síť %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "vytváření VIF pro VM %(vm_ref)s, síť %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
#, fuzzy
msgid "Injecting hostname to xenstore"
msgstr "Vkládání názvu hostitele do xs pro vm: |%s|"
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "Špatný formát sítě"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
#, fuzzy
msgid "Migrate Send failed"
msgstr "Vytvoření selhalo"
diff --git a/nova/locale/da/LC_MESSAGES/nova.po b/nova/locale/da/LC_MESSAGES/nova.po
index 70783dbbb..78c7cf216 100644
--- a/nova/locale/da/LC_MESSAGES/nova.po
+++ b/nova/locale/da/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-01-15 21:46+0000\n"
"Last-Translator: Soren Hansen <soren@linux2go.dk>\n"
"Language-Team: Danish <da@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1299,6 +1299,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1309,7 +1324,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1432,22 +1447,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1958,43 +1973,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2275,10 +2290,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3858,46 +3875,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3960,141 +3977,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4230,603 +4247,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4940,18 +4962,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5055,24 +5077,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5609,75 +5631,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5762,6 +5783,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6865,60 +6905,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6928,22 +6971,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7025,12 +7068,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7040,25 +7083,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7852,7 +7895,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8024,50 +8067,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/de/LC_MESSAGES/nova.po b/nova/locale/de/LC_MESSAGES/nova.po
index d83c0a897..cab474c5e 100644
--- a/nova/locale/de/LC_MESSAGES/nova.po
+++ b/nova/locale/de/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-08-23 11:23+0000\n"
"Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
"Language-Team: German <de@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1960,43 +1975,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2277,10 +2292,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3866,46 +3883,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
@@ -3969,141 +3986,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Nicht möglich volume %s zufinden"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Nicht möglich volume %s zufinden"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4240,609 +4257,614 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Volume %s: erstelle Export"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "Instanz %s: Rettung"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Instanz %s: Rettung"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Nicht möglich volume %s zufinden"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Instanz %s pausiert"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "Instanz %s: Rettung"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4956,18 +4978,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5071,24 +5093,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5625,76 +5647,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Instanz %s pausiert"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5779,6 +5800,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6883,60 +6923,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6946,22 +6989,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7043,12 +7086,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7058,25 +7101,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7875,7 +7918,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8047,50 +8090,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8675,61 +8718,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8737,50 +8780,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8790,67 +8833,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9159,70 +9202,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9294,12 +9337,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9345,7 +9388,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9496,27 +9539,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9927,54 +9970,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr "Nicht möglich volume %s zufinden"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10097,19 +10140,19 @@ msgstr "Nicht möglich volume %s zufinden"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10217,24 +10260,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10794,7 +10837,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10808,203 +10851,203 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Nicht möglich Volumen zur Instanze %s hinzuzufügen"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/en_AU/LC_MESSAGES/nova.po b/nova/locale/en_AU/LC_MESSAGES/nova.po
index 0775bfd36..a3eadfb46 100644
--- a/nova/locale/en_AU/LC_MESSAGES/nova.po
+++ b/nova/locale/en_AU/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-10-21 11:27+0000\n"
"Last-Translator: Tom Fifield <Unknown>\n"
"Language-Team: English (Australia) <en_AU@li.org>\n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1305,6 +1305,21 @@ msgstr "group %s already exists"
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1315,7 +1330,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1439,22 +1454,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1972,43 +1987,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Failed to get metadata for ip: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Caught error: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2289,10 +2304,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3903,47 +3920,47 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr "Instance quota exceeded. You can only run %s more instances of this type."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr "Instance quota exceeded. You can only run %s more instances of this type."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Unable to attach volume to instance %s"
@@ -4013,142 +4030,142 @@ msgstr ""
msgid "snapshot for %s"
msgstr "Starting snapshot for VM %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Going to try to terminate %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Create Security Group %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Unable to destroy VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Unable to destroy VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Revoke security group ingress %s"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Delete security group %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Authorise security group ingress %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Revoke security group ingress %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4286,622 +4303,627 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Going to start terminating instances"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Going to start terminating instances"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Unexpected error raised: %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Going to try to terminate %s"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Caught error: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Going to try to terminate %s"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Detach volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Running instances: %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "instance %s: rebooted"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, fuzzy, python-format
msgid "injecting file to %(path)s"
msgstr "Injecting file path: '%s'"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Going to start terminating instances"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Caught error: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "instance %s: unrescuing"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instance %s: retrieving diagnostics"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "setting network host"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "setting network host"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Get console output for instance %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "Adding console"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "Adding console"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Detaching volume from unknown instance %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "instance %s: booted"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "instance %s: booted"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Failed to get metadata for ip: %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Deleting user %s"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "instance %s: booted"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Deleting user %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -5015,18 +5037,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5131,24 +5153,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "instance %s: rescued"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5689,76 +5711,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "Get console output for instance %s"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "instance %s: booted"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "setting network host"
@@ -5846,6 +5867,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "This rule already exists in group %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "Error starting xvp: %s"
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6954,60 +6994,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Running instances: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "After terminating instances: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7017,22 +7060,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7115,12 +7158,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7130,25 +7173,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7953,7 +7996,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8126,50 +8169,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "setting network host"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8766,61 +8809,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Failed to get metadata for ip: %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8828,50 +8871,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8881,67 +8924,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Authentication Failure: %s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9250,70 +9293,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "group %s already exists"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9386,12 +9429,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9437,7 +9480,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9588,27 +9631,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10025,54 +10068,54 @@ msgstr "Deleting user %s"
msgid "Renamed the VM from %s"
msgstr "Unable to locate volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10195,19 +10238,19 @@ msgstr "Unable to detach volume %s"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10319,24 +10362,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "Failed to decrypt private key: %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Got exception: %s"
@@ -10903,7 +10946,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10917,209 +10960,209 @@ msgstr "Starting Bridge interface for %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Creating a raw instance"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "Restarting xvp"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "Finished snapshot and upload for VM %s"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Going to start terminating instances"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "Restarting xvp"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "kernel/ramdisk files removed"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "Restarting xvp"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "setting network host"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Creating VIF for VM %(vm_ref)s, network %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Creating VIF for VM %(vm_ref)s, network %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/en_GB/LC_MESSAGES/nova.po b/nova/locale/en_GB/LC_MESSAGES/nova.po
index eb1753123..f2df215f3 100644
--- a/nova/locale/en_GB/LC_MESSAGES/nova.po
+++ b/nova/locale/en_GB/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-03-30 11:10+0000\n"
"Last-Translator: Anthony Harrington <untaintableangel@hotmail.co.uk>\n"
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "Keypair data is invalid"
@@ -1305,6 +1305,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1315,7 +1330,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1438,22 +1453,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1967,43 +1982,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Invalid instance type %(instance_type)s."
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2284,10 +2299,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3882,46 +3899,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Unable to attach volume to instance %s"
@@ -3986,141 +4003,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Unable to destroy VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Unable to destroy VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4258,616 +4275,621 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "volume %s: creating export"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Get console output for instance %s"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Unable to detach volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "VBD not found in instance %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Rebooting instance %s"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "Invalid instance type %(instance_type)s."
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instance %s: retrieving diagnostics"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "instance %s: reset network"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Get console output for instance %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Detaching volume from unknown instance %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Instance %(instance_id)s is not running."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "Instance %(instance_id)s is not running."
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Re-exporting %s volumes"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "instance %s: snapshotting"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Re-exporting %s volumes"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "Invalid instance type %(instance_type)s."
@@ -4981,18 +5003,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5097,24 +5119,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5652,76 +5674,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "Invalid instance type %(instance_type)s."
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "instance %s: suspending"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5806,6 +5827,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6916,60 +6956,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6979,22 +7022,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7076,12 +7119,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7091,25 +7134,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7910,7 +7953,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8083,50 +8126,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Get console output for instance %s"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8721,61 +8764,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Unable to detach volume %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8783,50 +8826,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8836,67 +8879,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9205,70 +9248,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9341,12 +9384,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9393,7 +9436,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9545,27 +9588,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9977,54 +10020,54 @@ msgstr "Re-exporting %s volumes"
msgid "Renamed the VM from %s"
msgstr "Unable to locate volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10147,19 +10190,19 @@ msgstr "Unable to detach volume %s"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10267,24 +10310,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10850,7 +10893,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10864,204 +10907,204 @@ msgstr "Starting Bridge interface for %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Rebooting instance %s"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Rebooting instance %s"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Creating VIF for VM %(vm_ref)s, network %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Creating VIF for VM %(vm_ref)s, network %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/en_US/LC_MESSAGES/nova.po b/nova/locale/en_US/LC_MESSAGES/nova.po
index 53763932c..2f8c5759a 100644
--- a/nova/locale/en_US/LC_MESSAGES/nova.po
+++ b/nova/locale/en_US/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-01-21 18:28+0000\n"
"Last-Translator: Jeremy Stanley <fungi@yuggoth.org>\n"
"Language-Team: en_US <LL@li.org>\n"
@@ -173,7 +173,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "Keypair data is invalid"
@@ -1353,6 +1353,21 @@ msgstr "Instance Type with name %(name)s already exists."
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Expected object of type: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1363,7 +1378,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr "Notifying Schedulers of capabilities ..."
@@ -1489,22 +1504,22 @@ msgstr "timefunc: '%(name)s' took %(total_time).2f secs"
msgid "Reloading cached file %s"
msgstr "Reloading cached file %s"
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr "Could not remove tmpdir: %s"
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, fuzzy, python-format
msgid "%s is not a string or unicode"
msgstr "Server name is not a string or unicode"
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, fuzzy, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr "Server name must be less than 256 characters."
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -2025,26 +2040,26 @@ msgstr "Invalid request: %s"
msgid "Failed to get metadata for instance id: %s"
msgstr "Failed to get metadata for ip: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Caught error: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr "%(url)s returned with HTTP %(status)d"
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr "Must specify an ExtensionManager class"
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr "Extended resource: %s"
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
@@ -2053,17 +2068,17 @@ msgstr ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr "Extension %(ext_name)s extending resource: %(collection)s"
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2346,10 +2361,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "Instance does not exist"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr "Instance is not a member of specified network"
@@ -3981,16 +3998,16 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr "Cannot run any more instances of this type."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr "Can only run %s more instances of this type."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
@@ -3999,7 +4016,7 @@ msgstr ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
@@ -4008,23 +4025,23 @@ msgstr ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr "Metadata property key blank"
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr "Metadata property key greater than 255 characters"
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr "Metadata property value greater than 255 characters"
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Unable to attach boot volume to instance %s"
@@ -4090,11 +4107,11 @@ msgstr "Searching by: %s"
msgid "snapshot for %s"
msgstr "snapshot for %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr "flavor_id is None. Assuming migration."
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
@@ -4103,62 +4120,62 @@ msgstr ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, fuzzy, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr "%(overs)s quota exceeded for %(pid)s, tried to resize instance. %(msg)s"
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr "Locking"
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr "Unlocking"
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr "Volume must be attached in order to detach."
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Going to try to live migrate instance to %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr "Keypair name contains unsafe characters"
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr "Keypair name must be between 1 and 255 characters long"
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr "Security group %s is not a string or unicode"
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr "Security group %s cannot be empty."
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
@@ -4167,68 +4184,68 @@ msgstr ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr "Security group %s should not be greater than 255 characters."
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr "Quota exceeded, too many security groups."
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Create Security Group %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr "Security group %s already exists"
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Unable to destroy vbd %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Unable to destroy vbd %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr "Security group is still in use"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr "Failed to update usages deallocating security group"
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Delete security group %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr "Rule (%s) not found"
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr "Quota exceeded, too many security group rules."
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Authorize security group ingress %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Revoke security group ingress %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr "Security group id should be integer"
@@ -4371,210 +4388,210 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Failed to terminate instance"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr "Current state is %(drv_state)s, state in DB is %(db_state)s."
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr "Rebooting instance after nova-compute restart."
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr "Hypervisor driver does not support resume guests"
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Failed to suspend instance"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr "Hypervisor driver does not support firewall rules"
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Unexpected status code"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr "Checking state"
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr "Setting up bdm %s"
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, fuzzy, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr "Memory limit not specified, defaulting to unlimited"
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr "Failed to dealloc network for deleted instance"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
#, fuzzy
msgid "Instance was deleted during spawn."
msgstr "Instance failed to spawn"
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "DB error: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr "Error trying to reschedule"
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr "Retry info not present, will not reschedule"
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr "No request spec, will not reschedule"
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, fuzzy, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr "Re-scheduling instance: attempt %d"
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr "Instance build timed out. Set to error state."
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr "Starting instance..."
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr "Instance failed network setup"
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr "Instance network_info: |%s|"
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr "Instance failed block device setup"
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr "Instance failed to spawn"
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr "Deallocating network for instance"
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr "%(action_str)s instance"
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Failed to dealloc network for deleted instance"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr "Ignoring DiskNotFound: %s"
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr "Ignoring VolumeNotFound: %s"
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr "terminating bdm %s"
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr "Ignoring volume cleanup failure due to %s"
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr "%s. Setting instance vm_state to ERROR"
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr "Rebuilding instance"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, fuzzy, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr "%(path)s is not on shared storage: %(reason)s"
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Attach boot from volume failed: %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr "Rebooting instance"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
@@ -4583,21 +4600,21 @@ msgstr ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Cannot reboot instance: %(exc)s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "instance %s: rebooted"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr "instance snapshotting"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
@@ -4606,45 +4623,45 @@ msgstr ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr "Found %(num_images)d images (rotation: %(rotation)d)"
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr "Rotating out %d backups"
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "Deleting image %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr "Failed to set admin password. Instance %s is not running"
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr "Root password set"
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
#, fuzzy
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr "set_admin_password is not implemented by this driver."
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr "set_admin_password failed: %s"
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr "error setting admin password"
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
@@ -4653,111 +4670,116 @@ msgstr ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr "injecting file to %(path)s"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr "Rescuing"
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Error trying to reschedule"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "DB error: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr "Unrescuing"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr "Changing instance metadata according to %(diff)r"
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "Setting instance to %(state)s state."
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Instance has no volume."
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr "destination same as source!"
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr "Migrating"
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr "Failed to rollback quota for failed finish_resize: %(qr_error)s"
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr "Pausing"
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr "Unpausing"
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr "Retrieving diagnostics"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr "Resuming"
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr "Reset network"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr "Inject network info"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr "network_info to inject: |%s|"
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr "Get console output"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr "Getting vnc console"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "Getting vnc console"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr "Booting with volume %(volume_id)s at %(mountpoint)s"
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr "Attaching volume %(volume_id)s to %(mountpoint)s"
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
@@ -4766,59 +4788,59 @@ msgstr ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Failed to attach volume %(volume_id)s at %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr "Detach volume %(volume_id)s from mountpoint %(mp)s"
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr "Detaching volume from unknown instance"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Faild to detach volume %(volume_id)s from %(mp)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, fuzzy, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr "allocate_for_instance() for %s"
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "Port %(port_id)s is still in use."
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Host %(host)s could not be found."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr "Pre live migration failed at %(dest)s"
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr "_post_live_migration() is started.."
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr "Migrating instance to %(dest)s finished successfully."
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
@@ -4826,20 +4848,20 @@ msgstr ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr "Post operation of migration started"
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Failed to get info for disk %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr "Updated the info_cache for instance"
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
@@ -4848,12 +4870,12 @@ msgstr ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr "Setting migration %(migration_id)s to error: %(reason)s"
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
@@ -4862,26 +4884,26 @@ msgstr ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "Instance %(instance_uuid)s not found"
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr "In ERROR state"
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, fuzzy, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr "In states %(vm_state)s/%(task_state)s, notRESIZED/None"
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr "Error auto-confirming resize: %(e)s. Will retry later."
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
@@ -4890,25 +4912,25 @@ msgstr ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr "Failed to generate usage audit for instance on host %s"
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr "Updating bandwidth usage cache"
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Updating bandwidth usage cache"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr "Updating host status"
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
@@ -4917,11 +4939,11 @@ msgstr ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr "During sync_power_state the instance has a pending task. Skip."
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
@@ -4930,57 +4952,57 @@ msgstr ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr "Instance shutdown by itself. Calling the stop API."
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr "error during stop() in sync_power_state."
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
#, fuzzy
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr "Instance is paused or suspended unexpectedly. Calling the stop API."
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
#, fuzzy
msgid "Instance is paused unexpectedly. Ignore."
msgstr "Instance is paused or suspended unexpectedly. Calling the stop API."
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr "Instance is not stopped. Calling the stop API."
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr "Instance is not (soft-)deleted."
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
#, fuzzy
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr "FLAGS.reclaim_instance_interval <= 0, skipping..."
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr "Reclaiming deleted instance"
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Loading compute driver '%s'"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr "No service record for host %s"
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
@@ -4989,7 +5011,7 @@ msgstr ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
@@ -4998,12 +5020,12 @@ msgstr ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, fuzzy, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr "Unrecognized value '%(action)s' for FLAGS.running_deleted_instance_action"
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "Setting instance to %(state)s state."
@@ -5127,18 +5149,18 @@ msgstr "Unable to find host for Instance %s"
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr "Using %(prefix)s instead of %(req_prefix)s"
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
#, fuzzy
msgid "Invalid block_device_mapping_destroy invocation"
msgstr "block_device_mapping %s"
@@ -5247,24 +5269,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr "Unrecognized read_deleted value '%s'"
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "instance %s: rescued"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr "Change will make usage less than 0 for the following resources: %(unders)s"
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5829,76 +5851,76 @@ msgstr "Cannot delete aggregate: %(id)s"
msgid "v4 subnets are required for legacy nw_info"
msgstr "v4 subnets are required for legacy nw_info"
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
-msgstr ""
+#: nova/network/quantumv2/__init__.py:67
+#, fuzzy
+msgid "quantum authentication failed"
+msgstr "Authentication error"
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr "allocate_for_instance() for %s"
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr "empty project id for instance %s"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Host not found"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr "Fail to delete port %(portid)s with failure: %(exception)s"
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr "deallocate_for_instance() for %s"
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr "Failed to delete quantum port %(portid)s "
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, fuzzy, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr "Failed to delete quantum port %(portid)s "
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr "get_instance_nw_info() for %s"
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, fuzzy, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr "Fail to delete port %(portid)s with failure: %(exception)s"
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, fuzzy, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr "Fail to delete port %(portid)s with failure: %(exception)s"
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr "validate_networks() for %s"
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "Multiple floating IP pools matches found for name '%s'"
@@ -5988,6 +6010,26 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "This rule already exists in group %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "error setting admin password"
+
+#: nova/objects/base.py:136
+#, fuzzy
+msgid "Invalid version string"
+msgstr "Invalid server_string: %s"
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, fuzzy, python-format
msgid "Original exception being dropped: %s"
@@ -7131,6 +7173,7 @@ msgid "unexpected role header"
msgstr "unexpected role header"
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
@@ -7139,55 +7182,57 @@ msgstr ""
"instances"
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Running instances: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "After terminating instances: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "Internal error"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr "After force-killing instances: %s"
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
#, fuzzy
msgid "spawn error"
msgstr "unknown guestmount error"
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr "Result: %(result)s is not a dict."
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7197,22 +7242,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr "Result: %(result)s is not a list."
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, fuzzy, python-format
msgid ""
"Values do not match:\n"
@@ -7301,12 +7346,12 @@ msgstr "Expected a function in 'auth[0]' parameter"
msgid "Expected a function in 'auth[1]' parameter"
msgstr "Expected a function in 'auth[1]' parameter"
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr "Creating files in %s to simulate guest agent"
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr "Removing simulated guest agent files in %s"
@@ -7316,25 +7361,25 @@ msgstr "Removing simulated guest agent files in %s"
msgid "Added %(filepath)s to config drive"
msgstr "Added %(filepath)s to config drive"
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr "Compute driver option required, but not specified"
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr "Loading compute driver '%s'"
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "Unable to load the virtualization driver: %s"
@@ -8146,7 +8191,7 @@ msgstr "Windows version: %s "
msgid "get_available_resource called"
msgstr "get_available_resource called"
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr "Updating host stats"
@@ -8323,12 +8368,12 @@ msgstr "confirm_migration called"
msgid "finish_revert_migration called"
msgstr "finish_revert_migration called"
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, fuzzy, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr "Copying base disk %(src_vhd_path)s to %(dest_base_disk_path)s"
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, fuzzy, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
@@ -8337,22 +8382,22 @@ msgstr ""
"Reconnecting copied base VHD %(dest_base_disk_path)s and diff VHD "
"%(dest_vhd_path)s"
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, fuzzy, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr "Merging base disk %(dest_base_disk_path)s and diff disk %(dest_vhd_path)s"
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Getting info for VHD %s"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, fuzzy, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
@@ -8361,16 +8406,16 @@ msgstr ""
"Reconnecting copied base VHD %(dest_base_disk_path)s and diff VHD "
"%(dest_vhd_path)s"
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr "finish_migration called"
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, fuzzy, python-format
msgid "Cannot find boot VHD file: %s"
msgstr "Unknown base file: %s"
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8971,27 +9016,27 @@ msgstr ""
"Error from libvirt while looking up %(instance_name)s: [Error Code "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, fuzzy, python-format
msgid "Invalid exclusion expression %r"
msgstr "Invalid reservation expiration %(expire)s."
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, fuzzy, python-format
msgid "Invalid inclusion expression %r"
msgstr "Invalid reservation expiration %(expire)s."
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
#, fuzzy
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
@@ -9000,35 +9045,35 @@ msgstr ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. This error can be safely ignored for now."
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr "libvirt version is too old (does not support getVersion)"
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Getting image size for the image %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -9036,21 +9081,21 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, fuzzy, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
@@ -9059,15 +9104,15 @@ msgstr ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr "Block migration can not be used with shared storage."
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr "Live migration can not be used without shared storage."
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
@@ -9076,7 +9121,7 @@ msgstr ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
@@ -9085,7 +9130,7 @@ msgstr ""
"Instance launched has CPU info:\n"
"%s"
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -9100,7 +9145,7 @@ msgstr ""
"\n"
"Refer to %(u)s"
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
@@ -9109,22 +9154,22 @@ msgstr ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr "The firewall filter for %s does not exist"
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Live Migration failure: %(e)s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, fuzzy, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr "plug_vifs() failed %(cnt)d.Retry up to %(max_retry)d for %(hostname)s."
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, fuzzy, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
@@ -9133,38 +9178,38 @@ msgstr ""
"Error from libvirt while looking up %(instance_name)s: [Error Code "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr "skipping %(path)s since it looks like volume"
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr "Getting disk size of %(i_name)s: %(e)s"
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr "Starting migrate_disk_and_power_off"
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr "Instance running successfully."
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr "Starting finish_migration"
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr "Starting finish_revert_migration"
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, fuzzy, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr "Deleting instance files %(target)s"
@@ -9488,43 +9533,43 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr "Found iSCSI node %(mount_device)s (after %(tries)s rescans)"
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr "%s is already mounted"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "iSCSI device not found at %s"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, fuzzy, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
"ISCSI volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, fuzzy, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr "Found iSCSI node %(mount_device)s (after %(tries)s rescans)"
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
#, fuzzy
msgid "Fibre Channel device not found."
msgstr "iSCSI device not found at %s"
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, fuzzy, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
@@ -9533,30 +9578,30 @@ msgstr ""
"ISCSI volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, fuzzy, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr "Found iSCSI node %(mount_device)s (after %(tries)s rescans)"
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9629,12 +9674,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr "Uncompressed image file not found"
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9681,7 +9726,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9839,27 +9884,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr "marker [%s] not found"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr "In vmwareapi:_create_session, got this exception: %s"
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr "In vmwareapi:_call_method, got this exception: %s"
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr "Task [%(task_name)s] %(task_ref)s status: success"
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr "In vmwareapi:_poll_task, Got this error %s"
@@ -10306,56 +10351,56 @@ msgstr "Creating volume: %s"
msgid "Renamed the VM from %s"
msgstr "Create volume from snapshot %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, fuzzy, python-format
msgid "Automatically hard rebooting %d"
msgstr "Automatically hard rebooting"
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr "get_diagnostics not implemented for vmwareapi"
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
#, fuzzy
msgid "Reconfiguring VM instance to set the machine id"
msgstr "Reconfiguring VM instance to attach the image disk"
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
#, fuzzy
msgid "Reconfigured VM instance to set the machine id"
msgstr "Reconfigured VM instance to attach the image disk"
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, fuzzy, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr "Reconfiguring VM instance to set the machine id with ip - %(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, fuzzy, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr "Reconfigured VM instance to set the machine id with ip - %(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr "Creating directory with path %s"
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr "Created directory with path %s"
@@ -10478,12 +10523,12 @@ msgstr "Failed to find volume in db"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
@@ -10492,7 +10537,7 @@ msgstr ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr "The call to %(method)s returned an error: %(e)s. args=%(args)r"
@@ -10609,24 +10654,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr "Failure while cleaning up attached VDIs"
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr "Could not determine key: %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr "Host startup on XenServer is not supported."
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr "Unable to log in to XenAPI (is the Dom0 disk full?)"
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr "Host is member of a pool, but DB says otherwise"
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Got exception: %s"
@@ -11219,7 +11264,7 @@ msgstr "Failed to mount filesystem (expected for non-linux instances): %s"
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr "This domU must be running on the host specified by xenapi_connection_url"
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr "Updating progress to %(progress)d"
@@ -11233,36 +11278,36 @@ msgstr "Writing image info file: %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr "Starting instance"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr "Removing kernel/ramdisk files from dom0"
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr "Block device information present: %s"
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr "Failed to spawn, rolling back"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr "Auto configuring disk, attempting to resize partition..."
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr "Starting VM"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr "Waiting for instance state to become running"
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
@@ -11271,146 +11316,146 @@ msgstr ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr "Instance agent version: %s"
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr "Setting VCPU weight"
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr "Could not find VM with name %s"
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr "Finished snapshot and upload for VM"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr "Failed to transfer vhd to new host"
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Failed to terminate instance"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr "Resize complete"
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr "Starting halted instance found during reboot"
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr "Unable to find root VBD/VDI for VM"
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "Destroying VM"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr "Using RAW or VHD, skipping kernel and ramdisk deletion"
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr "instance has a kernel or ramdisk but not both"
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "kernel/ramdisk files removed"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr "Destroying VM"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr "VM is not present, skipping destroy..."
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr "Instance is already in Rescue Mode: %s"
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
#, fuzzy
msgid "VM is not present, skipping soft delete..."
msgstr "VM is not present, skipping destroy..."
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr "Automatically hard rebooting"
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr "Injecting network info to xenstore"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr "Creating vifs"
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Creating VIF for network %(network_ref)s"
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Created VIF %(vif_ref)s, network %(network_ref)s"
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr "Injecting hostname to xenstore"
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
@@ -11419,25 +11464,25 @@ msgstr ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "Bad networks format"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr "Migrate Receive failed"
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
#, fuzzy
msgid "VM.assert_can_migrate failed"
msgstr "VM.assert_can_migratefailed"
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr "Migrate Send failed"
diff --git a/nova/locale/es/LC_MESSAGES/nova.po b/nova/locale/es/LC_MESSAGES/nova.po
index 7610d6e8c..4e950a6a3 100644
--- a/nova/locale/es/LC_MESSAGES/nova.po
+++ b/nova/locale/es/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-05-16 06:44+0000\n"
"Last-Translator: Paco Molinero <paco@byasl.com>\n"
"Language-Team: Spanish <es@li.org>\n"
@@ -177,7 +177,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1315,6 +1315,21 @@ msgstr "el grupo %s ya existe"
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1325,7 +1340,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1449,22 +1464,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1982,43 +1997,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Fallo al generar metadatos para la ip %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Capturado error: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2299,10 +2314,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3915,51 +3932,51 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr ""
"Quota de instancias superada. Sólo puedes ejecutar %s instancias más de "
"este tipo."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
"Quota de instancias superada. Sólo puedes ejecutar %s instancias más de "
"este tipo."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Imposible adjuntar volumen a la instancia %s"
@@ -4029,142 +4046,142 @@ msgstr ""
msgid "snapshot for %s"
msgstr "Comenzando snapshot para la VM %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Se va a iniciar la finalización de las instancias"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Crear Grupo de Seguridad %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Imposible destruir VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Imposible destruir VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Revocar ingreso al grupo de seguridad %s"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Borrar grupo de seguridad %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Autorizar ingreso al grupo de seguridad %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Revocar ingreso al grupo de seguridad %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4304,619 +4321,624 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Fallo a reinicia la instancia"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Fallo al suspender la instancia"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Sucedió un error inexperado: %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Vamos a ejecutar %s insntacias..."
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Capturado error: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Vamos a ejecutar %s insntacias..."
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Reiniciando instancia %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Desasociar volumen %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Reiniciando instancia %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Ejecutando instancias: %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "instancia %s: reiniciada"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instancia %s: creando snapshot"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Fallo al suspender la instancia"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Capturado error: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "Tipo de instancia inválido %(instance_type)s."
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "instancia %s: creando snapshot"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instancia %s: obteniendo los diagnosticos"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "configurando la red del host"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "configurando la red del host"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Obtener salida de la consola para la instancia %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Volume_separado: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Desvinculando volumen de instancia desconocida %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Volume_separado: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "instancia %s: arrancada"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "La instacia %(instance_id)s no esta suspendida"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Fallo al generar metadatos para la ip %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "La instacia %(instance_id)s no esta suspendida"
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Borrando usuario %s"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "instancia %s: arrancada"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Borrando usuario %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "Tipo de instancia inválido %(instance_type)s."
@@ -5030,18 +5052,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5149,24 +5171,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "instancia %s: rescatada"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5705,76 +5727,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "Tipo de instancia inválido %(instance_type)s."
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "instancia %s: arrancada"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "configurando la red del host"
@@ -5862,6 +5883,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Esta regla ya existe en el grupo %s"
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6975,60 +7015,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Ejecutando instancias: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "Después de terminar las instancias: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7038,22 +7081,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7136,12 +7179,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7151,25 +7194,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7972,7 +8015,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8145,50 +8188,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "configurando la red del host"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8785,61 +8828,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Fallo al generar metadatos para la ip %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8847,50 +8890,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8900,67 +8943,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Fallo de autenticación: %s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9269,70 +9312,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "el grupo %s ya existe"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9406,12 +9449,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9458,7 +9501,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9610,27 +9653,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10046,54 +10089,54 @@ msgstr "Borrando usuario %s"
msgid "Renamed the VM from %s"
msgstr "Imposible encontrar volumen %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10220,19 +10263,19 @@ msgstr ""
"El punto de montaje %(mountpoint)s se desligó de la instancia "
"%(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10343,24 +10386,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Obtenida excepción %s"
@@ -10926,7 +10969,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10940,207 +10983,207 @@ msgstr "Iniciando interfaz puente para %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Creando una instancia raw"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Fallo al suspender la instancia"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "Finalizado el snapshot y la subida de la VM %s"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Fallo a reinicia la instancia"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "configurando la red del host"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Creando VIF para VM %(vm_ref)s, red %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Creando VIF para VM %(vm_ref)s, red %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/fi_FI/LC_MESSAGES/nova.po b/nova/locale/fi_FI/LC_MESSAGES/nova.po
index 5dacd960b..dba6b9fa6 100644
--- a/nova/locale/fi_FI/LC_MESSAGES/nova.po
+++ b/nova/locale/fi_FI/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-18 19:07+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Finnish (Finland) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/fr/LC_MESSAGES/nova.po b/nova/locale/fr/LC_MESSAGES/nova.po
index 64140120e..14cc4a438 100644
--- a/nova/locale/fr/LC_MESSAGES/nova.po
+++ b/nova/locale/fr/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-05-14 08:35+0000\n"
"Last-Translator: Erwan Gallen <Unknown>\n"
"Language-Team: French <fr@li.org>\n"
@@ -175,7 +175,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "La paire de clés de donnée n'est pas valide"
@@ -1347,6 +1347,21 @@ msgstr "Le type d'instance avec le nom %(instance_type_name)s ne peut être trou
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1357,7 +1372,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1481,22 +1496,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -2029,43 +2044,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Erreur interceptée : %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2346,10 +2361,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3968,51 +3985,51 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr ""
"Quota d'instances dépassé. Vous ne pouvez éxécuter que %s instances de ce"
" type de plus."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
"Quota d'instances dépassé. Vous ne pouvez éxécuter que %s instances de ce"
" type de plus."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Impossible d'attacher le volume à l'instance %s"
@@ -4082,142 +4099,142 @@ msgstr ""
msgid "snapshot for %s"
msgstr "Début de création d'instantané (snapshot) pour la VM %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Va essayer d'arrêter %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Création du groupe de sécurité %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Impossible de supprimer le VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Impossible de supprimer le VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Révocation de groupe de sécurité %s"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Suppression du groupe de sécurité %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Authorisation du groupe de sécurité %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Révocation de groupe de sécurité %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4357,622 +4374,627 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Échec du redémarrage de l'instance"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Échec de la suspension de l'instance"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "\"Erreur inopinée\" remontée : %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Va essayer d'arrêter %s"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Erreur interceptée : %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Va essayer d'arrêter %s"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Redémarrage de l'instance %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Dé-montage du volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Redémarrage de l'instance %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Instance actives : %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "instance %s: re-démarrée"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instance %s: création d'un instantané (snapshot)"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, fuzzy, python-format
msgid "injecting file to %(path)s"
msgstr "Injection du chemin d'accès : '%s'"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Échec de la suspension de l'instance"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Erreur interceptée : %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "instance %s: dé-récupération"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "L'instance de type %(instance_type)s est invalide."
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "instance %s: création d'un instantané (snapshot)"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instance %s: récupération des diagnostiques"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "réglage de l'hôte réseau"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "réglage de l'hôte réseau"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Récupération de la sortie de la console de l'instance %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "Ajout de console"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "Ajout de console"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Démontage de volume d'une instance inconnue %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "Le réseau %(network_id)s n'a pas été trouvé."
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "L'hôte %(host)s ne peut pas être trouvé."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "L'instance %(instance_id)s n'a pas pu être trouvée."
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Suppression de l'utilisateur %s"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "instance %s: a démarrée"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Suppression de l'utilisateur %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "L'instance de type %(instance_type)s est invalide."
@@ -5087,18 +5109,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5206,24 +5228,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "instance %s: récupérée"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5764,76 +5786,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "L'instance de type %(instance_type)s est invalide."
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Aucuns types d'instance trouvés."
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "Aucune IP dynamique trouvée pour l'id %(id)s."
@@ -5925,6 +5946,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Cette règle existe déjà dans le groupe %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "Erreur au démarrage xvp : %s"
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, fuzzy, python-format
msgid "Original exception being dropped: %s"
@@ -7038,60 +7078,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Instance actives : %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "Après l'arrêt d'instances : %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7101,22 +7144,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7199,12 +7242,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7214,25 +7257,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -8040,7 +8083,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8213,50 +8256,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Aucune IP dynamique trouvée pour l'id %(id)s."
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8857,61 +8900,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8919,50 +8962,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8972,67 +9015,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Echec d'authentification : %s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9341,70 +9384,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "le groupe %s existe déjà"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9478,12 +9521,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9530,7 +9573,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9682,27 +9725,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10119,54 +10162,54 @@ msgstr "Suppression de l'utilisateur %s"
msgid "Renamed the VM from %s"
msgstr "Impossible de trouver le volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10293,19 +10336,19 @@ msgstr ""
"Le point de montage %(mountpoint)s à été détaché de l'instance "
"%(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10417,24 +10460,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "Impossible de déchiffrer la clef privée : %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Reçu exception : %s"
@@ -11003,7 +11046,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -11017,210 +11060,210 @@ msgstr "Démarrage de l'interface de Bridge %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Création d'une instance raw"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Échec de la suspension de l'instance"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "Re-démarrage xvp"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "Fin de l'instantané et du chargement de VM %s"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Échec du redémarrage de l'instance"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "Re-démarrage xvp"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "Fichiers noyau/ramdisk supprimés"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "Re-démarrage xvp"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "réglage de l'hôte réseau"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Création du VIF pour la VM %(vm_ref)s, réseau %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Création du VIF pour la VM %(vm_ref)s, réseau %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/hr/LC_MESSAGES/nova.po b/nova/locale/hr/LC_MESSAGES/nova.po
index a46122ab6..1de537aba 100644
--- a/nova/locale/hr/LC_MESSAGES/nova.po
+++ b/nova/locale/hr/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Croatian "
@@ -172,7 +172,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1301,6 +1301,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1311,7 +1326,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1434,22 +1449,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1960,43 +1975,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2277,10 +2292,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3860,46 +3877,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3962,141 +3979,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4232,603 +4249,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4942,18 +4964,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5057,24 +5079,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5611,75 +5633,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5764,6 +5785,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6867,60 +6907,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6930,22 +6973,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7027,12 +7070,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7042,25 +7085,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7854,7 +7897,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8026,50 +8069,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8651,61 +8694,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8713,50 +8756,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8766,67 +8809,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9135,70 +9178,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9270,12 +9313,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9321,7 +9364,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9472,27 +9515,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9902,54 +9945,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10070,19 +10113,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10190,24 +10233,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10767,7 +10810,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10781,202 +10824,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/hu/LC_MESSAGES/nova.po b/nova/locale/hu/LC_MESSAGES/nova.po
index 6cb1bbbbe..4b1f45fe9 100644
--- a/nova/locale/hu/LC_MESSAGES/nova.po
+++ b/nova/locale/hu/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Hungarian "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/id/LC_MESSAGES/nova.po b/nova/locale/id/LC_MESSAGES/nova.po
index 521b4d2d7..fa6db29c2 100644
--- a/nova/locale/id/LC_MESSAGES/nova.po
+++ b/nova/locale/id/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Indonesian "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/it/LC_MESSAGES/nova.po b/nova/locale/it/LC_MESSAGES/nova.po
index c1833f6c3..5c9963bcd 100644
--- a/nova/locale/it/LC_MESSAGES/nova.po
+++ b/nova/locale/it/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-04-01 18:59+0000\n"
"Last-Translator: simone.sandri <lexluxsox@hotmail.it>\n"
"Language-Team: Italian <it@li.org>\n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1303,6 +1303,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1313,7 +1328,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1437,22 +1452,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1965,43 +1980,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Impossibile sospendere l'istanza"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2282,10 +2297,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3881,46 +3898,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Impossibile montare il volume all'istanza %s"
@@ -3987,141 +4004,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Impossibile riavviare l'istanza"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Impossibile localizzare il volume %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Impossibile localizzare il volume %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4259,614 +4276,619 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Impossibile riavviare l'istanza"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Impossibile sospendere l'istanza"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Impossibile riavviare l'istanza"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Riavviando l'istanza %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Impossibile smontare il volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Riavviando l'istanza %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Impossibile montare il volume all'istanza %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "istanza %s: creazione snapshot in corso"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Impossibile sospendere l'istanza"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "istanza %s: creazione snapshot in corso"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "istanza %s: ricezione diagnostiche"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "istanza %s: ripristino rete"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Impossibile montare il volume all'istanza %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "istanza %s: creazione snapshot in corso"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "istanza %s: sospensione in corso"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Impossibile riavviare l'istanza"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "istanza %s: creazione snapshot in corso"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4980,18 +5002,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5099,24 +5121,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5655,76 +5677,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "istanza %s: sospensione in corso"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5809,6 +5830,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6918,60 +6958,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6981,22 +7024,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7078,12 +7121,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7093,25 +7136,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7913,7 +7956,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8085,50 +8128,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Impossibile montare il volume all'istanza %s"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8725,61 +8768,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Impossibile smontare il volume %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8787,50 +8830,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8840,67 +8883,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9209,70 +9252,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9346,12 +9389,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9397,7 +9440,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9548,27 +9591,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9979,54 +10022,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr "Impossibile localizzare il volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10149,19 +10192,19 @@ msgstr "Impossibile smontare il volume %s"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Mountpoint %(mountpoint)s smontato dall'istanza %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10269,24 +10312,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10847,7 +10890,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10861,205 +10904,205 @@ msgstr "Avviando l'interfaccia Bridge per %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Riavviando l'istanza %s"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Impossibile sospendere l'istanza"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Impossibile riavviare l'istanza"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/it_IT/LC_MESSAGES/nova.po b/nova/locale/it_IT/LC_MESSAGES/nova.po
index b114d30dd..3360445c1 100644
--- a/nova/locale/it_IT/LC_MESSAGES/nova.po
+++ b/nova/locale/it_IT/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Italian (Italy) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ja/LC_MESSAGES/nova.po b/nova/locale/ja/LC_MESSAGES/nova.po
index 9fc9c4342..7848d2409 100644
--- a/nova/locale/ja/LC_MESSAGES/nova.po
+++ b/nova/locale/ja/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-08-23 11:22+0000\n"
"Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
"Language-Team: \n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1305,6 +1305,21 @@ msgstr "グループ %s は既に存在しています。"
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1315,7 +1330,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1439,22 +1454,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1970,43 +1985,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "ip %s に対するメタデータの取得に失敗しました。"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "エラー %s をキャッチしました。"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2287,10 +2302,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3901,47 +3918,47 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr "インスタンスのクオータを超えました。このタイプにおいてはあと %s インスタンスしか実行できません。"
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr "インスタンスのクオータを超えました。このタイプにおいてはあと %s インスタンスしか実行できません。"
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "インスタンス %s にボリュームを接続(attach)できません。"
@@ -4011,142 +4028,142 @@ msgstr ""
msgid "snapshot for %s"
msgstr "VM %s に対するスナップショットを開始します。"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "%s を停止しようとしています"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Create Security Group: セキュリティグループ %s を作成します。"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "VBD %s の削除に失敗しました。"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "VBD %s の削除に失敗しました。"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Revoke security group ingress: セキュリティグループ許可 %s の取消"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Delete security group: セキュリティグループ %s を削除します。"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Authorize security group ingress: セキュリティグループ許可 %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Revoke security group ingress: セキュリティグループ許可 %s の取消"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4284,622 +4301,627 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "インスタンス終了処理を開始します。"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "インスタンス終了処理を開始します。"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "予期しないエラー発生: %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "%s を停止しようとしています"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "エラー %s をキャッチしました。"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "%s を停止しようとしています"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Rebooting instance: インスタンス %s を再起動します。"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Detach volume: ボリューム %s をデタッチします"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Rebooting instance: インスタンス %s を再起動します。"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "インスタンス %s は実行中です。"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "インスタンス%s: 再起動しました。"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "snapshotting: インスタンス %s のスナップショットを取得中"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, fuzzy, python-format
msgid "injecting file to %(path)s"
msgstr "ファイルパス '%s' を埋め込んでいます"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "インスタンス終了処理を開始します。"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "エラー %s をキャッチしました。"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "Unrescuing: インスタンス %s をアンレスキューします。"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "snapshotting: インスタンス %s のスナップショットを取得中"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "retrieving diagnostics: インスタンス %s の診断情報を取得します。"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "ネットワークホストの設定をします。"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "ネットワークホストの設定をします。"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Get console output: インスタンス %s のコンソール出力を取得します。"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "コンソールを追加しています"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "コンソールを追加しています"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "ボリューム切断: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "ボリュームを未知のインスタンス %s からデタッチします。"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "ボリューム切断: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "インスタンス %s: 起動しました。"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "インスタンス %s: 起動しました。"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "ip %s に対するメタデータの取得に失敗しました。"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Deleting user: ユーザ %s を削除します。"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "インスタンス %s: 起動しました。"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Deleting user: ユーザ %s を削除します。"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -5013,18 +5035,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5129,24 +5151,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "インスタンス %s: rescued"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5685,76 +5707,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "Get console output: インスタンス %s のコンソール出力を取得します。"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "インスタンス %s: 起動しました。"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "ネットワークホストの設定をします。"
@@ -5842,6 +5863,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "指定されたルールは既にグループ %s に存在しています。"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "xvp の開始中にエラー: %s"
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6951,60 +6991,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "インスタンス %s は実行中です。"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "インスタンス %s を終了した後です。"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7014,22 +7057,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7112,12 +7155,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7127,25 +7170,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7946,7 +7989,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8119,50 +8162,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "ネットワークホストの設定をします。"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8757,61 +8800,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "ip %s に対するメタデータの取得に失敗しました。"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8819,50 +8862,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8872,67 +8915,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "%s の認証に失敗しました。"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9241,70 +9284,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "グループ %s は既に存在しています。"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9377,12 +9420,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9428,7 +9471,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9579,27 +9622,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10016,54 +10059,54 @@ msgstr "Deleting user: ユーザ %s を削除します。"
msgid "Renamed the VM from %s"
msgstr "ボリューム %s の存在が確認できません。"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10186,19 +10229,19 @@ msgstr "ボリューム %s を切断(detach)できません"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "インスタンス %(instance_name)s からマウントポイント %(mountpoint)s を切断(detach)しました"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10309,24 +10352,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "プライベートキーの復号に失敗しました: %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "例外 %s が発生しました。"
@@ -10891,7 +10934,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10905,209 +10948,209 @@ msgstr "%s 用のブリッジインタフェースを開始します。"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "raw instanceを生成します。"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "xvp を再起動しています"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "VM %s のスナップショットとアップロードが完了しました。"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "インスタンス終了処理を開始します。"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "xvp を再起動しています"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "カーネル/RAMディスクファイルが削除されました"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "xvp を再起動しています"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "ネットワークホストの設定をします。"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "VM %(vm_ref)s, network %(network_ref)s 用仮想インターフェース(VIF)を作成しています。"
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "VM %(vm_ref)s, network %(network_ref)s 用仮想インターフェース(VIF)を作成しています。"
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ka_GE/LC_MESSAGES/nova.po b/nova/locale/ka_GE/LC_MESSAGES/nova.po
index 440dbf11b..ecbe570c3 100644
--- a/nova/locale/ka_GE/LC_MESSAGES/nova.po
+++ b/nova/locale/ka_GE/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Georgian (Georgia) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ko/LC_MESSAGES/nova.po b/nova/locale/ko/LC_MESSAGES/nova.po
index 577950dc2..f956f6dfd 100644
--- a/nova/locale/ko/LC_MESSAGES/nova.po
+++ b/nova/locale/ko/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-12-16 04:42+0000\n"
"Last-Translator: Zhongyue Luo <lzyeval@gmail.com>\n"
"Language-Team: Korean <ko@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "%s 인스턴스에 볼륨장착 할 수 없습니다"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3866,46 +3883,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "%s 인스턴스에 볼륨장착 할 수 없습니다"
@@ -3969,141 +3986,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "%s 볼륨을 찾을수 없습니다"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "%s 볼륨을 찾을수 없습니다"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4239,611 +4256,616 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "%s 볼륨 탈착에 실패했습니다"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "%s 인스턴스에 볼륨장착 할 수 없습니다"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "인스턴스 %s: 스냅샷 저장중"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "인스턴스 %s: 스냅샷 저장중"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "볼륨 탈착: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "%s 인스턴스에 볼륨장착 할 수 없습니다"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "볼륨 탈착: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "인스턴스 %s: 스냅샷 저장중"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "인스턴스 %s: 스냅샷 저장중"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4957,18 +4979,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5072,24 +5094,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5626,75 +5648,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5779,6 +5800,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6882,60 +6922,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6945,22 +6988,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7042,12 +7085,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7057,25 +7100,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7875,7 +7918,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8047,50 +8090,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "%s 인스턴스에 볼륨장착 할 수 없습니다"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8681,61 +8724,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "%s 볼륨 탈착에 실패했습니다"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8743,50 +8786,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8796,67 +8839,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9165,70 +9208,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9301,12 +9344,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9352,7 +9395,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9503,27 +9546,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9933,54 +9976,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr "%s 볼륨을 찾을수 없습니다"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10103,19 +10146,19 @@ msgstr "%s 볼륨 탈착에 실패했습니다"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "%(instance_name)s 인스턴스에 %(mountpoint)s 마운트지점이 탈착되었습니다"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10223,24 +10266,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10800,7 +10843,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10814,204 +10857,204 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "인스턴스 %s를 재부팅합니다"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ko_KR/LC_MESSAGES/nova.po b/nova/locale/ko_KR/LC_MESSAGES/nova.po
index f295e9cbf..a24fd9013 100644
--- a/nova/locale/ko_KR/LC_MESSAGES/nova.po
+++ b/nova/locale/ko_KR/LC_MESSAGES/nova.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-06 16:05+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: en_US <LL@li.org>\n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "Keypair 데이터가 맞지 않습니다"
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3861,46 +3878,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3963,141 +3980,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4233,603 +4250,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4943,18 +4965,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5058,24 +5080,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5612,75 +5634,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5765,6 +5786,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6868,60 +6908,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6931,22 +6974,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7028,12 +7071,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7043,25 +7086,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7855,7 +7898,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8027,50 +8070,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8652,61 +8695,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8714,50 +8757,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8767,67 +8810,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9136,70 +9179,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9271,12 +9314,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9322,7 +9365,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9473,27 +9516,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9903,54 +9946,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10071,19 +10114,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10191,24 +10234,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10768,7 +10811,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10782,203 +10825,203 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "인스턴스 재시작 실패"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ms/LC_MESSAGES/nova.po b/nova/locale/ms/LC_MESSAGES/nova.po
index 7f0229c5a..c1ba072e0 100644
--- a/nova/locale/ms/LC_MESSAGES/nova.po
+++ b/nova/locale/ms/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Malay "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/nb/LC_MESSAGES/nova.po b/nova/locale/nb/LC_MESSAGES/nova.po
index 3f8a3cb00..0a0d77a9c 100644
--- a/nova/locale/nb/LC_MESSAGES/nova.po
+++ b/nova/locale/nb/LC_MESSAGES/nova.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-09-13 10:30+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: nb <LL@li.org>\n"
@@ -172,7 +172,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1301,6 +1301,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Forventet objekt av typen: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1311,7 +1326,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1434,22 +1449,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, fuzzy, python-format
msgid "%s is not a string or unicode"
msgstr "Tjenernavn er ikke en streng eller unicode"
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1961,43 +1976,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Kunne ikke hente metadata for ip:% s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2278,10 +2293,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3871,46 +3888,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3973,141 +3990,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4243,603 +4260,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Nettverk ikke funnet"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Kunne ikke hente metadata for ip:% s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4953,18 +4975,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5068,24 +5090,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5623,76 +5645,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Nettverk ikke funnet"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5777,6 +5798,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Denne regelen eksisterer allerede i gruppen %s"
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6882,60 +6922,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6945,22 +6988,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7043,12 +7086,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7058,25 +7101,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7872,7 +7915,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8044,50 +8087,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8671,61 +8714,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8733,50 +8776,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8786,67 +8829,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9155,70 +9198,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "Tjener ikke funnet"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9290,12 +9333,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9341,7 +9384,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9492,27 +9535,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9922,54 +9965,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10092,19 +10135,19 @@ msgstr "Kan ikke finne adressen %r"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10212,24 +10255,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10790,7 +10833,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10804,203 +10847,203 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "Feil nettverks-format"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/nl_NL/LC_MESSAGES/nova.po b/nova/locale/nl_NL/LC_MESSAGES/nova.po
index 28aea5b71..15eac882a 100644
--- a/nova/locale/nl_NL/LC_MESSAGES/nova.po
+++ b/nova/locale/nl_NL/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Dutch (Netherlands) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/nova.pot b/nova/locale/nova.pot
index 44ddf5515..85ef2a635 100644
--- a/nova/locale/nova.pot
+++ b/nova/locale/nova.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: nova jenkins.nova.propose.translation.update.261\n"
+"Project-Id-Version: nova jenkins.nova.propose.translation.update.266\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1299,6 +1299,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1309,7 +1324,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1432,22 +1447,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1958,43 +1973,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2275,10 +2290,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3858,46 +3875,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3960,141 +3977,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4230,603 +4247,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4940,18 +4962,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5055,24 +5077,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5609,75 +5631,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5762,6 +5783,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6865,60 +6905,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6928,22 +6971,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7025,12 +7068,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7040,25 +7083,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7852,7 +7895,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8024,50 +8067,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8649,61 +8692,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8711,50 +8754,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8764,67 +8807,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9133,70 +9176,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9268,12 +9311,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9319,7 +9362,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9470,27 +9513,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9900,54 +9943,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10068,19 +10111,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10188,24 +10231,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10765,7 +10808,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10779,202 +10822,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/pt/LC_MESSAGES/nova.po b/nova/locale/pt/LC_MESSAGES/nova.po
index 72cfc2e46..7e2317336 100644
--- a/nova/locale/pt/LC_MESSAGES/nova.po
+++ b/nova/locale/pt/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Portuguese "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/pt_BR/LC_MESSAGES/nova.po b/nova/locale/pt_BR/LC_MESSAGES/nova.po
index ab5358d49..3ef65fbfb 100644
--- a/nova/locale/pt_BR/LC_MESSAGES/nova.po
+++ b/nova/locale/pt_BR/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-05-04 19:25+0000\n"
"Last-Translator: Júlio Cezar Santos Pires <Unknown>\n"
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1305,6 +1305,21 @@ msgstr "group %s já existe"
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Objeto esperado do tipo: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1315,7 +1330,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1439,22 +1454,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1971,43 +1986,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "Falha ao obter metadados para o ip: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Capturado o erro: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2288,10 +2303,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "Instância não existe"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3907,46 +3924,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Não é possível anexar o volume na instância %s"
@@ -4016,142 +4033,142 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Começando a terminar instâncias"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Criar Grupo de Segurança %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Não é possível destruir o VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Não é possível destruir o VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Revogado entrada do grupo de segurança %s"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Excluir grupo de segurança %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Autorizada entrada do grupo de segurança %s"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "Revogado entrada do grupo de segurança %s"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4289,621 +4306,626 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Falhou ao reiniciar instância"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Falha ao suspender instância"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Erro inexperado lançado: %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Começando a terminar instâncias"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Capturado o erro: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Começando a terminar instâncias"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Reconstruindo instância %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Desanexar volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Reiniciando a instância %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Reconstruindo instância %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "instância %s: fazendo um snapshot"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "Removendo imagem %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
#, fuzzy
msgid "error setting admin password"
msgstr "Configurar senha do administrador"
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Falha ao suspender instância"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Capturado o erro: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "instância %s: desfazendo o resgate"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "Iniciando instância %s"
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Instância não existe"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "instância %s: recuperando os diagnósticos"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "instância %s: reset da rede"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Obter saída do console para instância %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "Adicionando console"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "Adicionando console"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Desconectando volume da instância desconhecida %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Detach_volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "Rede %(network_id)s não foi encontrada."
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Host %(host)s não encontrado."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Falha ao obter metadados para o ip: %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "A instância %(instance_id)s não está executando."
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Remover volume com id: %s"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "Instância %s não encontrada"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Removendo imagem %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "Iniciando instância %s"
@@ -5017,18 +5039,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5135,24 +5157,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "Corpo do pedido está mal formado"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5691,76 +5713,75 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "tipo de instância %(instance_type)s é inválida."
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Imagem não encontrada."
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "Removendo rede com id %s"
@@ -5848,6 +5869,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Esta regra já existe no grupo %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "Configurar senha do administrador"
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6958,60 +6998,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "Erro interno"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr "Endereço |%(address)s| não está alocado"
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7021,22 +7064,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr "Endereço |%(address)s| não está alocado"
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7119,12 +7162,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7134,25 +7177,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "Não foi possível carregar o driver de virtualização: %s"
@@ -7958,7 +8001,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8131,50 +8174,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "Removendo rede com id %s"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8775,61 +8818,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Obtendo o tamanho da imagem para a imagem %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8837,50 +8880,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8890,67 +8933,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Falha de Autenticação: %s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9259,70 +9302,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "group %s já existe"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9396,12 +9439,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9447,7 +9490,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9598,27 +9641,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr "nenhuma partição encontrada"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10033,54 +10076,54 @@ msgstr "Remover volume com id: %s"
msgid "Renamed the VM from %s"
msgstr "Não é possível localizar o volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10203,19 +10246,19 @@ msgstr "Não foi possível criar volume"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Ponto de montagem %(mountpoint)s desanexada da instância %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10323,24 +10366,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10909,7 +10952,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, fuzzy, python-format
msgid "Updating progress to %(progress)d"
msgstr "Atualizando agente para %s"
@@ -10923,205 +10966,205 @@ msgstr "Iniciando a Bridge para %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Iniciando instância %s"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Falha ao suspender instância"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Falhou ao reiniciar instância"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Criando a VIF para VM %(vm_ref)s, rede %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Criando a VIF para VM %(vm_ref)s, rede %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/ru/LC_MESSAGES/nova.po b/nova/locale/ru/LC_MESSAGES/nova.po
index 5605998f2..bb0247486 100644
--- a/nova/locale/ru/LC_MESSAGES/nova.po
+++ b/nova/locale/ru/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-03-25 09:34+0000\n"
"Last-Translator: Eugene Marshal <Unknown>\n"
"Language-Team: Russian <ru@li.org>\n"
@@ -178,7 +178,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1333,6 +1333,21 @@ msgstr "Тип копии %(name)s уже существует."
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Ожидался объект типа: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1343,7 +1358,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1467,22 +1482,22 @@ msgstr "timefunc: '%(name)s' заняла %(total_time).2f с."
msgid "Reloading cached file %s"
msgstr "Выгрузка образа %s"
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, fuzzy, python-format
msgid "Could not remove tmpdir: %s"
msgstr "Ошибка удаления контейнера: %s"
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -2012,26 +2027,26 @@ msgstr "Недопустимый запрос: %s"
msgid "Failed to get metadata for instance id: %s"
msgstr "Ошибка получения метаданных для ip: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Обнаружена ошибка: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr "%(url)s возвратил с HTTP %(status)d"
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr "Расширенный ресурс: %s"
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
@@ -2040,17 +2055,17 @@ msgstr ""
"Расширение %(ext_name)s: Невозможно расширить ресурс %(collection)s: Нет "
"такого ресурса"
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr "Расширение %(ext_name)s расширение ресурса: %(collection)s"
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2332,10 +2347,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "Копия не существует"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr "Копия не является участником заданной сети"
@@ -3970,26 +3987,26 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr ""
"Превышена квота копий. Вы не можете запустить дополнительные копии этого "
"типа."
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr "Превышена квота копий. Вы можете запустить только %s копий этого типа."
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, fuzzy, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr "Превышена квота для %(pid)s, попытка выполнить %(min_count)s копий"
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
@@ -3998,23 +4015,23 @@ msgstr ""
"Превышена квота для %(pid)s, попытка назначить %(num_metadata)s свойств "
"метаданных"
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "Невозможно присоединить том для копии %s"
@@ -4084,11 +4101,11 @@ msgstr "Поиск по: %s"
msgid "snapshot for %s"
msgstr "Запуск снимка для ВМ %s"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
@@ -4097,62 +4114,62 @@ msgstr ""
"Устаревший тип копии %(current_instance_type_name)s, новый тип копии "
"%(new_instance_type_name)s"
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, fuzzy, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr "Превышена квота для %(pid)s, попытка выполнить %(min_count)s копий"
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "Будет выполнения попытка завершить работу %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr "Группа безопасности %s не может быть пустой."
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, fuzzy, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
@@ -4161,70 +4178,70 @@ msgstr ""
"Значение (%s) для параметра GroupName недопустимо. Длина превышает "
"максимально допустимое значение 255."
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "Создать группу безопасности %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr "Группа безопасности %s уже существует"
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Невозможно ликвидировать vbd %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "Невозможно ликвидировать vbd %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "Группа безопасности (%s) не найдена"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Удалить группу безопасности %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr "Правило (%s) не найдено"
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
#, fuzzy
msgid "Quota exceeded, too many security group rules."
msgstr "Добавление правила группы безопасности: %r"
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4362,213 +4379,213 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Ошибка перезагрузки копии"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
#, fuzzy
msgid "Hypervisor driver does not support resume guests"
msgstr "Драйвер гипервизора не поддерживает правила брандмауэра"
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Ошибка приостановления копии"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr "Драйвер гипервизора не поддерживает правила брандмауэра"
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "Непредвиденный код состояния"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "Выполнение запуска копий"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Ошибка БД: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Выполнение запуска копий"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr "Пропуск DiskNotFound: %s"
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, fuzzy, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr "Пропуск DiskNotFound: %s"
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr "завершение работы bdm %s"
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr "%s. Установка состояния копии vm_state на ERROR"
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "Обновление сборки %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, fuzzy, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr "%(path)s располагается на общедоступном накопителе: %(reason)s"
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Создать снимок из тома %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "Перезагрузка копии %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, fuzzy, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
@@ -4577,22 +4594,22 @@ msgstr ""
"попытка перезагрузки не выполняемой копии: %(instance_uuid)s (состояние: "
"%(state)s ожидалось: %(running)s)"
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "Обновление сборки %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "копия не включена"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "копия %s: выполнение снимка"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, fuzzy, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
@@ -4601,224 +4618,229 @@ msgstr ""
"попытка создания снимка не выполняемой копии: %(instance_uuid)s "
"(состояние: %(state)s ожидалось: %(running)s)"
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr "Найдено %(num_images)d образов (ротация: %(rotation)d)"
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "Удаление образа %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr "Невозможно назначить пароль администратора. Копия %s не выполняется"
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
#, fuzzy
msgid "Root password set"
msgstr "Копия %s: Назначение административного пароля"
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
#, fuzzy
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr "set_admin_password не реализован в этой драйвере."
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, fuzzy, python-format
msgid "set_admin_password failed: %s"
msgstr "set_admin_password не реализован в этой драйвере."
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
#, fuzzy
msgid "error setting admin password"
msgstr "Ошибка назначения пароля администратора"
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Ошибка приостановления копии"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Ошибка БД: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "%s. Установка состояния копии vm_state на ERROR"
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Копия не существует"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr "назначение совпадает с источником!"
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "копия %s: принятие диагностики"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "Восстановление сети"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "установка сетевого узла"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "Получить консольный вывод для копии %s"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "копия %s: получение консоли vnc"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "копия %s: получение консоли vnc"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "Отсоединение тома от неизвестной копии %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "Попытка удаления несуществующей консоли %(console_id)s."
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, fuzzy, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr "сетевые распределения для копии %s"
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "Сеть %(network_id)s не найдена."
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "Узел %(host)s не найден."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
#, fuzzy
msgid "_post_live_migration() is started.."
msgstr "Запущено post_live_migration().."
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
@@ -4827,21 +4849,21 @@ msgstr ""
"отсутствует домен с соответствующим именем.\" Эта ошибка может быть "
"безопасно пропущена."
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
#, fuzzy
msgid "Post operation of migration started"
msgstr "Запущено post_live_migration().."
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Ошибка получения метаданных для ip: %s"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
@@ -4850,64 +4872,64 @@ msgstr ""
"Найдены %(migration_count)d неподтверждённых перемещений, старше "
"%(confirm_window)d секунд"
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, fuzzy, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr "Завершение работы ВМ для копии %(instance_uuid)s"
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "Копия %(instance_id)s не найдена"
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
#, fuzzy
msgid "In ERROR state"
msgstr "Ошибка БД: %s"
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr "Обновление временных данных использования полосы пропускания"
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Обновление временных данных использования полосы пропускания"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr "Обновление состояния узла"
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
@@ -4916,88 +4938,88 @@ msgstr ""
"Найдено %(num_db_instances)s в базе данных и %(num_vm_instances)s в "
"гипервизоре."
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "копия не включена"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
#, fuzzy
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr "FLAGS.reclaim_instance_interval <= 0, пропуск..."
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "LoggingVolumeDriver: %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, fuzzy, python-format
msgid "No service record for host %s"
msgstr "Нет службы для compute ID %s"
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, fuzzy, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
"Не распознанное значение '%(action)s' для "
"FLAGS.running_deleted_instance_action"
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "%s. Установка состояния копии vm_state на ERROR"
@@ -5113,18 +5135,18 @@ msgstr "Невозможно найти узел для копии %s"
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
#, fuzzy
msgid "Invalid block_device_mapping_destroy invocation"
msgstr "block_device_mapping %s"
@@ -5233,24 +5255,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr "Нераспознанное значение read_deleted '%s'"
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "Недопустимый запрос тела"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5804,76 +5826,76 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
-msgstr ""
+#: nova/network/quantumv2/__init__.py:67
+#, fuzzy
+msgid "quantum authentication failed"
+msgstr "Ошибка аутентификации"
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, fuzzy, python-format
msgid "allocate_for_instance() for %s"
msgstr "сетевые распределения для копии %s"
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "сетевые распределения для копии %s"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Узел не найден"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, fuzzy, python-format
msgid "deallocate_for_instance() for %s"
msgstr "исключение сетевых распределений для копии |%s|"
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, fuzzy, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr "Ошибка удаления тома в базе данных"
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, fuzzy, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr "Ошибка удаления тома в базе данных"
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, fuzzy, python-format
msgid "validate_networks() for %s"
msgstr "Недопустимый сетевой формат"
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "установка сетевого узла"
@@ -5965,6 +5987,26 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Это правило уже существует в группе %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "Ошибка назначения пароля администратора"
+
+#: nova/objects/base.py:136
+#, fuzzy
+msgid "Invalid version string"
+msgstr "Недопустимая server_string: %s"
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, fuzzy, python-format
msgid "Original exception being dropped: %s"
@@ -7087,6 +7129,7 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
#, fuzzy
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
@@ -7094,55 +7137,57 @@ msgid ""
msgstr "Превышена квота для %(pid)s, попытка выполнить %(min_count)s копий"
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Выполняемые копии: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "После завершения работы копий: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "Внутренняя ошибка"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr "После принудительного завершения работы копий: %s"
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
#, fuzzy
msgid "spawn error"
msgstr "Ошибка аутентификации"
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr "Адрес |%(address)s| не выделен"
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7152,22 +7197,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr "Адрес |%(address)s| не выделен"
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7253,12 +7298,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr "Создание файлов в %s для имитации гостевого агента"
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr "Удаление файлов имитации гостевого агента в %s"
@@ -7268,25 +7313,25 @@ msgstr "Удаление файлов имитации гостевого аге
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, fuzzy, python-format
msgid "Loading compute driver '%s'"
msgstr "LoggingVolumeDriver: %s"
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "Невозможно загрузить драйвер виртуализации: %s"
@@ -8089,7 +8134,7 @@ msgstr "Версия агента копии: %s"
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8268,50 +8313,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "установка сетевого узла"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8912,27 +8957,27 @@ msgstr ""
"Ошибка libvirt во время поиска %(instance_name)s: [Код ошибки "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
#, fuzzy
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
@@ -8941,35 +8986,35 @@ msgstr ""
"Невозможно получить количество ЦПУ, так как эта возможность не "
"реализована для этой платформы. Эту ошибку можно безопасно пропустить."
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr "устаревшая версия libvirt (не поддерживается getVersion)"
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "Получение размера образа для образа %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8977,21 +9022,21 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, fuzzy, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
@@ -9000,29 +9045,29 @@ msgstr ""
"Создание временного файла %s для оповещения других узлов сети compute о "
"необходимости присоединения того же хранилища."
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -9032,7 +9077,7 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
@@ -9041,22 +9086,22 @@ msgstr ""
"Создание временного файла %s для оповещения других узлов сети compute о "
"необходимости присоединения того же хранилища."
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "Ошибка аутентификации: %s"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, fuzzy, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr "plug_vifs() ошибка %(cnt)d.До %(max_retry)d попыток для %(hostname)s."
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, fuzzy, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
@@ -9065,39 +9110,39 @@ msgstr ""
"Ошибка libvirt во время поиска %(instance_name)s: [Код ошибки "
"%(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
#, fuzzy
msgid "Instance running successfully."
msgstr "Копия %s: выполнение"
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9411,43 +9456,43 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr "Найден узел iSCSI %(mount_device)s (после %(tries)s повторных проверок)"
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "образ уже присоединён"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "iSCSI-устройство не найдено в %s"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, fuzzy, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
"Том ISCSI не найден в: %(mount_device)s. Будет выполнена повторная "
"проверка и попытка. Повторение: %(tries)s"
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, fuzzy, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr "Найден узел iSCSI %(mount_device)s (после %(tries)s повторных проверок)"
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
#, fuzzy
msgid "Fibre Channel device not found."
msgstr "iSCSI-устройство не найдено в %s"
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, fuzzy, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
@@ -9456,30 +9501,30 @@ msgstr ""
"Том ISCSI не найден в: %(mount_device)s. Будет выполнена повторная "
"проверка и попытка. Повторение: %(tries)s"
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, fuzzy, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr "Найден узел iSCSI %(mount_device)s (после %(tries)s повторных проверок)"
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9553,12 +9598,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9605,7 +9650,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9760,27 +9805,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr "маркер [%s] не найден"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr "В vmwareapi:_create_session, принято это исключение: %s"
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr "В vmwareapi:_call_method, принято это исключение: %s"
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr "Состояние задачи [%(task_name)s] %(task_ref)s: готово"
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr "Состояние задачи [%(task_name)s] %(task_ref)s: ошибка %(error_info)s"
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr "В vmwareapi:_poll_task, принята эта ошибка %s"
@@ -10216,54 +10261,54 @@ msgstr "Удалить том с идентификатором: %s"
msgid "Renamed the VM from %s"
msgstr "Создать том из снимка %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, fuzzy, python-format
msgid "Automatically hard rebooting %d"
msgstr "Автоматическая безотказная перезагрузка %d"
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr "Создание папки с адресом %s"
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr "Создана папка с адресом %s"
@@ -10386,14 +10431,14 @@ msgstr "Ошибка поиска тома в базе данных"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "Точка подключения %(mountpoint)s отсоединена от копии %(instance_name)s"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, fuzzy, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
"ВРЕМЯ ПРОСТОЯ: Срок вызова %(method)s истёк. VM id=%(instance_uuid)s; "
"args=%(args)r"
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, fuzzy, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
@@ -10402,7 +10447,7 @@ msgstr ""
"НЕ РЕАЛИЗОВАНО: Вызов %(method)s не поддерживается агентом. VM "
"id=%(instance_uuid)s; args=%(args)r"
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, fuzzy, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr "Вызов %(method)s возвратил ошибку: %(e)s."
@@ -10516,26 +10561,26 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "Ошибка дешифрирования личного ключа: %s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr "Запуск узла на XenServer не поддерживается."
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
"Невозможно выполнить вход в XenAPI (недостаточно свободного места на "
"Dom0?)"
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "Исключение: %s"
@@ -11116,7 +11161,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, fuzzy, python-format
msgid "Updating progress to %(progress)d"
msgstr "Обновление выполнения копии '%(instance_uuid)s' до %(progress)d"
@@ -11130,222 +11175,222 @@ msgstr "Запуск моста интерфейса для %s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "Запуск копии %s"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr "Удаление ядра/ramdisk файлов из dom0"
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, fuzzy, python-format
msgid "Block device information present: %s"
msgstr "block_device_mapping %s"
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "Ошибка обновления тома в базе данных"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
#, fuzzy
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
"Автоматическая настройка диска для копии %(instance_uuid)s, выполняется "
"попытка изменения размера раздела..."
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "Выполнение перезагрузки xvp"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr "Версия агента копии: %s"
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, fuzzy, python-format
msgid "Could not find VM with name %s"
msgstr "Невозможно найти конфигурацию по адресу %(path)s"
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "Готовый снимок и выгрузка для ВМ %s"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr "Ошибка перемещения vhd на новый узел"
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Ошибка перезагрузки копии"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr "Изменение размера VDI %(vdi_uuid)s с %(old_gb)dГБ до %(new_gb)dГБ"
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
#, fuzzy
msgid "Resize complete"
msgstr "Изменение размера копии %s завершено"
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
#, fuzzy
msgid "Unable to find root VBD/VDI for VM"
msgstr "Ошибка поиска vbd для vdi %s"
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "Выполнение перезагрузки xvp"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
#, fuzzy
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
"Копия %(instance_uuid)s использует RAW или VHD, пропуск ядра и удаление "
"ramdisk"
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr "копия содержит ядро или ramdisk, но не оба"
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "файлы ядра/ramdisk удалены"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "Выполнение перезагрузки xvp"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr "ВМ не предоставлена, пропуск выполнения ликвидации..."
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr "Копия в состоянии режима восстановления: %s"
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
#, fuzzy
msgid "VM is not present, skipping soft delete..."
msgstr "ВМ не предоставлена, пропуск выполнения ликвидации..."
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
#, fuzzy
msgid "Automatically hard rebooting"
msgstr "Автоматическая безотказная перезагрузка %d"
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "установка сетевого узла"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
#, fuzzy
msgid "Creating vifs"
msgstr "Создание изображения"
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "Создание VIF для ВМ %(vm_ref)s, сеть %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "Создание VIF для ВМ %(vm_ref)s, сеть %(network_ref)s."
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "Недопустимый сетевой формат"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
#, fuzzy
msgid "Migrate Send failed"
msgstr "Ошибка создания"
diff --git a/nova/locale/ru_RU/LC_MESSAGES/nova.po b/nova/locale/ru_RU/LC_MESSAGES/nova.po
index b8cd128f7..129d3b93e 100644
--- a/nova/locale/ru_RU/LC_MESSAGES/nova.po
+++ b/nova/locale/ru_RU/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Russian (Russia) "
@@ -172,7 +172,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1301,6 +1301,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1311,7 +1326,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1434,22 +1449,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1960,43 +1975,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2277,10 +2292,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3860,46 +3877,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3962,141 +3979,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4232,603 +4249,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4942,18 +4964,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5057,24 +5079,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5611,75 +5633,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5764,6 +5785,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6867,60 +6907,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6930,22 +6973,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7027,12 +7070,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7042,25 +7085,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7854,7 +7897,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8026,50 +8069,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8651,61 +8694,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8713,50 +8756,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8766,67 +8809,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9135,70 +9178,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9270,12 +9313,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9321,7 +9364,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9472,27 +9515,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9902,54 +9945,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10070,19 +10113,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10190,24 +10233,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10767,7 +10810,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10781,202 +10824,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/sw_KE/LC_MESSAGES/nova.po b/nova/locale/sw_KE/LC_MESSAGES/nova.po
index b7f77bc00..e58a3fd35 100644
--- a/nova/locale/sw_KE/LC_MESSAGES/nova.po
+++ b/nova/locale/sw_KE/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Swahili (Kenya) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/tl/LC_MESSAGES/nova.po b/nova/locale/tl/LC_MESSAGES/nova.po
index b66e11f6d..a3e533e05 100644
--- a/nova/locale/tl/LC_MESSAGES/nova.po
+++ b/nova/locale/tl/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-08-23 11:21+0000\n"
"Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
"Language-Team: Tagalog <tl@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1299,6 +1299,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1309,7 +1324,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1432,22 +1447,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1958,43 +1973,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2275,10 +2290,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/tr/LC_MESSAGES/nova.po b/nova/locale/tr/LC_MESSAGES/nova.po
index 28c371201..be8f0300e 100644
--- a/nova/locale/tr/LC_MESSAGES/nova.po
+++ b/nova/locale/tr/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-12-14 18:10+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Turkish <tr@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1299,6 +1299,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1309,7 +1324,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1432,22 +1447,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1958,43 +1973,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2275,10 +2290,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3858,46 +3875,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3960,141 +3977,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4230,603 +4247,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4940,18 +4962,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5055,24 +5077,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5609,75 +5631,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5762,6 +5783,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6865,60 +6905,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6928,22 +6971,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7025,12 +7068,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7040,25 +7083,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7852,7 +7895,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8024,50 +8067,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8649,61 +8692,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8711,50 +8754,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8764,67 +8807,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9133,70 +9176,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9268,12 +9311,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9319,7 +9362,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9470,27 +9513,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9900,54 +9943,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10068,19 +10111,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10188,24 +10231,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10765,7 +10808,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10779,202 +10822,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/tr_TR/LC_MESSAGES/nova.po b/nova/locale/tr_TR/LC_MESSAGES/nova.po
index 8adc0699c..f48e01251 100644
--- a/nova/locale/tr_TR/LC_MESSAGES/nova.po
+++ b/nova/locale/tr_TR/LC_MESSAGES/nova.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-02-02 18:03+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: en_US <LL@li.org>\n"
@@ -172,7 +172,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "Anahtar çifti verisi geçersiz"
@@ -1330,6 +1330,21 @@ msgstr "%(name)s örneği zaten var."
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "Beklenen nesne türü: %s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1340,7 +1355,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr "Yetenekler zamanlayıcısı bildiriliyor ..."
@@ -1464,22 +1479,22 @@ msgstr "Zaman Fonksiyonu: %(name)s %(total_time).2f saniye sürdü"
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, fuzzy, python-format
msgid "%s is not a string or unicode"
msgstr "%s güvenlik grubu string veya unicode değil"
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1994,26 +2009,26 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "IP için metadata alma hata ile sonuçlandı: %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "Yakalama hatası: %s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr "%(url)s HTTP %(status)d ile geri döndü"
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr "UzantıYöneticisi sınıfı belirlenmek zorunda"
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr "Genişletilmiş kaynak: %s"
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
@@ -2022,17 +2037,17 @@ msgstr ""
"%(ext_name)s uzantısı: %(collection)s kaynağı genişletilemiyor: Böyle bir"
" kaynak yok"
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr "%(ext_name)s uzantısı kaynağı genişletiyor: %(collection)s"
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2315,10 +2330,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "Örnek mevcut değil"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr "Örnek belirlenmiş ağın bir üyesi değil"
@@ -3940,46 +3957,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -4044,11 +4061,11 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
@@ -4057,130 +4074,130 @@ msgstr ""
"Eski örnek türü %(current_instance_type_name)s, yeni örnek türü "
"%(new_instance_type_name)s"
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr "Anahtar çifti adı 1-255 karakter arası uzunluğunda olmak zorunda"
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr "%s güvenlik grubu string veya unicode değil"
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr "%s güvenlik grubu boş bırakılamaz."
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr "%s güvenlik grubu 255 karakterden fazla olmamalıdır."
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "%s güvenlik grubunu oluşturunuz"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr "%s güvenlik grubu zaten var"
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "Geçersiz güncelleme ayarı: '%s'"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "%s güvenlik grubunu siliniz"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr "Kural (%s) bulunamadı"
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "Yetkilendirilmiş %s güvenlik grubu girişi"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "%s güvenlik grubu girişini iptal et"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr "Güvenlik grup id'si integer olmak zorunda"
@@ -4317,526 +4334,531 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "Tekrar yükleme örneğinde hata oluştu."
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr "Mevcut durum %(drv_state)s, veritabanındaki durum %(db_state)s."
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "Örnek kapatmada hata oluştu."
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr "Misafir sistem sürücüsü güvenlik duvarı kurallarını desteklemiyor"
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "BeklenmeyenHata: %s"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr "Durum kontrol ediliyor"
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr "%s blok aygıt haritalandırması ayarlanıyor"
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
#, fuzzy
msgid "Instance was deleted during spawn."
msgstr "Örnek oluşturmada hata"
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Veritabanı hatası: %s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr "Örnek başlatılıyor.."
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr "Ağ kurulumundaki örnek başarısız"
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr "Örnek ağ_bilgisi: |%s|"
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr "Örnek blok aygıtı kurulumu hatalı"
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr "Örnek oluşturmada hata"
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr "Örnek için ağ serbest bırakılıyor"
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr "%(action_str)s örneği"
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "Örnek için ağ serbest bırakılıyor"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr "DiskBulunamadı yok sayılıyor: %s"
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr "Blok cihazı haritalandırması kapatılıyor %s"
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Birimi ayır %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr "%(num_images)d tane imaj bulundu(dönüş: %(rotation)d)"
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "İmaj siliniyor %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr "Yönetici parolası oluşturmada hata. %s örneği çalışmıyor."
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "Örnek kapatmada hata oluştu."
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "Veritabanı hatası: %s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "Örneğin hiç bölümü yok."
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr "dedef kaynak ile aynı!"
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "Konsol ekleniyor"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr "%(mountpoint)s'de %(volume_id)s bölümü ön yükleniyor"
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr "%(mountpoint)s'e %(volume_id)s bölümü bağlanıyor"
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr "%(mp)s bağlama noktasındaki %(volume_id)s bölümü ayrılıyor"
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "%(mp)s bağlama noktasındaki %(volume_id)s bölümü ayrılıyor"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "%(volume_id)s bölümü hiçbir şeyle ilişkilendirilmedi"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "%(host)s sunucusu bulunamadı."
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr "Güncel göç işlemi %(dest)s'da bir hata ile karşılaştı"
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr "%(dest)s'a örnek göçü işlemi başarıyla tamamlandı."
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "Tekrar yükleme örneğinde hata oluştu."
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr "Bant genişliği kullanım önbelleği güncelleniyor"
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Bant genişliği kullanım önbelleği güncelleniyor"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr "Sunucu durumu güncelleniyor"
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
@@ -4845,84 +4867,84 @@ msgstr ""
"Veritabanında %(num_db_instances)s ve misafir sistemde "
"%(num_vm_instances)s bulundu"
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr "Silinen örnek kurtarılıyor"
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "İmaj siliniyor %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -5037,18 +5059,18 @@ msgstr "%s örneği için sunucu bulma başarısız"
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5155,24 +5177,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr "Tanınmayan silinmiş okuma değeri '%s'"
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "%s geçerli bir örnek ismidir"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5712,76 +5734,76 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr "miras nw_info için v4 alt ağları gerekiyor"
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
-msgstr ""
+#: nova/network/quantumv2/__init__.py:67
+#, fuzzy
+msgid "quantum authentication failed"
+msgstr "Kimlik doğrulama hatası"
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "Öğe bulunamadı"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5873,6 +5895,26 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Bu kural zaten grupta var %s"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "XVP başlatılırken hata oluştu: %s"
+
+#: nova/objects/base.py:136
+#, fuzzy
+msgid "Invalid version string"
+msgstr "Geçersiz server_string: %s"
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6980,61 +7022,64 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "Örnekler çalışıyor: %s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "Örnekleri sonlandırmanın ardından: %s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "İçsel hata"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr "Zorla öldürülen örneklerin ardından: %s"
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
#, fuzzy
msgid "spawn error"
msgstr "Kimlik doğrulama hatası"
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7044,22 +7089,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7145,12 +7190,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr "Konuk aracı benzetmek için %s'de dosyalar oluşturuluyor"
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr "%s'deki benzetilmiş konuk aracı dosyaları kaldırılıyor"
@@ -7160,25 +7205,25 @@ msgstr "%s'deki benzetilmiş konuk aracı dosyaları kaldırılıyor"
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "Sanallaştırma sürücüsü yükleme başarısız: %s"
@@ -7978,7 +8023,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8150,50 +8195,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, fuzzy, python-format
msgid "Cannot find boot VHD file: %s"
msgstr "Bilinmeyen temel dosya: %s"
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8781,61 +8826,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8843,21 +8888,21 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, fuzzy, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
@@ -8866,29 +8911,29 @@ msgstr ""
"Diğer hesaplama düğümlerini haberdar etmek için %s geçici dosyası "
"oluşturuluyor. Düğümler aynı belleğe bağlanmalıdır."
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr "Blok göçü paylaşılan hafıza ile kullanılamaz."
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8903,7 +8948,7 @@ msgstr ""
" \n"
" Bkz: %(u)s"
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
@@ -8912,62 +8957,62 @@ msgstr ""
"Diğer hesaplama düğümlerini haberdar etmek için %s geçici dosyası "
"oluşturuluyor. Düğümler aynı belleğe bağlanmalıdır."
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, fuzzy, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
"plug_vifs() %(cnt)d kez başarısız oldu. %(hostname)s için %(max_retry)d "
"denemeye kadar tekrar deneniyor."
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr "Birim gibi göründüğünden beri %(path)s atlanıyor"
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9278,71 +9323,71 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "%s'de iSCSI cihazı bulunamadı"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
#, fuzzy
msgid "Fibre Channel device not found."
msgstr "%s'de iSCSI cihazı bulunamadı"
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9414,12 +9459,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9465,7 +9510,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9616,27 +9661,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr " [%s] göstergesi bulunamadı"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -10046,54 +10091,54 @@ msgstr "%s sistem görüntüsünden birim oluştur"
msgid "Renamed the VM from %s"
msgstr "%s sistem görüntüsünden birim oluştur"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10216,19 +10261,19 @@ msgstr "Geçersiz bölüm"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10336,24 +10381,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10915,7 +10960,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10929,205 +10974,205 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "Örnek tür oluşturulamıyor."
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "XVP tekar başlatılıyor"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "Hatalı ağ biçimi"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/uk/LC_MESSAGES/nova.po b/nova/locale/uk/LC_MESSAGES/nova.po
index 802ada55a..156b0460c 100644
--- a/nova/locale/uk/LC_MESSAGES/nova.po
+++ b/nova/locale/uk/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2011-08-23 11:21+0000\n"
"Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
"Language-Team: Ukrainian <uk@li.org>\n"
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1961,43 +1976,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2278,10 +2293,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3863,46 +3880,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3965,141 +3982,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "Вилучити групу безпеки %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4235,604 +4252,609 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "Від'єднати том %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "Від'єднати том %s"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "Від'єднати том %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4946,18 +4968,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5061,24 +5083,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5615,75 +5637,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5769,6 +5790,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr "Це правило вже існує в групі %s"
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6872,60 +6912,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6935,22 +6978,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7032,12 +7075,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7047,25 +7090,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7859,7 +7902,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8031,50 +8074,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8656,61 +8699,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8718,50 +8761,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8771,67 +8814,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9140,70 +9183,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9275,12 +9318,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9326,7 +9369,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9477,27 +9520,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9907,54 +9950,54 @@ msgstr "Від'єднати том %s"
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10075,19 +10118,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10195,24 +10238,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10772,7 +10815,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10786,202 +10829,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/vi_VN/LC_MESSAGES/nova.po b/nova/locale/vi_VN/LC_MESSAGES/nova.po
index fd76eff45..23b5ac38c 100644
--- a/nova/locale/vi_VN/LC_MESSAGES/nova.po
+++ b/nova/locale/vi_VN/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-13 19:22+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Vietnamese (Viet Nam) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/zh_CN/LC_MESSAGES/nova.po b/nova/locale/zh_CN/LC_MESSAGES/nova.po
index a397247ac..ebaa9aba2 100644
--- a/nova/locale/zh_CN/LC_MESSAGES/nova.po
+++ b/nova/locale/zh_CN/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-05-07 06:51+0000\n"
"Last-Translator: Edward <Unknown>\n"
"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
@@ -173,7 +173,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "密钥对数据无效"
@@ -1317,6 +1317,21 @@ msgstr "实例类型 %(name)s 已经存在。"
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, fuzzy, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr "期望的对象类型:%s"
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1327,7 +1342,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr "向调度器通报能力。"
@@ -1451,22 +1466,22 @@ msgstr "timefunc:'%(name)s' 用了%(total_time).2f 秒"
msgid "Reloading cached file %s"
msgstr "正在删除基文件:%s"
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, fuzzy, python-format
msgid "Could not remove tmpdir: %s"
msgstr "移除容器失败:%s"
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, fuzzy, python-format
msgid "%s is not a string or unicode"
msgstr "服务器名称不是字符串或者unicode"
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, fuzzy, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr "密钥对名称长度必须在1到255个字符之间"
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1994,43 +2009,43 @@ msgstr "无效的请求:%s"
msgid "Failed to get metadata for instance id: %s"
msgstr "为ip: %s获取元数据失败"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr "抓到错误:%s"
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr "%(url)s 随HTTP %(status)d返回"
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr "必须明确一个ExtensionManager类"
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr "扩展资源:%s"
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr "扩展%(ext_name)s:无法扩展资源 %(collection)s:没有那种资源"
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr "扩展资源的扩展 %(ext_name)s:%(collection)s"
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2312,10 +2327,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr "实例不存在"
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr "实例并不是指定网络的成员"
@@ -3958,49 +3975,49 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
#, fuzzy
msgid "Cannot run any more instances of this type."
msgstr "超过实例的配额。您无法运行更多此类型的实例。"
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, fuzzy, python-format
msgid "Can only run %s more instances of this type."
msgstr "超过实例的配额。您只能再运行 %s 个此类型的实例。"
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, fuzzy, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr "%(pid)s 已经超过配额,试图运行 %(min_count)s 个实例"
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr "%(pid)s 已经超过配额,试图设置 %(num_metadata)s 个元数据属性"
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
#, fuzzy
msgid "Metadata property key greater than 255 characters"
msgstr "安全组 %s 不能比255个字符更长。"
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
#, fuzzy
msgid "Metadata property value greater than 255 characters"
msgstr "安全组 %s 不能比255个字符更长。"
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "无法附加卷到实例 %s"
@@ -4070,143 +4087,143 @@ msgstr "搜索条件: %s"
msgid "snapshot for %s"
msgstr "开始为虚拟机 %s 快照"
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr "flavor_id为空。假定在迁移。"
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr "旧的实例类型 %(current_instance_type_name)s,新的实例类型 %(new_instance_type_name)s"
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, fuzzy, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr "%(pid)s 已经超过配额,试图运行 %(min_count)s 个实例"
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, fuzzy, python-format
msgid "Going to try to live migrate instance to %s"
msgstr "准备尝试终止实例 %s"
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr "密钥对名称长度必须在1到255个字符之间"
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr "安全组 %s 既不是字符串也不是unicode"
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr "安全组 %s 不能为空。"
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, fuzzy, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr "参数GroupName的值 (%s) 无效。长度超过了上限255。"
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr "安全组 %s 不能比255个字符更长。"
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr "创建安全组 %s"
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr "安全组 %s 已经存在"
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "无法销毁VBD %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "无法销毁VBD %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
#, fuzzy
msgid "Security group is still in use"
msgstr "安全组id应该是整数"
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr "删除安全组 %s"
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr "没有找到规则 (%s)"
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
#, fuzzy
msgid "Quota exceeded, too many security group rules."
msgstr "添加安全组规则:%r"
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr "授权 %s 安全组入口权限"
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr "撤销 %s 安全组入口权限"
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr "安全组id应该是整数"
@@ -4345,283 +4362,283 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr "重新启动实例失败"
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr "当前状态是 %(drv_state)s,数据库状态是 %(db_state)s。"
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr "nova-compute重启后,实例正在重启。"
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
#, fuzzy
msgid "Hypervisor driver does not support resume guests"
msgstr "虚拟机管理程序驱动不支持防火墙规则"
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "挂起实例失败"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr "虚拟机管理程序驱动不支持防火墙规则"
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, fuzzy, python-format
msgid "Unexpected power state %d"
msgstr "意外的状态码"
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr "正在检查状态"
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr "正在设置 bdm %s"
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
#, fuzzy
msgid "Failed to dealloc network for deleted instance"
msgstr "释放实例的网络"
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
#, fuzzy
msgid "Instance was deleted during spawn."
msgstr "实例生产失败"
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, fuzzy, python-format
msgid "Error: %s"
msgstr "数据库错误:%s"
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr "正在启动虚拟机"
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr "实例网络设置失败"
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr "实例的network_info:|%s|"
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr "实例块设备设置失败"
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr "实例生产失败"
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr "释放实例的网络"
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr "%(action_str)s 实例"
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
#, fuzzy
msgid "Failed to deallocate network for instance."
msgstr "释放实例的网络"
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr "忽略异常 DiskNotFound: %s"
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, fuzzy, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr "忽略异常 DiskNotFound: %s"
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr "终止bdm %s"
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr "%s。把实例的 vm_state设置为ERROR"
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
#, fuzzy
msgid "Rebuilding instance"
msgstr "正在重新创建实例 %s"
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, fuzzy, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr "%(path)s 在共享存储上:%(reason)s"
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "为卷 %s 创建快照"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
#, fuzzy
msgid "Rebooting instance"
msgstr "正在重启虚拟机 %s"
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, fuzzy, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr "试图重启一个没有运行的实例:%(instance_uuid)s (状态:%(state)s 预计:%(running)s)"
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "无法重新创建实例 [%(instance_uuid)s]: %(exc)s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
#, fuzzy
msgid "Instance disappeared during reboot"
msgstr "实例 %s:重启"
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
#, fuzzy
msgid "instance snapshotting"
msgstr "实例 %s: 快照中"
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, fuzzy, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr "试图为一个没有运行的实例快照:%(instance_uuid)s (状态:%(state)s 预计:%(running)s)"
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr "找到 %(num_images)d 个镜像 (rotation: %(rotation)d)"
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr "轮换出%d个备份"
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr "正在删除镜像 %s"
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr "设置管理员密码失败。实例 %s 没有运行"
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
#, fuzzy
msgid "Root password set"
msgstr "实例 %s:Root密码已设置"
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
#, fuzzy
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr "该驱动不能执行set_admin_password。"
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, fuzzy, python-format
msgid "set_admin_password failed: %s"
msgstr "该驱动不能执行set_admin_password。"
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
#, fuzzy
msgid "error setting admin password"
msgstr "设置管理员密码出错"
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, fuzzy, python-format
msgid ""
"trying to inject a file into a non-running (state: "
@@ -4630,179 +4647,184 @@ msgstr ""
"试图把一个文件注入到没有运行的实例:%(instance_uuid)s (状态: %(current_power_state)s 预计: "
"%(expected_state)s)"
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, fuzzy, python-format
msgid "injecting file to %(path)s"
msgstr "注入文件路径:'%s'"
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "挂起实例失败"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, fuzzy, python-format
msgid "Driver Error: %s"
msgstr "数据库错误:%s"
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
#, fuzzy
msgid "Unrescuing"
msgstr "实例 %s:取消救援"
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, fuzzy, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr "设置实例 %(instance_uuid)s 至 ERROR 状态"
+
+#: nova/compute/manager.py:2330
#, fuzzy
msgid "Instance has no source host"
msgstr "实例没有卷。"
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr "目标与来源一样。"
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
#, fuzzy
msgid "Pausing"
msgstr "正在更新。"
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
#, fuzzy
msgid "Retrieving diagnostics"
msgstr "实例 %s :获取诊断"
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
#, fuzzy
msgid "Reset network"
msgstr "重置网络"
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
#, fuzzy
msgid "Inject network info"
msgstr "实例 %s:注入网络信息"
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr "将注入的network_info:|%s|"
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
#, fuzzy
msgid "Get console output"
msgstr "获取实例 %s 控制台输出"
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
#, fuzzy
msgid "Getting vnc console"
msgstr "实例 %s:正在获得VNC控制台"
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
#, fuzzy
msgid "Getting spice console"
msgstr "实例 %s:正在获得VNC控制台"
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr "卷 %(volume_id)s 正在 %(mountpoint)s 上启动"
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr "正在把卷 %(volume_id)s 附加到 %(mountpoint)s"
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, fuzzy, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr "卷 %(volume_id)s 正在 %(mountpoint)s 上启动"
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "正在把卷 %(volume_id)s 附加到 %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr "卷 %(volume_id)s 从挂载点 %(mp)s 分离"
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "从未知实例%s中分离卷"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "正在把卷 %(volume_id)s 附加到 %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, fuzzy, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr "实例 %s 的网络分配"
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, fuzzy, python-format
msgid "Port %(port_id)s is not attached"
msgstr "网络 %(network_id)s 没有找到。"
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, fuzzy, python-format
msgid "Host %(host)s not found"
msgstr "主机 %(host)s 没有找到。"
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr "预在线迁移在%(dest)s失败"
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
#, fuzzy
msgid "_post_live_migration() is started.."
msgstr "post_live_migration()已经启动。"
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr "把实例迁移到 %(dest)s 成功完成。"
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
@@ -4810,171 +4832,171 @@ msgstr ""
"你会看到错误“libvirt: QEMU error: Domain not found: no domain with matching "
"name。”这个错误可以放心的忽略。"
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
#, fuzzy
msgid "Post operation of migration started"
msgstr "迁移后操作启动"
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, fuzzy, python-format
msgid "Failed to get compute_info for %s"
msgstr "为ip: %s获取元数据失败"
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr "发现 %(migration_count)d 个超过 %(confirm_window)d 秒未经确认的迁移"
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, fuzzy, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr "为实例 %(instance_uuid)s 关闭虚拟机"
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, fuzzy, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr "没有找到实例 %(instance_id)s"
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
#, fuzzy
msgid "In ERROR state"
msgstr "节点处于未知的错误状态。"
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr "更新带宽使用缓存"
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
#, fuzzy
msgid "Updating volume usage cache"
msgstr "更新带宽使用缓存"
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr "更新主机状态"
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr "在数据库中找到 %(num_db_instances)s个实例,在虚拟机管理程序找到 %(num_vm_instances)s 个实例。"
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
#, fuzzy
msgid "Instance is not (soft-)deleted."
msgstr "实例未启动"
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
#, fuzzy
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr "FLAGS.reclaim_instance_interval <= 0,跳过..."
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr "回收删除的实例"
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, fuzzy, python-format
msgid "Deleting orphan compute node %s"
msgstr "LoggingVolumeDriver: %s"
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, fuzzy, python-format
msgid "No service record for host %s"
msgstr "计算节点 %s 没有服务"
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, fuzzy, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr "检测标签名为 '%(name_label)s' 的实例,这些实例被标识为DELETED却仍然存在于主机上。"
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, fuzzy, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr "销毁标签名为 '%(name_label)s' 的实例,这些实例被标识为DELETED却仍然存在于主机上。"
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, fuzzy, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr "无法识别的FLAGS.running_deleted_instance_action的取值 '%(action)s'"
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, fuzzy, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr "设置实例 %(instance_uuid)s 至 ERROR 状态"
@@ -5090,18 +5112,18 @@ msgstr "无法找到实例 %s 的宿主机"
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
#, fuzzy
msgid "Invalid block_device_mapping_destroy invocation"
msgstr "block_device_mapping %s"
@@ -5210,24 +5232,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr "无法识别的 read_deleted 取值”%s“"
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, fuzzy, python-format
msgid "Invalid instance id %s in request"
msgstr "实例 %s:已救援"
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5774,76 +5796,76 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr "遗留的网络信息 nw_info 要求使用 IPv4 子网"
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
-msgstr ""
+#: nova/network/quantumv2/__init__.py:67
+#, fuzzy
+msgid "quantum authentication failed"
+msgstr "认证错误"
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, fuzzy, python-format
msgid "allocate_for_instance() for %s"
msgstr "实例 %s 的网络分配"
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, fuzzy, python-format
msgid "empty project id for instance %s"
msgstr "实例 %s 的网络分配"
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
#, fuzzy
msgid "Port not found"
msgstr "没有找到主机"
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, fuzzy, python-format
msgid "deallocate_for_instance() for %s"
msgstr "为实例 |%s| 解除网络分配"
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, fuzzy, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr "在数据库删除卷失败"
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, fuzzy, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr "在数据库删除卷失败"
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, fuzzy, python-format
msgid "get_instance_nw_info() for %s"
msgstr "实例的network_info:|%s|"
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, fuzzy, python-format
msgid "validate_networks() for %s"
msgstr "错误的网络格式"
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, fuzzy, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr "找不到适合id %(id)s 的浮动IP。"
@@ -5931,6 +5953,26 @@ msgstr "安全组 %(security_group_id)s 没有与实例 %(instance_id)s 关联
msgid "This rule already exists in group %s"
msgstr "这条规则已经存在于组%s 中"
+#: nova/objects/base.py:52
+#, fuzzy, python-format
+msgid "Error setting %(attr)s"
+msgstr "设置管理员密码出错"
+
+#: nova/objects/base.py:136
+#, fuzzy
+msgid "Invalid version string"
+msgstr "不正确的server_string:%s"
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, fuzzy, python-format
msgid "Original exception being dropped: %s"
@@ -7053,6 +7095,7 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
#, fuzzy
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
@@ -7060,55 +7103,57 @@ msgid ""
msgstr "%(pid)s 已经超过配额,试图运行 %(min_count)s 个实例"
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr "正在运行的实例:%s"
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr "终止实例之后:%s"
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr "内部错误"
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr "强制杀死实例后:%s"
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
#, fuzzy
msgid "spawn error"
msgstr "未知的guestmount错误"
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr "地址 |%(address)s| 没有分配"
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -7118,22 +7163,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, fuzzy, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr "地址 |%(address)s| 没有分配"
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7219,12 +7264,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr "在%s 创建文件模拟客户代理"
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr "移除在 %s 的模拟的客户代理文件"
@@ -7234,25 +7279,25 @@ msgstr "移除在 %s 的模拟的客户代理文件"
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, fuzzy, python-format
msgid "Loading compute driver '%s'"
msgstr "LoggingVolumeDriver: %s"
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
#, fuzzy
msgid "Unable to load the virtualization driver"
msgstr "无法加载虚拟驱动:%s"
@@ -8060,7 +8105,7 @@ msgstr "实例代理版本:%s"
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr "正在更新主机状态"
@@ -8242,51 +8287,51 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr "实例 %s:开始执行 finish_revert_migration"
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "找不到适合id %(id)s 的浮动IP。"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
#, fuzzy
msgid "finish_migration called"
msgstr "实例 %s:开始执行 finish_migration"
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, fuzzy, python-format
msgid "Cannot find boot VHD file: %s"
msgstr "未知的基文件:%s"
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8891,62 +8936,62 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr "查找 %(instance_name)s时libvirt出错:[错误代码 %(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
#, fuzzy
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr "无法得到CPU的数目,因为这个函数不是给这个平台执行的。这个错误可以被放心忽略。"
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr "libvirt版本过旧(不支持getVersion)"
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "正在获取镜像 %s 的大小"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8954,37 +8999,37 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, fuzzy, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr "创建tmpfile %s 来通知其他的计算节点需要挂载相同的存储。"
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr "块存储迁移无法在共享存储使用"
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
#, fuzzy
msgid "Live migration can not be used without shared storage."
msgstr "块存储迁移无法在共享存储使用"
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, fuzzy, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
@@ -8993,7 +9038,7 @@ msgstr ""
"无法迁移%(instance_id)s 到 %(dest)s 上:缺少磁盘(主机:%(available)s <= "
"实例:%(necessary)s)"
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
@@ -9002,7 +9047,7 @@ msgstr ""
"已启动实例的CPU信息:\n"
"%s"
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -9017,71 +9062,71 @@ msgstr ""
"\n"
"参考 %(u)s"
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr "创建tmpfile %s 来通知其他的计算节点需要挂载相同的存储。"
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, fuzzy, python-format
msgid "Live Migration failure: %(e)s"
msgstr "预在线迁移在%(dest)s失败"
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, fuzzy, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr "plug_vifs() 失败%(cnt)d 次。最多重新尝试 %(max_retry)d 次在主机 %(hostname)s。"
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, fuzzy, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr "查找 %(instance_name)s时libvirt出错:[错误代码 %(error_code)s] %(ex)s"
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr "因它像卷,所以跳过 %(path)s"
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
#, fuzzy
msgid "Starting migrate_disk_and_power_off"
msgstr "实例 %s:开始执行 migrate_disk_and_power_off"
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
#, fuzzy
msgid "Instance running successfully."
msgstr "实例 %s 成功运行。"
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
#, fuzzy
msgid "Starting finish_migration"
msgstr "实例 %s:开始执行 finish_migration"
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
#, fuzzy
msgid "Starting finish_revert_migration"
msgstr "实例 %s:开始执行 finish_revert_migration"
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, fuzzy, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr "删除实例文件 %(target)s"
@@ -9395,71 +9440,71 @@ msgstr "在 %(mount_device)s 上还没有找到iSCSI卷。将再次扫描并重
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr "找到iSCSI节点 %(mount_device)s (经过%(tries)s 次再扫描)"
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, fuzzy, python-format
msgid "%s is already mounted"
msgstr "镜像已经挂载"
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, fuzzy, python-format
msgid "AoE device not found at %s"
msgstr "在 %s 未找到iSCSI设备"
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, fuzzy, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr "在 %(mount_device)s 上还没有找到iSCSI卷。将再次扫描并重试。尝试次数:%(tries)s"
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, fuzzy, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr "找到iSCSI节点 %(mount_device)s (经过%(tries)s 次再扫描)"
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
#, fuzzy
msgid "Fibre Channel device not found."
msgstr "在 %s 未找到iSCSI设备"
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, fuzzy, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr "在 %(mount_device)s 上还没有找到iSCSI卷。将再次扫描并重试。尝试次数:%(tries)s"
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, fuzzy, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr "找到iSCSI节点 %(mount_device)s (经过%(tries)s 次再扫描)"
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9533,12 +9578,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9586,7 +9631,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9739,27 +9784,27 @@ msgstr "针对useconnection_type=vmwareapi必须指定vmwareapi_host_ip,vmwareap
msgid "VMware Cluster %s is not found"
msgstr "没有找到标记 [%s]"
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr "在vmwareapi:_create_session,得到这个异常:%s"
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr "在vmwareapi:_call_method,得到这个异常:%s"
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr "任务 [%(task_name)s] %(task_ref)s 状态:成功"
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr "任务 [%(task_name)s] %(task_ref)s 状态:错误 %(error_info)s"
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr "在vmwareapi:_poll_task,得到这个错误 %s"
@@ -10208,56 +10253,56 @@ msgstr "正在删除volumeID:%s "
msgid "Renamed the VM from %s"
msgstr "从快照 %s 创建卷"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr "找到%(instance_count)d个超过%(timeout)d秒悬挂的重启"
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, fuzzy, python-format
msgid "Automatically hard rebooting %d"
msgstr "自动冷重启 %d"
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr "get_diagnostics 没有在 vmwareapi 里实现"
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
#, fuzzy
msgid "Reconfiguring VM instance to set the machine id"
msgstr "正在重新配置虚拟机实例 %s 来附加镜像磁盘"
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
#, fuzzy
msgid "Reconfigured VM instance to set the machine id"
msgstr "已经重新配置虚拟机实例 %s 来附加于镜像磁盘"
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, fuzzy, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr "正在重新配置实例 %(name)s 来设置机器的id为ip - %(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, fuzzy, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr "已经重新配置虚拟机实例 %(name)s 来设置机器的id为ip - %(ip_addr)s"
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr "正在使用路径 %s 创建目录"
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr "已经创建路径为 %s 的目录"
@@ -10380,19 +10425,19 @@ msgstr "没有在数据库找到卷"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "挂载点 %(mountpoint)s 从实例 %(instance_name)s 分离"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, fuzzy, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr "超时:调用 %(method)s 超时。虚拟机id=%(instance_uuid)s; args=%(args)r"
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, fuzzy, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr "没有执行:代理不支持 %(method)s 的调用。虚拟机id=%(instance_uuid)s; args=%(args)r"
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, fuzzy, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr "对 %(method)s 的调用返回错误:%(e)s。"
@@ -10505,24 +10550,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, fuzzy, python-format
msgid "Could not determine key: %s"
msgstr "解密私钥失败:%s"
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr "不支持在XenServer启动主机"
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr "无法登录到XenAPI(Dom0磁盘是空么?)"
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr "得到异常:%s"
@@ -11092,7 +11137,7 @@ msgstr "挂载文件系统失败(期望的是非Linux实例):%s"
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, fuzzy, python-format
msgid "Updating progress to %(progress)d"
msgstr "将实例 '%(instance_uuid)s' 的进度更新到 %(progress)d"
@@ -11106,219 +11151,219 @@ msgstr "正在删除基文件:%s"
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
#, fuzzy
msgid "Starting instance"
msgstr "正在启动虚拟机"
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr "从 dom0 中移除内核/内存盘文件"
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, fuzzy, python-format
msgid "Block device information present: %s"
msgstr "block_device_mapping %s"
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
#, fuzzy
msgid "Failed to spawn, rolling back"
msgstr "在数据库更新卷失败"
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
#, fuzzy
msgid "Auto configuring disk, attempting to resize partition..."
msgstr "正在自动配置实例 %(instance_uuid)s 的磁盘,尝试调整分区大小..."
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
#, fuzzy
msgid "Starting VM"
msgstr "重启xvp"
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr "%(hypervisor)s/%(os)s/%(architecture)s 最新的agent build 是 %(version)s 版本"
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr "没有找到 %(hypervisor)s/%(os)s/%(architecture)s 的代理创建"
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr "实例代理版本:%s"
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr "设置VCPU 权重"
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, fuzzy, python-format
msgid "Could not find VM with name %s"
msgstr "找不到VDI ref"
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
#, fuzzy
msgid "Finished snapshot and upload for VM"
msgstr "快照完毕并为虚拟机 %s 上传"
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr "将 vhd 转移到新主机失败"
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "重新启动实例失败"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr "将 VDI %(vdi_uuid)s 由 %(old_gb)dGB 调大到 %(new_gb)dGB"
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
#, fuzzy
msgid "Resize complete"
msgstr "调整实例 %s 的大小完毕"
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
#, fuzzy
msgid "Unable to find root VBD/VDI for VM"
msgstr "无法为VDI %s 找到VBD"
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
#, fuzzy
msgid "Destroying VDIs"
msgstr "重启xvp"
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
#, fuzzy
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr "实例 %(instance_uuid)s 使用RAW或者VHD,跳过内核和内存盘的删除"
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr "实例拥有内核或者内存盘,但不是二者均有"
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr "内核/内存盘文件移除了"
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
#, fuzzy
msgid "Destroying VM"
msgstr "重启xvp"
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr "虚拟机不存在,跳过销毁..."
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr "实例已处于救援模式:%s"
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
#, fuzzy
msgid "VM is not present, skipping soft delete..."
msgstr "虚拟机不存在,跳过销毁..."
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
#, fuzzy
msgid "Automatically hard rebooting"
msgstr "自动冷重启 %d"
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
#, fuzzy
msgid "Injecting network info to xenstore"
msgstr "为虚拟机注入网络信息到xs:|%s|"
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
#, fuzzy
msgid "Creating vifs"
msgstr "正在创建镜像"
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, fuzzy, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr "正在为虚拟机 %(vm_ref)s,网络 %(network_ref)s 创建VIF。"
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, fuzzy, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr "正在为虚拟机 %(vm_ref)s,网络 %(network_ref)s 创建VIF。"
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
#, fuzzy
msgid "Injecting hostname to xenstore"
msgstr "为虚拟机注入hostname到xs:|%s|"
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
#, fuzzy
msgid "No suitable network for migrate"
msgstr "错误的网络格式"
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
#, fuzzy
msgid "Migrate Send failed"
msgstr "创建失败"
diff --git a/nova/locale/zh_HK/LC_MESSAGES/nova.po b/nova/locale/zh_HK/LC_MESSAGES/nova.po
index 5b83fb5b0..8efe90d03 100644
--- a/nova/locale/zh_HK/LC_MESSAGES/nova.po
+++ b/nova/locale/zh_HK/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Nova\n"
"Report-Msgid-Bugs-To: https://bugs.launchpad.net/nova\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2013-05-28 17:08+0000\n"
"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
"Language-Team: Chinese (Hong Kong) "
@@ -171,7 +171,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr ""
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1959,43 +1974,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2276,10 +2291,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3859,46 +3876,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
msgid "Cannot attach one or more volumes to multiple instances"
msgstr ""
@@ -3961,141 +3978,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, python-format
msgid "Unable to update system group '%s'"
msgstr ""
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, python-format
msgid "Unable to delete system group '%s'"
msgstr ""
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4231,603 +4248,608 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
msgid "Failed to resume instance"
msgstr ""
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, python-format
msgid "Detaching from volume api: %s"
msgstr ""
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr ""
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
msgid "Error trying to Rescue Instance"
msgstr ""
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
msgid "Detaching volume from unknown instance"
msgstr ""
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr ""
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4941,18 +4963,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5056,24 +5078,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5610,75 +5632,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5763,6 +5784,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6866,60 +6906,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6929,22 +6972,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7026,12 +7069,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7041,25 +7084,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7853,7 +7896,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8025,50 +8068,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, python-format
msgid "Getting info for disk: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8650,61 +8693,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, python-format
msgid "Trying to get stats for the volume %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8712,50 +8755,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8765,67 +8808,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9134,70 +9177,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9269,12 +9312,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9320,7 +9363,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9471,27 +9514,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9901,54 +9944,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10069,19 +10112,19 @@ msgstr ""
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr ""
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10189,24 +10232,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10766,7 +10809,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10780,202 +10823,202 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
msgid "Unable to terminate instance."
msgstr ""
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/locale/zh_TW/LC_MESSAGES/nova.po b/nova/locale/zh_TW/LC_MESSAGES/nova.po
index 80219efe1..f728d613a 100644
--- a/nova/locale/zh_TW/LC_MESSAGES/nova.po
+++ b/nova/locale/zh_TW/LC_MESSAGES/nova.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: nova\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2013-05-29 19:37+0000\n"
+"POT-Creation-Date: 2013-06-03 19:38+0000\n"
"PO-Revision-Date: 2012-03-07 02:00+0000\n"
"Last-Translator: Charles Hsu <charles0126+openstack@gmail.com>\n"
"Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
@@ -170,7 +170,7 @@ msgstr ""
#: nova/exception.py:235 nova/api/ec2/cloud.py:462
#: nova/api/openstack/compute/contrib/keypairs.py:98
#: nova/api/openstack/compute/plugins/v3/keypairs.py:99
-#: nova/compute/api.py:2791
+#: nova/compute/api.py:2792
msgid "Keypair data is invalid"
msgstr "無效的Keypair"
@@ -1300,6 +1300,21 @@ msgstr ""
msgid "Instance rollback performed due to: %s"
msgstr ""
+#: nova/exception.py:1214
+#, python-format
+msgid "Unsupported object type %(objtype)s"
+msgstr ""
+
+#: nova/exception.py:1218
+#, python-format
+msgid "Cannot call %(method)s on orphaned %(objtype)s object"
+msgstr ""
+
+#: nova/exception.py:1222
+#, python-format
+msgid "Version %(objver)s of %(objname)s is not supported"
+msgstr ""
+
#: nova/hooks.py:62
#, python-format
msgid "Running %(name)s pre-hook: %(obj)s"
@@ -1310,7 +1325,7 @@ msgstr ""
msgid "Running %(name)s post-hook: %(obj)s"
msgstr ""
-#: nova/manager.py:170
+#: nova/manager.py:172
msgid "Notifying Schedulers of capabilities ..."
msgstr ""
@@ -1433,22 +1448,22 @@ msgstr ""
msgid "Reloading cached file %s"
msgstr ""
-#: nova/utils.py:931 nova/virt/configdrive.py:177
+#: nova/utils.py:933 nova/virt/configdrive.py:177
#, python-format
msgid "Could not remove tmpdir: %s"
msgstr ""
-#: nova/utils.py:1090
+#: nova/utils.py:1092
#, python-format
msgid "%s is not a string or unicode"
msgstr ""
-#: nova/utils.py:1094
+#: nova/utils.py:1096
#, python-format
msgid "%(name)s has less than %(min_length)s characters."
msgstr ""
-#: nova/utils.py:1099
+#: nova/utils.py:1101
#, python-format
msgid "%(name)s has more than %(max_length)s characters."
msgstr ""
@@ -1960,43 +1975,43 @@ msgstr ""
msgid "Failed to get metadata for instance id: %s"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/api/openstack/__init__.py:53
+#: nova/api/openstack/__init__.py:62
#, python-format
msgid "Caught error: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:62
+#: nova/api/openstack/__init__.py:71
#, python-format
msgid "%(url)s returned with HTTP %(status)d"
msgstr ""
-#: nova/api/openstack/__init__.py:149
+#: nova/api/openstack/__init__.py:158
msgid "Must specify an ExtensionManager class"
msgstr ""
-#: nova/api/openstack/__init__.py:160 nova/api/openstack/__init__.py:276
+#: nova/api/openstack/__init__.py:169 nova/api/openstack/__init__.py:289
#, python-format
msgid "Extended resource: %s"
msgstr ""
-#: nova/api/openstack/__init__.py:195 nova/api/openstack/__init__.py:323
+#: nova/api/openstack/__init__.py:204 nova/api/openstack/__init__.py:336
#, python-format
msgid ""
"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
"resource"
msgstr ""
-#: nova/api/openstack/__init__.py:200 nova/api/openstack/__init__.py:328
+#: nova/api/openstack/__init__.py:209 nova/api/openstack/__init__.py:341
#, python-format
msgid "Extension %(ext_name)s extending resource: %(collection)s"
msgstr ""
-#: nova/api/openstack/__init__.py:273
+#: nova/api/openstack/__init__.py:286
#, python-format
msgid "Running _register_resources on %s"
msgstr ""
-#: nova/api/openstack/__init__.py:315
+#: nova/api/openstack/__init__.py:328
#, python-format
msgid "Running _register_controllers on %s"
msgstr ""
@@ -2277,10 +2292,12 @@ msgid "You are not allowed to delete the image."
msgstr ""
#: nova/api/openstack/compute/ips.py:68
+#: nova/api/openstack/compute/plugins/v3/ips.py:69
msgid "Instance does not exist"
msgstr ""
#: nova/api/openstack/compute/ips.py:91
+#: nova/api/openstack/compute/plugins/v3/ips.py:92
msgid "Instance is not a member of specified network"
msgstr ""
@@ -3866,46 +3883,46 @@ msgstr ""
msgid "No nova entries in syslog!"
msgstr ""
-#: nova/compute/api.py:284
+#: nova/compute/api.py:294
msgid "Cannot run any more instances of this type."
msgstr ""
-#: nova/compute/api.py:291
+#: nova/compute/api.py:301
#, python-format
msgid "Can only run %s more instances of this type."
msgstr ""
-#: nova/compute/api.py:300
+#: nova/compute/api.py:310
#, python-format
msgid ""
"%(overs)s quota exceeded for %(pid)s, tried to run %(min_count)s "
"instances. %(msg)s"
msgstr ""
-#: nova/compute/api.py:320
+#: nova/compute/api.py:330
#, python-format
msgid ""
"Quota exceeded for %(pid)s, tried to set %(num_metadata)s metadata "
"properties"
msgstr ""
-#: nova/compute/api.py:330
+#: nova/compute/api.py:340
msgid "Metadata property key blank"
msgstr ""
-#: nova/compute/api.py:334
+#: nova/compute/api.py:344
msgid "Metadata property key greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:338
+#: nova/compute/api.py:348
msgid "Metadata property value greater than 255 characters"
msgstr ""
-#: nova/compute/api.py:471
+#: nova/compute/api.py:481
msgid "Failed to set instance name using multi_instance_display_name_template."
msgstr ""
-#: nova/compute/api.py:568
+#: nova/compute/api.py:575
#, fuzzy
msgid "Cannot attach one or more volumes to multiple instances"
msgstr "無法掛載Volume 到虛擬機器 %s"
@@ -3970,141 +3987,141 @@ msgstr ""
msgid "snapshot for %s"
msgstr ""
-#: nova/compute/api.py:2012
+#: nova/compute/api.py:2010
msgid "flavor_id is None. Assuming migration."
msgstr ""
-#: nova/compute/api.py:2021
+#: nova/compute/api.py:2019
#, python-format
msgid ""
"Old instance type %(current_instance_type_name)s, new instance type "
"%(new_instance_type_name)s"
msgstr ""
-#: nova/compute/api.py:2067
+#: nova/compute/api.py:2065
#, python-format
msgid "%(overs)s quota exceeded for %(pid)s, tried to resize instance."
msgstr ""
-#: nova/compute/api.py:2203
+#: nova/compute/api.py:2201
msgid "Cannot rescue a volume-backed instance"
msgstr ""
-#: nova/compute/api.py:2308
+#: nova/compute/api.py:2306
msgid "Locking"
msgstr ""
-#: nova/compute/api.py:2316
+#: nova/compute/api.py:2314
msgid "Unlocking"
msgstr ""
-#: nova/compute/api.py:2388
+#: nova/compute/api.py:2386
msgid "Volume must be attached in order to detach."
msgstr ""
-#: nova/compute/api.py:2501
+#: nova/compute/api.py:2499
#, python-format
msgid "Going to try to live migrate instance to %s"
msgstr ""
-#: nova/compute/api.py:2520
+#: nova/compute/api.py:2521
msgid "vm evacuation scheduled"
msgstr ""
-#: nova/compute/api.py:2524
+#: nova/compute/api.py:2525
#, python-format
msgid ""
"Instance compute service state on %(inst_host)s expected to be down, but "
"it was up."
msgstr ""
-#: nova/compute/api.py:2771
+#: nova/compute/api.py:2772
msgid "Keypair name contains unsafe characters"
msgstr ""
-#: nova/compute/api.py:2775
+#: nova/compute/api.py:2776
msgid "Keypair name must be between 1 and 255 characters long"
msgstr ""
-#: nova/compute/api.py:2871
+#: nova/compute/api.py:2872
#, python-format
msgid "Security group %s is not a string or unicode"
msgstr ""
-#: nova/compute/api.py:2874
+#: nova/compute/api.py:2875
#, python-format
msgid "Security group %s cannot be empty."
msgstr ""
-#: nova/compute/api.py:2882
+#: nova/compute/api.py:2883
#, python-format
msgid ""
"Value (%(value)s) for parameter Group%(property)s is invalid. Content "
"limited to '%(allowed)'."
msgstr ""
-#: nova/compute/api.py:2888
+#: nova/compute/api.py:2889
#, python-format
msgid "Security group %s should not be greater than 255 characters."
msgstr ""
-#: nova/compute/api.py:2906
+#: nova/compute/api.py:2907
msgid "Quota exceeded, too many security groups."
msgstr ""
-#: nova/compute/api.py:2909
+#: nova/compute/api.py:2910
#, python-format
msgid "Create Security Group %s"
msgstr ""
-#: nova/compute/api.py:2916
+#: nova/compute/api.py:2917
#, python-format
msgid "Security group %s already exists"
msgstr ""
-#: nova/compute/api.py:2935
+#: nova/compute/api.py:2936
#, fuzzy, python-format
msgid "Unable to update system group '%s'"
msgstr "找不到Volume %s"
-#: nova/compute/api.py:2995
+#: nova/compute/api.py:2996
#, fuzzy, python-format
msgid "Unable to delete system group '%s'"
msgstr "找不到Volume %s"
-#: nova/compute/api.py:3000
+#: nova/compute/api.py:3001
msgid "Security group is still in use"
msgstr ""
-#: nova/compute/api.py:3008
+#: nova/compute/api.py:3009
msgid "Failed to update usages deallocating security group"
msgstr ""
-#: nova/compute/api.py:3011
+#: nova/compute/api.py:3012
#, python-format
msgid "Delete security group %s"
msgstr ""
-#: nova/compute/api.py:3088 nova/compute/api.py:3162
+#: nova/compute/api.py:3089 nova/compute/api.py:3163
#, python-format
msgid "Rule (%s) not found"
msgstr ""
-#: nova/compute/api.py:3104
+#: nova/compute/api.py:3105
msgid "Quota exceeded, too many security group rules."
msgstr ""
-#: nova/compute/api.py:3107
+#: nova/compute/api.py:3108
#, python-format
msgid "Authorize security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3116
+#: nova/compute/api.py:3117
#, python-format
msgid "Revoke security group ingress %s"
msgstr ""
-#: nova/compute/api.py:3169
+#: nova/compute/api.py:3170
msgid "Security group id should be integer"
msgstr ""
@@ -4240,606 +4257,611 @@ msgstr ""
msgid "Failed to check if instance shared"
msgstr ""
-#: nova/compute/manager.py:531
+#: nova/compute/manager.py:540
msgid "Failed to revert crashed migration"
msgstr ""
-#: nova/compute/manager.py:534
+#: nova/compute/manager.py:543
msgid "Instance found in migrating state during startup. Resetting task_state"
msgstr ""
-#: nova/compute/manager.py:545
+#: nova/compute/manager.py:554
#, python-format
msgid "Current state is %(drv_state)s, state in DB is %(db_state)s."
msgstr ""
-#: nova/compute/manager.py:550
+#: nova/compute/manager.py:559
msgid "Rebooting instance after nova-compute restart."
msgstr ""
-#: nova/compute/manager.py:564
+#: nova/compute/manager.py:573
msgid "Hypervisor driver does not support resume guests"
msgstr ""
-#: nova/compute/manager.py:569
+#: nova/compute/manager.py:578
#, fuzzy
msgid "Failed to resume instance"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/compute/manager.py:579
+#: nova/compute/manager.py:588
msgid "Hypervisor driver does not support firewall rules"
msgstr ""
-#: nova/compute/manager.py:583
+#: nova/compute/manager.py:592
#, python-format
msgid "Lifecycle event %(state)d on VM %(uuid)s"
msgstr ""
-#: nova/compute/manager.py:599
+#: nova/compute/manager.py:608
#, python-format
msgid "Unexpected power state %d"
msgstr ""
-#: nova/compute/manager.py:611
+#: nova/compute/manager.py:620
#, python-format
msgid "Ignoring event %s"
msgstr ""
-#: nova/compute/manager.py:649
+#: nova/compute/manager.py:658
msgid "Checking state"
msgstr ""
-#: nova/compute/manager.py:747
+#: nova/compute/manager.py:756
#, python-format
msgid "Volume id: %s finished being created but was not set as 'available'"
msgstr ""
-#: nova/compute/manager.py:764
+#: nova/compute/manager.py:773
#, python-format
msgid "Setting up bdm %s"
msgstr ""
-#: nova/compute/manager.py:864
+#: nova/compute/manager.py:873
msgid "Success"
msgstr ""
-#: nova/compute/manager.py:887
+#: nova/compute/manager.py:896
msgid "Instance disappeared before we could start it"
msgstr ""
-#: nova/compute/manager.py:914 nova/compute/manager.py:2331
+#: nova/compute/manager.py:923 nova/compute/manager.py:2377
#, python-format
msgid "No node specified, defaulting to %(node)s"
msgstr ""
-#: nova/compute/manager.py:956
+#: nova/compute/manager.py:965
msgid "Failed to dealloc network for deleted instance"
msgstr ""
-#: nova/compute/manager.py:962
+#: nova/compute/manager.py:971
msgid "Instance was deleted during spawn."
msgstr ""
-#: nova/compute/manager.py:990
+#: nova/compute/manager.py:999
#, python-format
msgid "Error: %s"
msgstr ""
-#: nova/compute/manager.py:1007
+#: nova/compute/manager.py:1016
msgid "Clean up resource before rescheduling."
msgstr ""
-#: nova/compute/manager.py:1032 nova/compute/manager.py:2385
+#: nova/compute/manager.py:1041 nova/compute/manager.py:2431
msgid "Error trying to reschedule"
msgstr ""
-#: nova/compute/manager.py:1045
+#: nova/compute/manager.py:1054
msgid "Retry info not present, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1050
+#: nova/compute/manager.py:1059
msgid "No request spec, will not reschedule"
msgstr ""
-#: nova/compute/manager.py:1056
+#: nova/compute/manager.py:1065
#, python-format
msgid "Re-scheduling %(method)s: attempt %(num)d"
msgstr ""
-#: nova/compute/manager.py:1085
+#: nova/compute/manager.py:1094
msgid "Instance build timed out. Set to error state."
msgstr ""
-#: nova/compute/manager.py:1095
+#: nova/compute/manager.py:1104
msgid "Starting instance..."
msgstr ""
-#: nova/compute/manager.py:1121
+#: nova/compute/manager.py:1130
msgid "Instance failed network setup"
msgstr ""
-#: nova/compute/manager.py:1124
+#: nova/compute/manager.py:1133
#, python-format
msgid "Instance network_info: |%s|"
msgstr ""
-#: nova/compute/manager.py:1135
+#: nova/compute/manager.py:1144
msgid "Instance failed block device setup"
msgstr ""
-#: nova/compute/manager.py:1154
+#: nova/compute/manager.py:1163
msgid "Instance failed to spawn"
msgstr ""
-#: nova/compute/manager.py:1205
+#: nova/compute/manager.py:1214
msgid "Deallocating network for instance"
msgstr ""
-#: nova/compute/manager.py:1276
+#: nova/compute/manager.py:1285
#, python-format
msgid "%(action_str)s instance"
msgstr ""
-#: nova/compute/manager.py:1292
+#: nova/compute/manager.py:1301
msgid "Failed to deallocate network for instance."
msgstr ""
-#: nova/compute/manager.py:1312
+#: nova/compute/manager.py:1321
#, python-format
msgid "Ignoring DiskNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1315
+#: nova/compute/manager.py:1324
#, python-format
msgid "Ignoring VolumeNotFound: %s"
msgstr ""
-#: nova/compute/manager.py:1322
+#: nova/compute/manager.py:1331
#, python-format
msgid "terminating bdm %s"
msgstr ""
-#: nova/compute/manager.py:1369
+#: nova/compute/manager.py:1378
#, python-format
msgid "Ignoring volume cleanup failure due to %s"
msgstr ""
-#: nova/compute/manager.py:1422 nova/compute/manager.py:2560
-#: nova/compute/manager.py:4075
+#: nova/compute/manager.py:1431 nova/compute/manager.py:2613
+#: nova/compute/manager.py:4128
#, python-format
msgid "%s. Setting instance vm_state to ERROR"
msgstr ""
-#: nova/compute/manager.py:1574
+#: nova/compute/manager.py:1583
msgid "Rebuilding instance"
msgstr ""
-#: nova/compute/manager.py:1587
+#: nova/compute/manager.py:1596
msgid "Invalid state of instance files on shared storage"
msgstr ""
-#: nova/compute/manager.py:1591
+#: nova/compute/manager.py:1600
msgid "disk on shared storage, recreating using existing disk"
msgstr ""
-#: nova/compute/manager.py:1595
+#: nova/compute/manager.py:1604
#, python-format
msgid "disk not on shared storagerebuilding from: '%s'"
msgstr ""
-#: nova/compute/manager.py:1678
+#: nova/compute/manager.py:1687
#, python-format
msgid "bringing vm to original state: '%s'"
msgstr ""
-#: nova/compute/manager.py:1710
+#: nova/compute/manager.py:1719
#, fuzzy, python-format
msgid "Detaching from volume api: %s"
msgstr "無法卸載 Volume %s"
-#: nova/compute/manager.py:1728
+#: nova/compute/manager.py:1737
msgid "Rebooting instance"
msgstr ""
-#: nova/compute/manager.py:1753
+#: nova/compute/manager.py:1762
#, python-format
msgid ""
"trying to reboot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1769
+#: nova/compute/manager.py:1778
#, fuzzy, python-format
msgid "Cannot reboot instance: %(exc)s"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/compute/manager.py:1782
+#: nova/compute/manager.py:1791
msgid "Instance disappeared during reboot"
msgstr ""
-#: nova/compute/manager.py:1809
+#: nova/compute/manager.py:1818
msgid "instance snapshotting"
msgstr ""
-#: nova/compute/manager.py:1815
+#: nova/compute/manager.py:1824
#, python-format
msgid ""
"trying to snapshot a non-running instance: (state: %(state)s expected: "
"%(running)s)"
msgstr ""
-#: nova/compute/manager.py:1876
+#: nova/compute/manager.py:1885
#, python-format
msgid "Found %(num_images)d images (rotation: %(rotation)d)"
msgstr ""
-#: nova/compute/manager.py:1883
+#: nova/compute/manager.py:1892
#, python-format
msgid "Rotating out %d backups"
msgstr ""
-#: nova/compute/manager.py:1888
+#: nova/compute/manager.py:1897
#, python-format
msgid "Deleting image %s"
msgstr ""
-#: nova/compute/manager.py:1916
+#: nova/compute/manager.py:1925
#, python-format
msgid "Failed to set admin password. Instance %s is not running"
msgstr ""
-#: nova/compute/manager.py:1923
+#: nova/compute/manager.py:1932
msgid "Root password set"
msgstr ""
-#: nova/compute/manager.py:1930
+#: nova/compute/manager.py:1939
msgid "set_admin_password is not implemented by this driver or guest instance."
msgstr ""
-#: nova/compute/manager.py:1945
+#: nova/compute/manager.py:1954
#, python-format
msgid "set_admin_password failed: %s"
msgstr ""
-#: nova/compute/manager.py:1952
+#: nova/compute/manager.py:1961
msgid "error setting admin password"
msgstr ""
-#: nova/compute/manager.py:1965
+#: nova/compute/manager.py:1974
#, python-format
msgid ""
"trying to inject a file into a non-running (state: "
"%(current_power_state)s expected: %(expected_state)s)"
msgstr ""
-#: nova/compute/manager.py:1969
+#: nova/compute/manager.py:1978
#, python-format
msgid "injecting file to %(path)s"
msgstr ""
-#: nova/compute/manager.py:1989
+#: nova/compute/manager.py:1998
msgid ""
"Unable to find a different image to use for rescue VM, using instance's "
"current image"
msgstr ""
-#: nova/compute/manager.py:2002
+#: nova/compute/manager.py:2011
msgid "Rescuing"
msgstr ""
-#: nova/compute/manager.py:2021
+#: nova/compute/manager.py:2030
#, fuzzy
msgid "Error trying to Rescue Instance"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/compute/manager.py:2025
+#: nova/compute/manager.py:2034
#, python-format
msgid "Driver Error: %s"
msgstr ""
-#: nova/compute/manager.py:2043
+#: nova/compute/manager.py:2052
msgid "Unrescuing"
msgstr ""
-#: nova/compute/manager.py:2064
+#: nova/compute/manager.py:2073
#, python-format
msgid "Changing instance metadata according to %(diff)r"
msgstr ""
-#: nova/compute/manager.py:2289
+#: nova/compute/manager.py:2296
+#, python-format
+msgid "Updating instance to original state: '%s'"
+msgstr ""
+
+#: nova/compute/manager.py:2330
msgid "Instance has no source host"
msgstr ""
-#: nova/compute/manager.py:2295
+#: nova/compute/manager.py:2336
msgid "destination same as source!"
msgstr ""
-#: nova/compute/manager.py:2312
+#: nova/compute/manager.py:2358
msgid "Migrating"
msgstr ""
-#: nova/compute/manager.py:2557
+#: nova/compute/manager.py:2610
#, python-format
msgid "Failed to rollback quota for failed finish_resize: %(qr_error)s"
msgstr ""
-#: nova/compute/manager.py:2620
+#: nova/compute/manager.py:2673
msgid "Pausing"
msgstr ""
-#: nova/compute/manager.py:2638
+#: nova/compute/manager.py:2691
msgid "Unpausing"
msgstr ""
-#: nova/compute/manager.py:2676
+#: nova/compute/manager.py:2729
msgid "Retrieving diagnostics"
msgstr ""
-#: nova/compute/manager.py:2707
+#: nova/compute/manager.py:2760
msgid "Resuming"
msgstr ""
-#: nova/compute/manager.py:2727
+#: nova/compute/manager.py:2780
msgid "Reset network"
msgstr ""
-#: nova/compute/manager.py:2732
+#: nova/compute/manager.py:2785
msgid "Inject network info"
msgstr ""
-#: nova/compute/manager.py:2735
+#: nova/compute/manager.py:2788
#, python-format
msgid "network_info to inject: |%s|"
msgstr ""
-#: nova/compute/manager.py:2752
+#: nova/compute/manager.py:2805
msgid "Get console output"
msgstr ""
-#: nova/compute/manager.py:2779
+#: nova/compute/manager.py:2832
msgid "Getting vnc console"
msgstr ""
-#: nova/compute/manager.py:2814
+#: nova/compute/manager.py:2867
msgid "Getting spice console"
msgstr ""
-#: nova/compute/manager.py:2861
+#: nova/compute/manager.py:2914
#, python-format
msgid "Booting with volume %(volume_id)s at %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2911
+#: nova/compute/manager.py:2964
#, python-format
msgid "Attaching volume %(volume_id)s to %(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2920
+#: nova/compute/manager.py:2973
#, python-format
msgid ""
"Failed to connect to volume %(volume_id)s while attaching at "
"%(mountpoint)s"
msgstr ""
-#: nova/compute/manager.py:2935
+#: nova/compute/manager.py:2988
#, fuzzy, python-format
msgid "Failed to attach volume %(volume_id)s at %(mountpoint)s"
msgstr "卸載_Volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:2965
+#: nova/compute/manager.py:3018
#, python-format
msgid "Detach volume %(volume_id)s from mountpoint %(mp)s"
msgstr ""
-#: nova/compute/manager.py:2975
+#: nova/compute/manager.py:3028
#, fuzzy
msgid "Detaching volume from unknown instance"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/compute/manager.py:2982
+#: nova/compute/manager.py:3035
#, fuzzy, python-format
msgid "Failed to detach volume %(volume_id)s from %(mp)s"
msgstr "卸載_Volume: %(instance_name)s, %(mountpoint)s"
-#: nova/compute/manager.py:3005
+#: nova/compute/manager.py:3058
msgid "Updating volume usage cache with totals"
msgstr ""
-#: nova/compute/manager.py:3041
+#: nova/compute/manager.py:3094
#, python-format
msgid "allocate_port_for_instance returned %(ports)s ports"
msgstr ""
-#: nova/compute/manager.py:3061
+#: nova/compute/manager.py:3114
#, python-format
msgid "Port %(port_id)s is not attached"
msgstr ""
-#: nova/compute/manager.py:3075
+#: nova/compute/manager.py:3128
#, python-format
msgid "Host %(host)s not found"
msgstr ""
-#: nova/compute/manager.py:3228
+#: nova/compute/manager.py:3281
#, python-format
msgid "Pre live migration failed at %(dest)s"
msgstr ""
-#: nova/compute/manager.py:3256
+#: nova/compute/manager.py:3309
msgid "_post_live_migration() is started.."
msgstr ""
-#: nova/compute/manager.py:3311
+#: nova/compute/manager.py:3364
#, python-format
msgid "Migrating instance to %(dest)s finished successfully."
msgstr ""
-#: nova/compute/manager.py:3313
+#: nova/compute/manager.py:3366
msgid ""
"You may see the error \"libvirt: QEMU error: Domain not found: no domain "
"with matching name.\" This error can be safely ignored."
msgstr ""
-#: nova/compute/manager.py:3328
+#: nova/compute/manager.py:3381
msgid "Post operation of migration started"
msgstr ""
-#: nova/compute/manager.py:3360
+#: nova/compute/manager.py:3413
#, python-format
msgid "Failed to get compute_info for %s"
msgstr ""
-#: nova/compute/manager.py:3489
+#: nova/compute/manager.py:3542
msgid "Updated the info_cache for instance"
msgstr ""
-#: nova/compute/manager.py:3539
+#: nova/compute/manager.py:3592
#, python-format
msgid ""
"Found %(migration_count)d unconfirmed migrations older than "
"%(confirm_window)d seconds"
msgstr ""
-#: nova/compute/manager.py:3545
+#: nova/compute/manager.py:3598
#, python-format
msgid "Setting migration %(migration_id)s to error: %(reason)s"
msgstr ""
-#: nova/compute/manager.py:3554
+#: nova/compute/manager.py:3607
#, python-format
msgid ""
"Automatically confirming migration %(migration_id)s for instance "
"%(instance_uuid)s"
msgstr ""
-#: nova/compute/manager.py:3561
+#: nova/compute/manager.py:3614
#, python-format
msgid "Instance %(instance_uuid)s not found"
msgstr ""
-#: nova/compute/manager.py:3565
+#: nova/compute/manager.py:3618
msgid "In ERROR state"
msgstr ""
-#: nova/compute/manager.py:3572
+#: nova/compute/manager.py:3625
#, python-format
msgid "In states %(vm_state)s/%(task_state)s, not RESIZED/None"
msgstr ""
-#: nova/compute/manager.py:3581
+#: nova/compute/manager.py:3634
#, python-format
msgid "Error auto-confirming resize: %(e)s. Will retry later."
msgstr ""
-#: nova/compute/manager.py:3598
+#: nova/compute/manager.py:3651
#, python-format
msgid ""
"Running instance usage audit for host %(host)s from %(begin_time)s to "
"%(end_time)s. %(number_instances)s instances."
msgstr ""
-#: nova/compute/manager.py:3617
+#: nova/compute/manager.py:3670
#, python-format
msgid "Failed to generate usage audit for instance on host %s"
msgstr ""
-#: nova/compute/manager.py:3641
+#: nova/compute/manager.py:3694
msgid "Updating bandwidth usage cache"
msgstr ""
-#: nova/compute/manager.py:3745
+#: nova/compute/manager.py:3798
msgid "Updating volume usage cache"
msgstr ""
-#: nova/compute/manager.py:3760
+#: nova/compute/manager.py:3813
msgid "Updating host status"
msgstr ""
-#: nova/compute/manager.py:3787
+#: nova/compute/manager.py:3840
#, python-format
msgid ""
"Found %(num_db_instances)s in the database and %(num_vm_instances)s on "
"the hypervisor."
msgstr ""
-#: nova/compute/manager.py:3792 nova/compute/manager.py:3842
+#: nova/compute/manager.py:3845 nova/compute/manager.py:3895
msgid "During sync_power_state the instance has a pending task. Skip."
msgstr ""
-#: nova/compute/manager.py:3829
+#: nova/compute/manager.py:3882
#, python-format
msgid ""
"During the sync_power process the instance has moved from host %(src)s to"
" host %(dst)s"
msgstr ""
-#: nova/compute/manager.py:3867
+#: nova/compute/manager.py:3920
msgid "Instance shutdown by itself. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3879 nova/compute/manager.py:3888
-#: nova/compute/manager.py:3918
+#: nova/compute/manager.py:3932 nova/compute/manager.py:3941
+#: nova/compute/manager.py:3971
msgid "error during stop() in sync_power_state."
msgstr ""
-#: nova/compute/manager.py:3883
+#: nova/compute/manager.py:3936
msgid "Instance is suspended unexpectedly. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3899
+#: nova/compute/manager.py:3952
msgid "Instance is paused unexpectedly. Ignore."
msgstr ""
-#: nova/compute/manager.py:3905
+#: nova/compute/manager.py:3958
msgid "Instance is unexpectedly not found. Ignore."
msgstr ""
-#: nova/compute/manager.py:3911
+#: nova/compute/manager.py:3964
msgid "Instance is not stopped. Calling the stop API."
msgstr ""
-#: nova/compute/manager.py:3927
+#: nova/compute/manager.py:3980
msgid "Instance is not (soft-)deleted."
msgstr ""
-#: nova/compute/manager.py:3935
+#: nova/compute/manager.py:3988
msgid "CONF.reclaim_instance_interval <= 0, skipping..."
msgstr ""
-#: nova/compute/manager.py:3947
+#: nova/compute/manager.py:4000
msgid "Reclaiming deleted instance"
msgstr ""
-#: nova/compute/manager.py:3974
+#: nova/compute/manager.py:4027
#, python-format
msgid "Deleting orphan compute node %s"
msgstr ""
-#: nova/compute/manager.py:3984 nova/compute/resource_tracker.py:321
+#: nova/compute/manager.py:4037 nova/compute/resource_tracker.py:321
#, python-format
msgid "No service record for host %s"
msgstr ""
-#: nova/compute/manager.py:4025
+#: nova/compute/manager.py:4078
#, python-format
msgid ""
"Detected instance with name label '%(name)s' which is marked as DELETED "
"but still present on host."
msgstr ""
-#: nova/compute/manager.py:4032
+#: nova/compute/manager.py:4085
#, python-format
msgid ""
"Destroying instance with name label '%(name)s' which is marked as DELETED"
" but still present on host."
msgstr ""
-#: nova/compute/manager.py:4039
+#: nova/compute/manager.py:4092
#, python-format
msgid "Unrecognized value '%(action)s' for CONF.running_deleted_instance_action"
msgstr ""
-#: nova/compute/manager.py:4066
+#: nova/compute/manager.py:4119
#, python-format
msgid "Setting instance back to ACTIVE after: %s"
msgstr ""
@@ -4953,18 +4975,18 @@ msgstr ""
msgid "Using %(prefix)s instead of %(req_prefix)s"
msgstr ""
-#: nova/conductor/api.py:381
+#: nova/conductor/api.py:386
msgid ""
"Timed out waiting for nova-conductor. Is it running? Or did this service "
"start before nova-conductor?"
msgstr ""
-#: nova/conductor/manager.py:109
+#: nova/conductor/manager.py:113
#, python-format
msgid "Instance update attempted for '%(key)s' on %(instance_uuid)s"
msgstr ""
-#: nova/conductor/manager.py:281
+#: nova/conductor/manager.py:285
msgid "Invalid block_device_mapping_destroy invocation"
msgstr ""
@@ -5068,24 +5090,24 @@ msgstr ""
msgid "Unrecognized read_deleted value '%s'"
msgstr ""
-#: nova/db/sqlalchemy/api.py:1412
+#: nova/db/sqlalchemy/api.py:1413
#, python-format
msgid ""
"Unknown osapi_compute_unique_server_name_scope value: %s Flag must be "
"empty, \"global\" or \"project\""
msgstr ""
-#: nova/db/sqlalchemy/api.py:1547
+#: nova/db/sqlalchemy/api.py:1548
#, python-format
msgid "Invalid instance id %s in request"
msgstr ""
-#: nova/db/sqlalchemy/api.py:2906
+#: nova/db/sqlalchemy/api.py:2907
#, python-format
msgid "Change will make usage less than 0 for the following resources: %(unders)s"
msgstr ""
-#: nova/db/sqlalchemy/api.py:4426
+#: nova/db/sqlalchemy/api.py:4418
#, python-format
msgid ""
"Volume(%s) has lower stats then what is in the database. Instance must "
@@ -5623,75 +5645,74 @@ msgstr ""
msgid "v4 subnets are required for legacy nw_info"
msgstr ""
-#: nova/network/quantumv2/__init__.py:45
-#, python-format
-msgid "Quantum client authentication failed: %s"
+#: nova/network/quantumv2/__init__.py:67
+msgid "quantum authentication failed"
msgstr ""
-#: nova/network/quantumv2/api.py:152
+#: nova/network/quantumv2/api.py:154
#, python-format
msgid "allocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:155
+#: nova/network/quantumv2/api.py:157
#, python-format
msgid "empty project id for instance %s"
msgstr ""
-#: nova/network/quantumv2/api.py:201
+#: nova/network/quantumv2/api.py:203
#, python-format
msgid ""
"Multiple security groups found matching '%s'. Use an ID to be more "
"specific."
msgstr ""
-#: nova/network/quantumv2/api.py:270
+#: nova/network/quantumv2/api.py:272
msgid "Port not found"
msgstr ""
-#: nova/network/quantumv2/api.py:278
+#: nova/network/quantumv2/api.py:280
#, python-format
msgid "Fail to delete port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:318
+#: nova/network/quantumv2/api.py:320
#, python-format
msgid "deallocate_for_instance() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:327
+#: nova/network/quantumv2/api.py:329
#, python-format
msgid "Failed to delete quantum port %(portid)s "
msgstr ""
-#: nova/network/quantumv2/api.py:349
+#: nova/network/quantumv2/api.py:351
#, python-format
msgid "Failed to delete quantum port %(port_id)s "
msgstr ""
-#: nova/network/quantumv2/api.py:373
+#: nova/network/quantumv2/api.py:375
#, python-format
msgid "get_instance_nw_info() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:405
+#: nova/network/quantumv2/api.py:407
#, python-format
msgid ""
"Unable to update port %(portid)s on subnet %(subnet_id)s with failure: "
"%(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:435
+#: nova/network/quantumv2/api.py:437
#, python-format
msgid "Unable to update port %(portid)s with failure: %(exception)s"
msgstr ""
-#: nova/network/quantumv2/api.py:445
+#: nova/network/quantumv2/api.py:447
#, python-format
msgid "validate_networks() for %s"
msgstr ""
-#: nova/network/quantumv2/api.py:688
+#: nova/network/quantumv2/api.py:690
#, python-format
msgid "Multiple floating IP pools matches found for name '%s'"
msgstr ""
@@ -5776,6 +5797,25 @@ msgstr ""
msgid "This rule already exists in group %s"
msgstr ""
+#: nova/objects/base.py:52
+#, python-format
+msgid "Error setting %(attr)s"
+msgstr ""
+
+#: nova/objects/base.py:136
+msgid "Invalid version string"
+msgstr ""
+
+#: nova/objects/base.py:190
+#, python-format
+msgid "Unable to instantiate unregistered object type %(objtype)s"
+msgstr ""
+
+#: nova/objects/base.py:292
+#, python-format
+msgid "Cannot load '%(attrname)s' in the base class"
+msgstr ""
+
#: nova/openstack/common/excutils.py:48
#, python-format
msgid "Original exception being dropped: %s"
@@ -6881,60 +6921,63 @@ msgid "unexpected role header"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3444
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3491
msgid ""
"Quota exceeded for instances: Requested 1, but already used 10 of 10 "
"instances"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3449
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3496
msgid "Quota exceeded for ram: Requested 4096, but already used 8192 of 10240 ram"
msgstr ""
#: nova/tests/api/openstack/compute/test_servers.py:3454
+#: nova/tests/api/openstack/compute/plugins/v3/test_servers.py:3501
msgid "Quota exceeded for cores: Requested 2, but already used 9 of 10 cores"
msgstr ""
-#: nova/tests/compute/test_compute.py:1068
-#: nova/tests/compute/test_compute.py:1086
-#: nova/tests/compute/test_compute.py:1137
-#: nova/tests/compute/test_compute.py:1164
-#: nova/tests/compute/test_compute.py:1210
-#: nova/tests/compute/test_compute.py:3773
+#: nova/tests/compute/test_compute.py:1077
+#: nova/tests/compute/test_compute.py:1095
+#: nova/tests/compute/test_compute.py:1146
+#: nova/tests/compute/test_compute.py:1173
+#: nova/tests/compute/test_compute.py:1219
+#: nova/tests/compute/test_compute.py:3980
#, python-format
msgid "Running instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1074
-#: nova/tests/compute/test_compute.py:1109
-#: nova/tests/compute/test_compute.py:1152
-#: nova/tests/compute/test_compute.py:1182
+#: nova/tests/compute/test_compute.py:1083
+#: nova/tests/compute/test_compute.py:1118
+#: nova/tests/compute/test_compute.py:1161
+#: nova/tests/compute/test_compute.py:1191
#, python-format
msgid "After terminating instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:1692
+#: nova/tests/compute/test_compute.py:1701
msgid "Internal error"
msgstr ""
-#: nova/tests/compute/test_compute.py:3784
+#: nova/tests/compute/test_compute.py:3991
#, python-format
msgid "After force-killing instances: %s"
msgstr ""
-#: nova/tests/compute/test_compute.py:4284
+#: nova/tests/compute/test_compute.py:4491
msgid "wrong host/node"
msgstr ""
-#: nova/tests/compute/test_compute.py:8916
+#: nova/tests/compute/test_compute.py:9153
msgid "spawn error"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:177
+#: nova/tests/integrated/test_api_samples.py:178
#, python-format
msgid "%(result_str)s: %(result)s is not a dict."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:191
+#: nova/tests/integrated/test_api_samples.py:192
#, python-format
msgid ""
"Dictionary key mismatch:\n"
@@ -6944,22 +6987,22 @@ msgid ""
"%(res_delta)s\n"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:202
+#: nova/tests/integrated/test_api_samples.py:203
#, python-format
msgid "%(result_str)s: %(result)s is not a list."
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:221
+#: nova/tests/integrated/test_api_samples.py:222
msgid "Extra list items in template:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:225
+#: nova/tests/integrated/test_api_samples.py:226
#, python-format
msgid "Extra list items in %(result_str)s:"
msgstr ""
-#: nova/tests/integrated/test_api_samples.py:246
-#: nova/tests/integrated/test_api_samples.py:261
+#: nova/tests/integrated/test_api_samples.py:247
+#: nova/tests/integrated/test_api_samples.py:262
#, python-format
msgid ""
"Values do not match:\n"
@@ -7041,12 +7084,12 @@ msgstr ""
msgid "Expected a function in 'auth[1]' parameter"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:897
+#: nova/tests/virt/xenapi/test_xenapi.py:898
#, python-format
msgid "Creating files in %s to simulate guest agent"
msgstr ""
-#: nova/tests/virt/xenapi/test_xenapi.py:908
+#: nova/tests/virt/xenapi/test_xenapi.py:909
#, python-format
msgid "Removing simulated guest agent files in %s"
msgstr ""
@@ -7056,25 +7099,25 @@ msgstr ""
msgid "Added %(filepath)s to config drive"
msgstr ""
-#: nova/virt/driver.py:924
+#: nova/virt/driver.py:942
msgid "Event must be an instance of nova.virt.event.Event"
msgstr ""
-#: nova/virt/driver.py:930
+#: nova/virt/driver.py:948
#, python-format
msgid "Exception dispatching event %(event)s: %(ex)s"
msgstr ""
-#: nova/virt/driver.py:952
+#: nova/virt/driver.py:970
msgid "Compute driver option required, but not specified"
msgstr ""
-#: nova/virt/driver.py:955
+#: nova/virt/driver.py:973
#, python-format
msgid "Loading compute driver '%s'"
msgstr ""
-#: nova/virt/driver.py:962
+#: nova/virt/driver.py:980
msgid "Unable to load the virtualization driver"
msgstr ""
@@ -7873,7 +7916,7 @@ msgstr ""
msgid "get_available_resource called"
msgstr ""
-#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3840
+#: nova/virt/hyperv/hostops.py:135 nova/virt/libvirt/driver.py:3845
#: nova/virt/xenapi/host.py:148
msgid "Updating host stats"
msgstr ""
@@ -8045,50 +8088,50 @@ msgstr ""
msgid "finish_revert_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:166
+#: nova/virt/hyperv/migrationops.py:167
#, python-format
msgid "Copying base disk %(base_vhd_path)s to %(base_vhd_copy_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:170
+#: nova/virt/hyperv/migrationops.py:171
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_copy_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:176
+#: nova/virt/hyperv/migrationops.py:177
#, python-format
msgid "Merging base disk %(base_vhd_copy_path)s and diff disk %(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:188
+#: nova/virt/hyperv/migrationops.py:189
#, fuzzy, python-format
msgid "Getting info for disk: %s"
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/virt/hyperv/migrationops.py:193
+#: nova/virt/hyperv/migrationops.py:194
#, python-format
msgid "Resizing disk \"%(vhd_path)s\" to new max size %(new_size)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:204
+#: nova/virt/hyperv/migrationops.py:205
#, python-format
msgid ""
"Reconnecting copied base VHD %(base_vhd_path)s and diff VHD "
"%(diff_vhd_path)s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:213
+#: nova/virt/hyperv/migrationops.py:214
msgid "finish_migration called"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:222
+#: nova/virt/hyperv/migrationops.py:223
#, python-format
msgid "Cannot find boot VHD file: %s"
msgstr ""
-#: nova/virt/hyperv/migrationops.py:235 nova/virt/hyperv/vmops.py:136
+#: nova/virt/hyperv/migrationops.py:236 nova/virt/hyperv/vmops.py:136
msgid "Cannot resize a VHD to a smaller size"
msgstr ""
@@ -8672,61 +8715,61 @@ msgid ""
"%(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2545 nova/virt/libvirt/driver.py:2549
+#: nova/virt/libvirt/driver.py:2546 nova/virt/libvirt/driver.py:2550
#, python-format
msgid "Invalid range expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2558
+#: nova/virt/libvirt/driver.py:2559
#, python-format
msgid "Invalid exclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2565
+#: nova/virt/libvirt/driver.py:2566
#, python-format
msgid "Invalid inclusion expression %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2570
+#: nova/virt/libvirt/driver.py:2571
#, python-format
msgid "No CPUs available after parsing %r"
msgstr ""
-#: nova/virt/libvirt/driver.py:2587
+#: nova/virt/libvirt/driver.py:2588
msgid ""
"Cannot get the number of cpu, because this function is not implemented "
"for this platform. "
msgstr ""
-#: nova/virt/libvirt/driver.py:2597
+#: nova/virt/libvirt/driver.py:2598
msgid "Invalid vcpu_pin_set config, out of hypervisor cpu range."
msgstr ""
-#: nova/virt/libvirt/driver.py:2649
+#: nova/virt/libvirt/driver.py:2650
#, python-format
msgid "couldn't obtain the vpu count from domain id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2655
+#: nova/virt/libvirt/driver.py:2656
#, python-format
msgid "List of domains returned by libVirt: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2657
+#: nova/virt/libvirt/driver.py:2658
#, python-format
msgid "libVirt can't find a domain with id: %s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2721
+#: nova/virt/libvirt/driver.py:2722
msgid "libvirt version is too old (does not support getVersion)"
msgstr ""
-#: nova/virt/libvirt/driver.py:2805
+#: nova/virt/libvirt/driver.py:2806
#, fuzzy, python-format
msgid "Trying to get stats for the volume %s"
msgstr "無法卸載 Volume %s"
-#: nova/virt/libvirt/driver.py:2818
+#: nova/virt/libvirt/driver.py:2819
#, python-format
msgid ""
"Got volume usage stats for the volume=%(volume)s, instance=%(instance)s, "
@@ -8734,50 +8777,50 @@ msgid ""
"wr_bytes=%(wr_bytes)d"
msgstr ""
-#: nova/virt/libvirt/driver.py:2836
+#: nova/virt/libvirt/driver.py:2837
#, python-format
msgid ""
"Getting block stats failed, device might have been detached. "
"Instance=%(instance_name)s Disk=%(disk)s Code=%(errcode)s Error=%(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:2841
+#: nova/virt/libvirt/driver.py:2842
#, python-format
msgid ""
"Could not find domain in libvirt for instance %s. Cannot get block stats "
"for device"
msgstr ""
-#: nova/virt/libvirt/driver.py:2918
+#: nova/virt/libvirt/driver.py:2919
#, python-format
msgid ""
"Creating tmpfile %s to verify with other compute node that the instance "
"is on the same shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3000
+#: nova/virt/libvirt/driver.py:3001
msgid "Block migration can not be used with shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3008
+#: nova/virt/libvirt/driver.py:3009
msgid "Live migration can not be used without shared storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3045
+#: nova/virt/libvirt/driver.py:3046
#, python-format
msgid ""
"Unable to migrate %(instance_uuid)s: Disk of instance is too "
"large(available on destination host:%(available)s < need:%(necessary)s)"
msgstr ""
-#: nova/virt/libvirt/driver.py:3070
+#: nova/virt/libvirt/driver.py:3071
#, python-format
msgid ""
"Instance launched has CPU info:\n"
"%s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3082
+#: nova/virt/libvirt/driver.py:3083
#, python-format
msgid ""
"CPU doesn't have compatibility.\n"
@@ -8787,67 +8830,67 @@ msgid ""
"Refer to %(u)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3099
+#: nova/virt/libvirt/driver.py:3100
#, python-format
msgid ""
"Creating tmpfile %s to notify to other compute nodes that they should "
"mount the same storage."
msgstr ""
-#: nova/virt/libvirt/driver.py:3147
+#: nova/virt/libvirt/driver.py:3148
#, python-format
msgid "The firewall filter for %s does not exist"
msgstr ""
-#: nova/virt/libvirt/driver.py:3219
+#: nova/virt/libvirt/driver.py:3220
#, python-format
msgid "Live Migration failure: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3312
+#: nova/virt/libvirt/driver.py:3313
#, python-format
msgid "plug_vifs() failed %(cnt)d. Retry up to %(max_retry)d."
msgstr ""
-#: nova/virt/libvirt/driver.py:3424
+#: nova/virt/libvirt/driver.py:3425
#, python-format
msgid ""
"Error from libvirt while getting description of %(instance_name)s: [Error"
" Code %(error_code)s] %(ex)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3441
+#: nova/virt/libvirt/driver.py:3442
#, python-format
msgid "skipping %(path)s since it looks like volume"
msgstr ""
-#: nova/virt/libvirt/driver.py:3446
+#: nova/virt/libvirt/driver.py:3447
#, python-format
msgid "skipping disk for %(instance_name)s as it does not have a path"
msgstr ""
-#: nova/virt/libvirt/driver.py:3487
+#: nova/virt/libvirt/driver.py:3488
#, python-format
msgid "Getting disk size of %(i_name)s: %(e)s"
msgstr ""
-#: nova/virt/libvirt/driver.py:3556
+#: nova/virt/libvirt/driver.py:3557
msgid "Starting migrate_disk_and_power_off"
msgstr ""
-#: nova/virt/libvirt/driver.py:3624
+#: nova/virt/libvirt/driver.py:3625
msgid "Instance running successfully."
msgstr ""
-#: nova/virt/libvirt/driver.py:3630
+#: nova/virt/libvirt/driver.py:3631
msgid "Starting finish_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3692
+#: nova/virt/libvirt/driver.py:3695
msgid "Starting finish_revert_migration"
msgstr ""
-#: nova/virt/libvirt/driver.py:3813
+#: nova/virt/libvirt/driver.py:3818
#, python-format
msgid "Checking instance files accessability%(instance_path)s"
msgstr ""
@@ -9156,70 +9199,70 @@ msgstr ""
msgid "Found iSCSI node %(disk_dev)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:508 nova/virt/libvirt/volume.py:622
+#: nova/virt/libvirt/volume.py:512 nova/virt/libvirt/volume.py:633
#, python-format
msgid "%s is already mounted"
msgstr ""
-#: nova/virt/libvirt/volume.py:556
+#: nova/virt/libvirt/volume.py:560
#, python-format
msgid "AoE device not found at %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:558
+#: nova/virt/libvirt/volume.py:562
#, python-format
msgid "AoE volume not yet found at: %(aoedevpath)s. Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:573
+#: nova/virt/libvirt/volume.py:577
#, python-format
msgid "Found AoE device %(aoedevpath)s (after %(tries)s rediscover)"
msgstr ""
-#: nova/virt/libvirt/volume.py:693
+#: nova/virt/libvirt/volume.py:704
msgid "We are unable to locate any Fibre Channel devices"
msgstr ""
-#: nova/virt/libvirt/volume.py:702
+#: nova/virt/libvirt/volume.py:713
#, python-format
msgid "Looking for Fibre Channel dev %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:712
+#: nova/virt/libvirt/volume.py:723
msgid "Fibre Channel device not found."
msgstr ""
-#: nova/virt/libvirt/volume.py:715
+#: nova/virt/libvirt/volume.py:726
#, python-format
msgid ""
"Fibre volume not yet found at: %(mount_device)s. Will rescan & retry. "
"Try number: %(tries)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:732
+#: nova/virt/libvirt/volume.py:743
#, python-format
msgid "Found Fibre Channel volume %(mount_device)s (after %(tries)s rescans)"
msgstr ""
-#: nova/virt/libvirt/volume.py:741
+#: nova/virt/libvirt/volume.py:752
#, python-format
msgid "Multipath device discovered %(device)s"
msgstr ""
-#: nova/virt/libvirt/volume.py:807
+#: nova/virt/libvirt/volume.py:818
msgid "Value required for 'scality_sofs_config'"
msgstr ""
-#: nova/virt/libvirt/volume.py:818
+#: nova/virt/libvirt/volume.py:829
#, python-format
msgid "Cannot access 'scality_sofs_config': %s"
msgstr ""
-#: nova/virt/libvirt/volume.py:824
+#: nova/virt/libvirt/volume.py:835
msgid "Cannot execute /sbin/mount.sofs"
msgstr ""
-#: nova/virt/libvirt/volume.py:839
+#: nova/virt/libvirt/volume.py:850
msgid "Cannot mount Scality SOFS, check syslog for errors"
msgstr ""
@@ -9292,12 +9335,12 @@ msgstr ""
msgid "Uncompressed image file not found"
msgstr ""
-#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:674
+#: nova/virt/powervm/blockdev.py:555 nova/virt/powervm/operator.py:677
#, python-format
msgid "Found error stream for command \"%(cmd)s\": %(error_text)s"
msgstr ""
-#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:691
+#: nova/virt/powervm/blockdev.py:572 nova/virt/powervm/operator.py:694
#, python-format
msgid "Found error stream for command \"%(command)s\": %(error_text)s"
msgstr ""
@@ -9344,7 +9387,7 @@ msgstr ""
msgid "%(inst_name)s captured in %(snapshot_time)s seconds"
msgstr ""
-#: nova/virt/powervm/driver.py:305
+#: nova/virt/powervm/driver.py:306
#, python-format
msgid "Unrecognized root disk information: %s"
msgstr ""
@@ -9496,27 +9539,27 @@ msgstr ""
msgid "VMware Cluster %s is not found"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:456
+#: nova/virt/vmwareapi/driver.py:457
#, python-format
msgid "In vmwareapi:_create_session, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:539
+#: nova/virt/vmwareapi/driver.py:540
#, python-format
msgid "In vmwareapi:_call_method, got this exception: %s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:575
+#: nova/virt/vmwareapi/driver.py:576
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: success"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:580
+#: nova/virt/vmwareapi/driver.py:581
#, python-format
msgid "Task [%(task_name)s] %(task_ref)s status: error %(error_info)s"
msgstr ""
-#: nova/virt/vmwareapi/driver.py:584
+#: nova/virt/vmwareapi/driver.py:585
#, python-format
msgid "In vmwareapi:_poll_task, Got this error %s"
msgstr ""
@@ -9926,54 +9969,54 @@ msgstr ""
msgid "Renamed the VM from %s"
msgstr "找不到Volume %s"
-#: nova/virt/vmwareapi/vmops.py:1019
+#: nova/virt/vmwareapi/vmops.py:1022
#, python-format
msgid "Migrating VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1031
+#: nova/virt/vmwareapi/vmops.py:1034
#, python-format
msgid "Migrated VM to host %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1041 nova/virt/xenapi/vmops.py:1376
+#: nova/virt/vmwareapi/vmops.py:1044 nova/virt/xenapi/vmops.py:1381
#, python-format
msgid "Found %(instance_count)d hung reboots older than %(timeout)d seconds"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1045
+#: nova/virt/vmwareapi/vmops.py:1048
#, python-format
msgid "Automatically hard rebooting %d"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1081
+#: nova/virt/vmwareapi/vmops.py:1084
msgid "get_diagnostics not implemented for vmwareapi"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1163
+#: nova/virt/vmwareapi/vmops.py:1166
msgid "Reconfiguring VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1169
+#: nova/virt/vmwareapi/vmops.py:1172
msgid "Reconfigured VM instance to set the machine id"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1183
+#: nova/virt/vmwareapi/vmops.py:1186
#, python-format
msgid "Reconfiguring VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1190
+#: nova/virt/vmwareapi/vmops.py:1193
#, python-format
msgid "Reconfigured VM instance to enable vnc on port - %(port)s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1283
+#: nova/virt/vmwareapi/vmops.py:1286
#, python-format
msgid "Creating directory with path %s"
msgstr ""
-#: nova/virt/vmwareapi/vmops.py:1289
+#: nova/virt/vmwareapi/vmops.py:1292
#, python-format
msgid "Created directory with path %s"
msgstr ""
@@ -10096,19 +10139,19 @@ msgstr "無法卸載 Volume %s"
msgid "Mountpoint %(mountpoint)s detached from instance %(instance_name)s"
msgstr "掛載點 %(mountpoint)s 從虛擬機器 %(instance_name)s 卸載"
-#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1618
+#: nova/virt/xenapi/agent.py:101 nova/virt/xenapi/vmops.py:1623
#, python-format
msgid "TIMEOUT: The call to %(method)s timed out. args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1622
+#: nova/virt/xenapi/agent.py:105 nova/virt/xenapi/vmops.py:1627
#, python-format
msgid ""
"NOT IMPLEMENTED: The call to %(method)s is not supported by the agent. "
"args=%(args)r"
msgstr ""
-#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1627
+#: nova/virt/xenapi/agent.py:110 nova/virt/xenapi/vmops.py:1632
#, python-format
msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
msgstr ""
@@ -10216,24 +10259,24 @@ msgstr ""
msgid "Failure while cleaning up attached VDIs"
msgstr ""
-#: nova/virt/xenapi/driver.py:345
+#: nova/virt/xenapi/driver.py:346
#, python-format
msgid "Could not determine key: %s"
msgstr ""
-#: nova/virt/xenapi/driver.py:561
+#: nova/virt/xenapi/driver.py:562
msgid "Host startup on XenServer is not supported."
msgstr ""
-#: nova/virt/xenapi/driver.py:621
+#: nova/virt/xenapi/driver.py:622
msgid "Unable to log in to XenAPI (is the Dom0 disk full?)"
msgstr ""
-#: nova/virt/xenapi/driver.py:661
+#: nova/virt/xenapi/driver.py:662
msgid "Host is member of a pool, but DB says otherwise"
msgstr ""
-#: nova/virt/xenapi/driver.py:745 nova/virt/xenapi/driver.py:759
+#: nova/virt/xenapi/driver.py:746 nova/virt/xenapi/driver.py:760
#, python-format
msgid "Got exception: %s"
msgstr ""
@@ -10793,7 +10836,7 @@ msgstr ""
msgid "This domU must be running on the host specified by xenapi_connection_url"
msgstr ""
-#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:803
+#: nova/virt/xenapi/vmops.py:139 nova/virt/xenapi/vmops.py:808
#, python-format
msgid "Updating progress to %(progress)d"
msgstr ""
@@ -10807,203 +10850,203 @@ msgstr ""
msgid "Error: Agent is disabled"
msgstr ""
-#: nova/virt/xenapi/vmops.py:303
+#: nova/virt/xenapi/vmops.py:308
msgid "Starting instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:389
+#: nova/virt/xenapi/vmops.py:394
msgid "Removing kernel/ramdisk files from dom0"
msgstr ""
-#: nova/virt/xenapi/vmops.py:462
+#: nova/virt/xenapi/vmops.py:467
#, python-format
msgid "Block device information present: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:493
+#: nova/virt/xenapi/vmops.py:498
msgid "Failed to spawn, rolling back"
msgstr ""
-#: nova/virt/xenapi/vmops.py:592
+#: nova/virt/xenapi/vmops.py:597
msgid "Auto configuring disk, attempting to resize partition..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:638
+#: nova/virt/xenapi/vmops.py:643
msgid "Starting VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:644
+#: nova/virt/xenapi/vmops.py:649
msgid "Waiting for instance state to become running"
msgstr ""
-#: nova/virt/xenapi/vmops.py:658
+#: nova/virt/xenapi/vmops.py:663
#, python-format
msgid ""
"Latest agent build for %(hypervisor)s/%(os)s/%(architecture)s is "
"%(version)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:661
+#: nova/virt/xenapi/vmops.py:666
#, python-format
msgid "No agent build found for %(hypervisor)s/%(os)s/%(architecture)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:672
+#: nova/virt/xenapi/vmops.py:677
#, python-format
msgid "Instance agent version: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:703
+#: nova/virt/xenapi/vmops.py:708
msgid "Setting VCPU weight"
msgstr ""
-#: nova/virt/xenapi/vmops.py:714
+#: nova/virt/xenapi/vmops.py:719
#, python-format
msgid "Could not find VM with name %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:772
+#: nova/virt/xenapi/vmops.py:777
msgid "Finished snapshot and upload for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:776
+#: nova/virt/xenapi/vmops.py:781
#, python-format
msgid "Migrating VHD '%(vdi_uuid)s' with seq_num %(seq_num)d"
msgstr ""
-#: nova/virt/xenapi/vmops.py:784
+#: nova/virt/xenapi/vmops.py:789
msgid "Failed to transfer vhd to new host"
msgstr ""
-#: nova/virt/xenapi/vmops.py:810
+#: nova/virt/xenapi/vmops.py:815
msgid "VM was already shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:814
+#: nova/virt/xenapi/vmops.py:819
msgid "Clean shutdown did not complete successfully, trying hard shutdown."
msgstr ""
-#: nova/virt/xenapi/vmops.py:818
+#: nova/virt/xenapi/vmops.py:823
#, fuzzy
msgid "Unable to terminate instance."
msgstr "無法掛載Volume 到虛擬機器 %s"
-#: nova/virt/xenapi/vmops.py:823
+#: nova/virt/xenapi/vmops.py:828
msgid "Resize down not allowed without auto_disk_config"
msgstr ""
-#: nova/virt/xenapi/vmops.py:876
+#: nova/virt/xenapi/vmops.py:881
msgid ""
"_migrate_disk_resizing_down failed. Restoring orig vm due_to: "
"%{exception}."
msgstr ""
-#: nova/virt/xenapi/vmops.py:992
+#: nova/virt/xenapi/vmops.py:997
#, python-format
msgid "Resizing up VDI %(vdi_uuid)s from %(old_gb)dGB to %(new_gb)dGB"
msgstr ""
-#: nova/virt/xenapi/vmops.py:997
+#: nova/virt/xenapi/vmops.py:1002
msgid "Resize complete"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1041
+#: nova/virt/xenapi/vmops.py:1046
msgid "Starting halted instance found during reboot"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1047
+#: nova/virt/xenapi/vmops.py:1052
msgid ""
"Reboot failed due to bad volumes, detaching bad volumes and starting "
"halted instance"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1141
+#: nova/virt/xenapi/vmops.py:1146
msgid "Unable to find root VBD/VDI for VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1145
+#: nova/virt/xenapi/vmops.py:1150
msgid "Destroying VDIs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1172
+#: nova/virt/xenapi/vmops.py:1177
msgid "Using RAW or VHD, skipping kernel and ramdisk deletion"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1179
+#: nova/virt/xenapi/vmops.py:1184
msgid "instance has a kernel or ramdisk but not both"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1186
+#: nova/virt/xenapi/vmops.py:1191
msgid "kernel/ramdisk files removed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1213
+#: nova/virt/xenapi/vmops.py:1218
msgid "Destroying VM"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1242
+#: nova/virt/xenapi/vmops.py:1247
msgid "VM is not present, skipping destroy..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1293
+#: nova/virt/xenapi/vmops.py:1298
#, python-format
msgid "Instance is already in Rescue Mode: %s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1327
+#: nova/virt/xenapi/vmops.py:1332
msgid "VM is not present, skipping soft delete..."
msgstr ""
-#: nova/virt/xenapi/vmops.py:1380
+#: nova/virt/xenapi/vmops.py:1385
msgid "Automatically hard rebooting"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1520
+#: nova/virt/xenapi/vmops.py:1525
msgid "Injecting network info to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1539
+#: nova/virt/xenapi/vmops.py:1544
msgid "Creating vifs"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1548
+#: nova/virt/xenapi/vmops.py:1553
#, python-format
msgid "Creating VIF for network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1551
+#: nova/virt/xenapi/vmops.py:1556
#, python-format
msgid "Created VIF %(vif_ref)s, network %(network_ref)s"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1579
+#: nova/virt/xenapi/vmops.py:1584
msgid "Injecting hostname to xenstore"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1677
+#: nova/virt/xenapi/vmops.py:1682
#, python-format
msgid ""
"Destination host:%(hostname)s must be in the same aggregate as the source"
" server"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1698
+#: nova/virt/xenapi/vmops.py:1703
msgid "No suitable network for migrate"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1710
+#: nova/virt/xenapi/vmops.py:1715
msgid "Migrate Receive failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1784
+#: nova/virt/xenapi/vmops.py:1789
msgid "XAPI supporting relax-xsm-sr-check=true requried"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1795
+#: nova/virt/xenapi/vmops.py:1800
msgid "VM.assert_can_migrate failed"
msgstr ""
-#: nova/virt/xenapi/vmops.py:1848
+#: nova/virt/xenapi/vmops.py:1853
msgid "Migrate Send failed"
msgstr ""
diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
index c47b50060..dad496f23 100644
--- a/nova/network/linux_net.py
+++ b/nova/network/linux_net.py
@@ -896,6 +896,8 @@ def _remove_dnsmasq_accept_rules(dev):
iptables_manager.apply()
+# NOTE(russellb) Curious why this is needed? Check out this explanation from
+# markmc: https://bugzilla.redhat.com/show_bug.cgi?id=910619#c6
def _add_dhcp_mangle_rule(dev):
if not os.path.exists('/dev/vhost-net'):
return
diff --git a/nova/objects/base.py b/nova/objects/base.py
index abeebf990..0cfd08e6b 100644
--- a/nova/objects/base.py
+++ b/nova/objects/base.py
@@ -168,9 +168,9 @@ class NovaObject(object):
# by subclasses, but that is a special case. Objects inheriting from
# other objects will not receive this merging of fields contents.
fields = {
- 'created_at': obj_utils.datetime_or_none,
- 'updated_at': obj_utils.datetime_or_none,
- 'deleted_at': obj_utils.datetime_or_none,
+ 'created_at': obj_utils.datetime_or_str_or_none,
+ 'updated_at': obj_utils.datetime_or_str_or_none,
+ 'deleted_at': obj_utils.datetime_or_str_or_none,
}
def __init__(self):
diff --git a/nova/objects/instance.py b/nova/objects/instance.py
index 836d78c08..dbf9786df 100644
--- a/nova/objects/instance.py
+++ b/nova/objects/instance.py
@@ -58,9 +58,9 @@ class Instance(base.NovaObject):
'reservation_id': obj_utils.str_or_none,
- 'scheduled_at': obj_utils.datetime_or_none,
- 'launched_at': obj_utils.datetime_or_none,
- 'terminated_at': obj_utils.datetime_or_none,
+ 'scheduled_at': obj_utils.datetime_or_str_or_none,
+ 'launched_at': obj_utils.datetime_or_str_or_none,
+ 'terminated_at': obj_utils.datetime_or_str_or_none,
'availability_zone': obj_utils.str_or_none,
diff --git a/nova/objects/utils.py b/nova/objects/utils.py
index 042b7b36e..dd654045c 100644
--- a/nova/objects/utils.py
+++ b/nova/objects/utils.py
@@ -27,6 +27,14 @@ def datetime_or_none(dt):
raise ValueError('A datetime.datetime is required here')
+# NOTE(danms): Being tolerant of isotime strings here will help us
+# during our objects transition
+def datetime_or_str_or_none(val):
+ if isinstance(val, basestring):
+ return timeutils.parse_isotime(val)
+ return datetime_or_none(val)
+
+
def int_or_none(val):
"""Attempt to parse an integer value, or None."""
if val is None:
diff --git a/nova/scheduler/utils.py b/nova/scheduler/utils.py
new file mode 100644
index 000000000..315f9df2b
--- /dev/null
+++ b/nova/scheduler/utils.py
@@ -0,0 +1,33 @@
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+"""Utility methods for scheduling."""
+
+from nova.compute import flavors
+from nova.openstack.common import jsonutils
+
+
+def build_request_spec(image, instances):
+ """Build a request_spec for the scheduler.
+
+ The request_spec assumes that all instances to be scheduled are the same
+ type.
+ """
+ instance = jsonutils.to_primitive(instances[0])
+ request_spec = {
+ 'image': image,
+ 'instance_properties': instance,
+ 'instance_type': flavors.extract_instance_type(instance),
+ 'instance_uuids': [inst['uuid'] for inst in instances]}
+ return request_spec
diff --git a/nova/storage/linuxscsi.py b/nova/storage/linuxscsi.py
index 95cec192d..afd8aa81c 100644
--- a/nova/storage/linuxscsi.py
+++ b/nova/storage/linuxscsi.py
@@ -123,17 +123,19 @@ def find_multipath_device(device):
LOG.debug(_("Found multipath device = %(mdev)s") % locals())
device_lines = lines[3:]
for dev_line in device_lines:
- dev_line = dev_line.strip()
- dev_line = dev_line[3:]
+ if dev_line.find("policy") != -1:
+ continue
+
+ dev_line = dev_line.lstrip(' |-`')
dev_info = dev_line.split()
- if dev_line.find("policy") == -1:
- address = dev_info[0].split(":")
-
- dev = {'device': '/dev/%s' % dev_info[1],
- 'host': address[0], 'channel': address[1],
- 'id': address[2], 'lun': address[3]
- }
- devices.append(dev)
+ address = dev_info[0].split(":")
+
+ dev = {'device': '/dev/%s' % dev_info[1],
+ 'host': address[0], 'channel': address[1],
+ 'id': address[2], 'lun': address[3]
+ }
+
+ devices.append(dev)
if mdev is not None:
info = {"device": mdev,
diff --git a/nova/test.py b/nova/test.py
index 6dad0784a..41ef26c81 100644
--- a/nova/test.py
+++ b/nova/test.py
@@ -87,7 +87,6 @@ class Database(fixtures.Fixture):
if os.path.exists(testdb):
return
db_migrate.db_sync()
- self.post_migrations()
if sql_connection == "sqlite://":
conn = self.engine.connect()
self._DB = "".join(line for line in conn.connection.iterdump())
@@ -107,8 +106,13 @@ class Database(fixtures.Fixture):
shutil.copyfile(paths.state_path_rel(self.sqlite_clean_db),
paths.state_path_rel(self.sqlite_db))
- def post_migrations(self):
- """Any addition steps that are needed outside of the migrations."""
+
+class SampleNetworks(fixtures.Fixture):
+
+ """Create sample networks in the database."""
+
+ def setUp(self):
+ super(SampleNetworks, self).setUp()
ctxt = context.get_admin_context()
network = network_manager.VlanManager()
bridge_interface = CONF.flat_interface or CONF.vlan_interface
@@ -227,6 +231,7 @@ class TestCase(testtools.TestCase):
self.useFixture(fixtures.EnvironmentVariable('http_proxy'))
self.policy = self.useFixture(policy_fixture.PolicyFixture())
CONF.set_override('fatal_exception_format_errors', True)
+ CONF.set_override('enabled', True, 'osapi_v3')
def _clear_attrs(self):
# Delete attributes that don't start with _ so they don't pin
diff --git a/nova/tests/api/ec2/test_cinder_cloud.py b/nova/tests/api/ec2/test_cinder_cloud.py
index 5d02a28d7..a307eaa2f 100644
--- a/nova/tests/api/ec2/test_cinder_cloud.py
+++ b/nova/tests/api/ec2/test_cinder_cloud.py
@@ -34,6 +34,7 @@ from nova import exception
from nova.openstack.common import rpc
from nova import test
from nova.tests import fake_network
+from nova.tests import fake_utils
from nova.tests.image import fake
from nova.tests import matchers
from nova import volume
@@ -88,6 +89,7 @@ class CinderCloudTestCase(test.TestCase):
super(CinderCloudTestCase, self).setUp()
ec2utils.reset_cache()
vol_tmpdir = self.useFixture(fixtures.TempDir()).path
+ fake_utils.stub_out_utils_spawn_n(self.stubs)
self.flags(compute_driver='nova.virt.fake.FakeDriver',
volume_api_class='nova.tests.fake_volume.API')
diff --git a/nova/tests/api/ec2/test_cloud.py b/nova/tests/api/ec2/test_cloud.py
index e58d260fb..22f9c2d81 100644
--- a/nova/tests/api/ec2/test_cloud.py
+++ b/nova/tests/api/ec2/test_cloud.py
@@ -50,6 +50,7 @@ from nova import test
from nova.tests.api.openstack.compute.contrib import (
test_quantum_security_groups as test_quantum)
from nova.tests import fake_network
+from nova.tests import fake_utils
from nova.tests.image import fake
from nova.tests import matchers
from nova import utils
@@ -107,10 +108,12 @@ def get_instances_with_cached_ips(orig_func, *args, **kwargs):
class CloudTestCase(test.TestCase):
def setUp(self):
super(CloudTestCase, self).setUp()
+ self.useFixture(test.SampleNetworks())
ec2utils.reset_cache()
self.flags(compute_driver='nova.virt.fake.FakeDriver',
volume_api_class='nova.tests.fake_volume.API')
self.useFixture(fixtures.FakeLogger('boto'))
+ fake_utils.stub_out_utils_spawn_n(self.stubs)
def fake_show(meh, context, id):
return {'id': id,
diff --git a/nova/tests/api/openstack/compute/contrib/test_fixed_ips.py b/nova/tests/api/openstack/compute/contrib/test_fixed_ips.py
index 67417e60e..2f9f6c5bc 100644
--- a/nova/tests/api/openstack/compute/contrib/test_fixed_ips.py
+++ b/nova/tests/api/openstack/compute/contrib/test_fixed_ips.py
@@ -132,6 +132,11 @@ class FixedIpTest(test.TestCase):
self.assertRaises(webob.exc.HTTPNotFound, self.controller.show, req,
'10.0.0.1')
+ def test_fixed_ips_get_invalid_ip_address(self):
+ req = fakes.HTTPRequest.blank('/v2/fake/os-fixed-ips/inv.ali.d.ip')
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.show, req,
+ 'inv.ali.d.ip')
+
def test_fixed_ips_get_deleted_ip_fail(self):
req = fakes.HTTPRequest.blank('/v2/fake/os-fixed-ips/10.0.0.2')
self.assertRaises(webob.exc.HTTPNotFound, self.controller.show, req,
@@ -154,6 +159,13 @@ class FixedIpTest(test.TestCase):
self.assertRaises(webob.exc.HTTPNotFound, self.controller.action, req,
'10.0.0.1', body)
+ def test_fixed_ip_reserve_invalid_ip_address(self):
+ body = {'reserve': None}
+ req = fakes.HTTPRequest.blank(
+ '/v2/fake/os-fixed-ips/inv.ali.d.ip/action')
+ self.assertRaises(webob.exc.HTTPNotFound,
+ self.controller.action, req, 'inv.ali.d.ip', body)
+
def test_fixed_ip_reserve_deleted_ip(self):
body = {'reserve': None}
req = fakes.HTTPRequest.blank(
@@ -178,6 +190,13 @@ class FixedIpTest(test.TestCase):
self.assertRaises(webob.exc.HTTPNotFound, self.controller.action, req,
'10.0.0.1', body)
+ def test_fixed_ip_unreserve_invalid_ip_address(self):
+ body = {'unreserve': None}
+ req = fakes.HTTPRequest.blank(
+ '/v2/fake/os-fixed-ips/inv.ali.d.ip/action')
+ self.assertRaises(webob.exc.HTTPNotFound,
+ self.controller.action, req, 'inv.ali.d.ip', body)
+
def test_fixed_ip_unreserve_deleted_ip(self):
body = {'unreserve': None}
req = fakes.HTTPRequest.blank(
diff --git a/nova/tests/api/openstack/compute/plugins/v3/test_consoles.py b/nova/tests/api/openstack/compute/plugins/v3/test_consoles.py
new file mode 100644
index 000000000..2f84af434
--- /dev/null
+++ b/nova/tests/api/openstack/compute/plugins/v3/test_consoles.py
@@ -0,0 +1,295 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2010-2011 OpenStack Foundation
+# Copyright 2011 Piston Cloud Computing, Inc.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import datetime
+import uuid as stdlib_uuid
+
+from lxml import etree
+import webob
+
+from nova.api.openstack.compute.plugins.v3 import consoles
+from nova.compute import vm_states
+from nova import console
+from nova import db
+from nova import exception
+from nova.openstack.common import timeutils
+from nova import test
+from nova.tests.api.openstack import fakes
+from nova.tests import matchers
+
+
+FAKE_UUID = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+
+
+class FakeInstanceDB(object):
+
+ def __init__(self):
+ self.instances_by_id = {}
+ self.ids_by_uuid = {}
+ self.max_id = 0
+
+ def return_server_by_id(self, context, id):
+ if id not in self.instances_by_id:
+ self._add_server(id=id)
+ return dict(self.instances_by_id[id])
+
+ def return_server_by_uuid(self, context, uuid):
+ if uuid not in self.ids_by_uuid:
+ self._add_server(uuid=uuid)
+ return dict(self.instances_by_id[self.ids_by_uuid[uuid]])
+
+ def _add_server(self, id=None, uuid=None):
+ if id is None:
+ id = self.max_id + 1
+ if uuid is None:
+ uuid = str(stdlib_uuid.uuid4())
+ instance = stub_instance(id, uuid=uuid)
+ self.instances_by_id[id] = instance
+ self.ids_by_uuid[uuid] = id
+ if id > self.max_id:
+ self.max_id = id
+
+
+def stub_instance(id, user_id='fake', project_id='fake', host=None,
+ vm_state=None, task_state=None,
+ reservation_id="", uuid=FAKE_UUID, image_ref="10",
+ flavor_id="1", name=None, key_name='',
+ access_ipv4=None, access_ipv6=None, progress=0):
+
+ if host is not None:
+ host = str(host)
+
+ if key_name:
+ key_data = 'FAKE'
+ else:
+ key_data = ''
+
+ # ReservationID isn't sent back, hack it in there.
+ server_name = name or "server%s" % id
+ if reservation_id != "":
+ server_name = "reservation_%s" % (reservation_id, )
+
+ instance = {
+ "id": int(id),
+ "created_at": datetime.datetime(2010, 10, 10, 12, 0, 0),
+ "updated_at": datetime.datetime(2010, 11, 11, 11, 0, 0),
+ "admin_pass": "",
+ "user_id": user_id,
+ "project_id": project_id,
+ "image_ref": image_ref,
+ "kernel_id": "",
+ "ramdisk_id": "",
+ "launch_index": 0,
+ "key_name": key_name,
+ "key_data": key_data,
+ "vm_state": vm_state or vm_states.BUILDING,
+ "task_state": task_state,
+ "memory_mb": 0,
+ "vcpus": 0,
+ "root_gb": 0,
+ "hostname": "",
+ "host": host,
+ "instance_type": {},
+ "user_data": "",
+ "reservation_id": reservation_id,
+ "mac_address": "",
+ "scheduled_at": timeutils.utcnow(),
+ "launched_at": timeutils.utcnow(),
+ "terminated_at": timeutils.utcnow(),
+ "availability_zone": "",
+ "display_name": server_name,
+ "display_description": "",
+ "locked": False,
+ "metadata": [],
+ "access_ip_v4": access_ipv4,
+ "access_ip_v6": access_ipv6,
+ "uuid": uuid,
+ "progress": progress}
+
+ return instance
+
+
+class ConsolesControllerTest(test.TestCase):
+ def setUp(self):
+ super(ConsolesControllerTest, self).setUp()
+ self.flags(verbose=True)
+ self.instance_db = FakeInstanceDB()
+ self.stubs.Set(db, 'instance_get',
+ self.instance_db.return_server_by_id)
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ self.instance_db.return_server_by_uuid)
+ self.uuid = str(stdlib_uuid.uuid4())
+ self.url = '/v3/fake/servers/%s/consoles' % self.uuid
+ self.controller = consoles.ConsolesController()
+
+ def test_create_console(self):
+ def fake_create_console(cons_self, context, instance_id):
+ self.assertEqual(instance_id, self.uuid)
+ return {}
+ self.stubs.Set(console.api.API, 'create_console', fake_create_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url)
+ self.controller.create(req, self.uuid)
+
+ def test_show_console(self):
+ def fake_get_console(cons_self, context, instance_id, console_id):
+ self.assertEqual(instance_id, self.uuid)
+ self.assertEqual(console_id, 20)
+ pool = dict(console_type='fake_type',
+ public_hostname='fake_hostname')
+ return dict(id=console_id, password='fake_password',
+ port='fake_port', pool=pool, instance_name='inst-0001')
+
+ expected = {'console': {'id': 20,
+ 'port': 'fake_port',
+ 'host': 'fake_hostname',
+ 'password': 'fake_password',
+ 'instance_name': 'inst-0001',
+ 'console_type': 'fake_type'}}
+
+ self.stubs.Set(console.api.API, 'get_console', fake_get_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ res_dict = self.controller.show(req, self.uuid, '20')
+ self.assertThat(res_dict, matchers.DictMatches(expected))
+
+ def test_show_console_unknown_console(self):
+ def fake_get_console(cons_self, context, instance_id, console_id):
+ raise exception.ConsoleNotFound(console_id=console_id)
+
+ self.stubs.Set(console.api.API, 'get_console', fake_get_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.show,
+ req, self.uuid, '20')
+
+ def test_show_console_unknown_instance(self):
+ def fake_get_console(cons_self, context, instance_id, console_id):
+ raise exception.InstanceNotFound(instance_id=instance_id)
+
+ self.stubs.Set(console.api.API, 'get_console', fake_get_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.show,
+ req, self.uuid, '20')
+
+ def test_list_consoles(self):
+ def fake_get_consoles(cons_self, context, instance_id):
+ self.assertEqual(instance_id, self.uuid)
+
+ pool1 = dict(console_type='fake_type',
+ public_hostname='fake_hostname')
+ cons1 = dict(id=10, password='fake_password',
+ port='fake_port', pool=pool1)
+ pool2 = dict(console_type='fake_type2',
+ public_hostname='fake_hostname2')
+ cons2 = dict(id=11, password='fake_password2',
+ port='fake_port2', pool=pool2)
+ return [cons1, cons2]
+
+ expected = {'consoles':
+ [{'console': {'id': 10, 'console_type': 'fake_type'}},
+ {'console': {'id': 11, 'console_type': 'fake_type2'}}]}
+
+ self.stubs.Set(console.api.API, 'get_consoles', fake_get_consoles)
+
+ req = fakes.HTTPRequestV3.blank(self.url)
+ res_dict = self.controller.index(req, self.uuid)
+ self.assertThat(res_dict, matchers.DictMatches(expected))
+
+ def test_delete_console(self):
+ def fake_get_console(cons_self, context, instance_id, console_id):
+ self.assertEqual(instance_id, self.uuid)
+ self.assertEqual(console_id, 20)
+ pool = dict(console_type='fake_type',
+ public_hostname='fake_hostname')
+ return dict(id=console_id, password='fake_password',
+ port='fake_port', pool=pool)
+
+ def fake_delete_console(cons_self, context, instance_id, console_id):
+ self.assertEqual(instance_id, self.uuid)
+ self.assertEqual(console_id, 20)
+
+ self.stubs.Set(console.api.API, 'get_console', fake_get_console)
+ self.stubs.Set(console.api.API, 'delete_console', fake_delete_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ self.controller.delete(req, self.uuid, '20')
+
+ def test_delete_console_unknown_console(self):
+ def fake_delete_console(cons_self, context, instance_id, console_id):
+ raise exception.ConsoleNotFound(console_id=console_id)
+
+ self.stubs.Set(console.api.API, 'delete_console', fake_delete_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.delete,
+ req, self.uuid, '20')
+
+ def test_delete_console_unknown_instance(self):
+ def fake_delete_console(cons_self, context, instance_id, console_id):
+ raise exception.InstanceNotFound(instance_id=instance_id)
+
+ self.stubs.Set(console.api.API, 'delete_console', fake_delete_console)
+
+ req = fakes.HTTPRequestV3.blank(self.url + '/20')
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.delete,
+ req, self.uuid, '20')
+
+
+class TestConsolesXMLSerializer(test.TestCase):
+ def test_show(self):
+ fixture = {'console': {'id': 20,
+ 'password': 'fake_password',
+ 'port': 'fake_port',
+ 'host': 'fake_hostname',
+ 'console_type': 'fake_type'}}
+
+ output = consoles.ConsoleTemplate().serialize(fixture)
+ res_tree = etree.XML(output)
+
+ self.assertEqual(res_tree.tag, 'console')
+ self.assertEqual(res_tree.xpath('id')[0].text, '20')
+ self.assertEqual(res_tree.xpath('port')[0].text, 'fake_port')
+ self.assertEqual(res_tree.xpath('host')[0].text, 'fake_hostname')
+ self.assertEqual(res_tree.xpath('password')[0].text, 'fake_password')
+ self.assertEqual(res_tree.xpath('console_type')[0].text, 'fake_type')
+
+ def test_index(self):
+ fixture = {'consoles': [{'console': {'id': 10,
+ 'console_type': 'fake_type'}},
+ {'console': {'id': 11,
+ 'console_type': 'fake_type2'}}]}
+
+ output = consoles.ConsolesTemplate().serialize(fixture)
+ res_tree = etree.XML(output)
+
+ self.assertEqual(res_tree.tag, 'consoles')
+ self.assertEqual(len(res_tree), 2)
+ self.assertEqual(res_tree[0].tag, 'console')
+ self.assertEqual(res_tree[1].tag, 'console')
+ self.assertEqual(len(res_tree[0]), 1)
+ self.assertEqual(res_tree[0][0].tag, 'console')
+ self.assertEqual(len(res_tree[1]), 1)
+ self.assertEqual(res_tree[1][0].tag, 'console')
+ self.assertEqual(res_tree[0][0].xpath('id')[0].text, '10')
+ self.assertEqual(res_tree[1][0].xpath('id')[0].text, '11')
+ self.assertEqual(res_tree[0][0].xpath('console_type')[0].text,
+ 'fake_type')
+ self.assertEqual(res_tree[1][0].xpath('console_type')[0].text,
+ 'fake_type2')
diff --git a/nova/tests/api/openstack/compute/plugins/v3/test_servers.py b/nova/tests/api/openstack/compute/plugins/v3/test_servers.py
new file mode 100644
index 000000000..6c75ef5fe
--- /dev/null
+++ b/nova/tests/api/openstack/compute/plugins/v3/test_servers.py
@@ -0,0 +1,5813 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2010-2011 OpenStack Foundation
+# Copyright 2011 Piston Cloud Computing, Inc.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import base64
+import datetime
+import testtools
+import urlparse
+import uuid
+
+import iso8601
+from lxml import etree
+from oslo.config import cfg
+import webob
+
+from nova.api.openstack import compute
+from nova.api.openstack.compute import plugins
+from nova.api.openstack.compute.plugins.v3 import ips
+from nova.api.openstack.compute.plugins.v3 import servers
+from nova.api.openstack.compute import views
+from nova.api.openstack import xmlutil
+from nova.compute import api as compute_api
+from nova.compute import flavors
+from nova.compute import task_states
+from nova.compute import vm_states
+from nova import context
+from nova import db
+from nova.db.sqlalchemy import models
+from nova import exception
+from nova.image import glance
+from nova.network import manager
+from nova.network.quantumv2 import api as quantum_api
+from nova.openstack.common import jsonutils
+from nova.openstack.common import policy as common_policy
+from nova.openstack.common import rpc
+from nova import policy
+from nova import test
+from nova.tests.api.openstack import fakes
+from nova.tests import fake_network
+from nova.tests.image import fake
+from nova.tests import matchers
+from nova.tests import utils
+
+CONF = cfg.CONF
+CONF.import_opt('password_length', 'nova.utils')
+CONF.import_opt('scheduler_topic', 'nova.scheduler.rpcapi')
+
+FAKE_UUID = fakes.FAKE_UUID
+NS = "{http://docs.openstack.org/compute/api/v1.1}"
+ATOMNS = "{http://www.w3.org/2005/Atom}"
+XPATH_NS = {
+ 'atom': 'http://www.w3.org/2005/Atom',
+ 'ns': 'http://docs.openstack.org/compute/api/v1.1'
+}
+
+INSTANCE_IDS = {FAKE_UUID: 1}
+
+
+def fake_gen_uuid():
+ return FAKE_UUID
+
+
+def return_servers_empty(context, *args, **kwargs):
+ return []
+
+
+def return_security_group(context, instance_id, security_group_id):
+ pass
+
+
+def instance_update(context, instance_uuid, values):
+ inst = fakes.stub_instance(INSTANCE_IDS.get(instance_uuid),
+ name=values.get('display_name'))
+ return (inst, inst)
+
+
+def fake_compute_api(cls, req, id):
+ return True
+
+
+class MockSetAdminPassword(object):
+ def __init__(self):
+ self.instance_id = None
+ self.password = None
+
+ def __call__(self, context, instance_id, password):
+ self.instance_id = instance_id
+ self.password = password
+
+
+class Base64ValidationTest(test.TestCase):
+ def setUp(self):
+ super(Base64ValidationTest, self).setUp()
+ ext_info = plugins.LoadedExtensionInfo()
+ self.controller = servers.ServersController(extension_info=ext_info)
+
+ def test_decode_base64(self):
+ value = "A random string"
+ result = self.controller._decode_base64(base64.b64encode(value))
+ self.assertEqual(result, value)
+
+ def test_decode_base64_binary(self):
+ value = "\x00\x12\x75\x99"
+ result = self.controller._decode_base64(base64.b64encode(value))
+ self.assertEqual(result, value)
+
+ def test_decode_base64_whitespace(self):
+ value = "A random string"
+ encoded = base64.b64encode(value)
+ white = "\n \n%s\t%s\n" % (encoded[:2], encoded[2:])
+ result = self.controller._decode_base64(white)
+ self.assertEqual(result, value)
+
+ def test_decode_base64_invalid(self):
+ invalid = "A random string"
+ result = self.controller._decode_base64(invalid)
+ self.assertEqual(result, None)
+
+ def test_decode_base64_illegal_bytes(self):
+ value = "A random string"
+ encoded = base64.b64encode(value)
+ white = ">\x01%s*%s()" % (encoded[:2], encoded[2:])
+ result = self.controller._decode_base64(white)
+ self.assertEqual(result, None)
+
+
+class QuantumV2Subclass(quantum_api.API):
+ """Used to ensure that API handles subclasses properly."""
+ pass
+
+
+class ServersControllerTest(test.TestCase):
+
+ def setUp(self):
+ super(ServersControllerTest, self).setUp()
+ self.flags(verbose=True, use_ipv6=False)
+ fakes.stub_out_rate_limiting(self.stubs)
+ fakes.stub_out_key_pair_funcs(self.stubs)
+ fake.stub_out_image_service(self.stubs)
+ return_server = fakes.fake_instance_get()
+ return_servers = fakes.fake_instance_get_all_by_filters()
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ return_servers)
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ return_server)
+ self.stubs.Set(db, 'instance_add_security_group',
+ return_security_group)
+ self.stubs.Set(db, 'instance_update_and_get_original',
+ instance_update)
+
+ ext_info = plugins.LoadedExtensionInfo()
+ self.controller = servers.ServersController(extension_info=ext_info)
+ self.ips_controller = ips.IPsController()
+ policy.reset()
+ policy.init()
+ fake_network.stub_out_nw_api_get_instance_nw_info(self.stubs,
+ spectacular=True)
+
+ # def test_can_check_loaded_extensions(self):
+ #self.ext_mgr.extensions = {'os-fake': None}
+ #self.assertTrue(self.controller.ext_mgr.is_loaded('os-fake'))
+ #self.assertFalse(self.controller.ext_mgr.is_loaded('os-not-loaded'))
+
+ def test_requested_networks_prefix(self):
+ uuid = 'br-00000000-0000-0000-0000-000000000000'
+ requested_networks = [{'uuid': uuid}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertTrue((uuid, None) in res)
+
+ def test_requested_networks_quantumv2_enabled_with_port(self):
+ self.flags(network_api_class='nova.network.quantumv2.api.API')
+ port = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
+ requested_networks = [{'port': port}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertEquals(res, [(None, None, port)])
+
+ def test_requested_networks_quantumv2_enabled_with_network(self):
+ self.flags(network_api_class='nova.network.quantumv2.api.API')
+ network = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+ requested_networks = [{'uuid': network}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertEquals(res, [(network, None, None)])
+
+ def test_requested_networks_quantumv2_enabled_with_network_and_port(self):
+ self.flags(network_api_class='nova.network.quantumv2.api.API')
+ network = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+ port = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
+ requested_networks = [{'uuid': network, 'port': port}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertEquals(res, [(None, None, port)])
+
+ def test_requested_networks_quantumv2_disabled_with_port(self):
+ port = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
+ requested_networks = [{'port': port}]
+ self.assertRaises(
+ webob.exc.HTTPBadRequest,
+ self.controller._get_requested_networks,
+ requested_networks)
+
+ def test_requested_networks_api_enabled_with_v2_subclass(self):
+ self.flags(network_api_class='nova.network.quantumv2.api.API')
+ network = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+ port = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
+ requested_networks = [{'uuid': network, 'port': port}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertEquals(res, [(None, None, port)])
+
+ def test_requested_networks_quantumv2_subclass_with_port(self):
+ cls = 'nova.tests.api.openstack.compute.test_servers.QuantumV2Subclass'
+ self.flags(network_api_class=cls)
+ port = 'eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee'
+ requested_networks = [{'port': port}]
+ res = self.controller._get_requested_networks(requested_networks)
+ self.assertEquals(res, [(None, None, port)])
+
+ def test_get_server_by_uuid(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ res_dict = self.controller.show(req, FAKE_UUID)
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+
+ def test_unique_host_id(self):
+ """Create two servers with the same host and different
+ project_ids and check that the hostId's are unique"""
+ def return_instance_with_host(self, *args):
+ project_id = str(uuid.uuid4())
+ return fakes.stub_instance(id=1, uuid=FAKE_UUID,
+ project_id=project_id,
+ host='fake_host')
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ return_instance_with_host)
+ self.stubs.Set(db, 'instance_get',
+ return_instance_with_host)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ server1 = self.controller.show(req, FAKE_UUID)
+ server2 = self.controller.show(req, FAKE_UUID)
+
+ self.assertNotEqual(server1['server']['hostId'],
+ server2['server']['hostId'])
+
+ def test_get_server_by_id(self):
+ self.flags(use_ipv6=True)
+ image_bookmark = "http://localhost/fake/images/10"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+
+ uuid = FAKE_UUID
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % uuid)
+ res_dict = self.controller.show(req, uuid)
+
+ expected_server = {
+ "server": {
+ "id": uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 0,
+ "name": "server1",
+ "status": "BUILD",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "10",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {
+ "seq": "1",
+ },
+ "links": [
+ {
+ "rel": "self",
+ "href": "http://localhost/v3/fake/servers/%s" % uuid,
+ },
+ {
+ "rel": "bookmark",
+ "href": "http://localhost/fake/servers/%s" % uuid,
+ },
+ ],
+ }
+ }
+
+ self.assertThat(res_dict, matchers.DictMatches(expected_server))
+
+ def test_get_server_with_active_status_by_id(self):
+ image_bookmark = "http://localhost/fake/images/10"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+
+ new_return_server = fakes.fake_instance_get(
+ vm_state=vm_states.ACTIVE, progress=100)
+ self.stubs.Set(db, 'instance_get_by_uuid', new_return_server)
+
+ uuid = FAKE_UUID
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % uuid)
+ res_dict = self.controller.show(req, uuid)
+ expected_server = {
+ "server": {
+ "id": uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 100,
+ "name": "server1",
+ "status": "ACTIVE",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "10",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {
+ "seq": "1",
+ },
+ "links": [
+ {
+ "rel": "self",
+ "href": "http://localhost/v3/fake/servers/%s" % uuid,
+ },
+ {
+ "rel": "bookmark",
+ "href": "http://localhost/fake/servers/%s" % uuid,
+ },
+ ],
+ }
+ }
+
+ self.assertThat(res_dict, matchers.DictMatches(expected_server))
+
+ def test_get_server_with_id_image_ref_by_id(self):
+ image_ref = "10"
+ image_bookmark = "http://localhost/fake/images/10"
+ flavor_id = "1"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+
+ new_return_server = fakes.fake_instance_get(
+ vm_state=vm_states.ACTIVE, image_ref=image_ref,
+ flavor_id=flavor_id, progress=100)
+ self.stubs.Set(db, 'instance_get_by_uuid', new_return_server)
+
+ uuid = FAKE_UUID
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % uuid)
+ res_dict = self.controller.show(req, uuid)
+ expected_server = {
+ "server": {
+ "id": uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 100,
+ "name": "server1",
+ "status": "ACTIVE",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "10",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {
+ "seq": "1",
+ },
+ "links": [
+ {
+ "rel": "self",
+ "href": "http://localhost/v3/fake/servers/%s" % uuid,
+ },
+ {
+ "rel": "bookmark",
+ "href": "http://localhost/fake/servers/%s" % uuid,
+ },
+ ],
+ }
+ }
+
+ self.assertThat(res_dict, matchers.DictMatches(expected_server))
+
+ def test_get_server_addresses_from_cache(self):
+ pub0 = ('172.19.0.1', '172.19.0.2',)
+ pub1 = ('1.2.3.4',)
+ pub2 = ('b33f::fdee:ddff:fecc:bbaa',)
+ priv0 = ('192.168.0.3', '192.168.0.4',)
+
+ def _ip(ip):
+ return {'address': ip, 'type': 'fixed'}
+
+ nw_cache = [
+ {'address': 'aa:aa:aa:aa:aa:aa',
+ 'id': 1,
+ 'network': {'bridge': 'br0',
+ 'id': 1,
+ 'label': 'public',
+ 'subnets': [{'cidr': '172.19.0.0/24',
+ 'ips': [_ip(ip) for ip in pub0]},
+ {'cidr': '1.2.3.0/16',
+ 'ips': [_ip(ip) for ip in pub1]},
+ {'cidr': 'b33f::/64',
+ 'ips': [_ip(ip) for ip in pub2]}]}},
+ {'address': 'bb:bb:bb:bb:bb:bb',
+ 'id': 2,
+ 'network': {'bridge': 'br1',
+ 'id': 2,
+ 'label': 'private',
+ 'subnets': [{'cidr': '192.168.0.0/24',
+ 'ips': [_ip(ip) for ip in priv0]}]}}]
+
+ return_server = fakes.fake_instance_get(nw_cache=nw_cache)
+ self.stubs.Set(db, 'instance_get_by_uuid', return_server)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s/ips' % FAKE_UUID)
+ res_dict = self.ips_controller.index(req, FAKE_UUID)
+
+ expected = {
+ 'addresses': {
+ 'private': [
+ {'version': 4, 'addr': '192.168.0.3'},
+ {'version': 4, 'addr': '192.168.0.4'},
+ ],
+ 'public': [
+ {'version': 4, 'addr': '172.19.0.1'},
+ {'version': 4, 'addr': '172.19.0.2'},
+ {'version': 4, 'addr': '1.2.3.4'},
+ {'version': 6, 'addr': 'b33f::fdee:ddff:fecc:bbaa'},
+ ],
+ },
+ }
+ self.assertThat(res_dict, matchers.DictMatches(expected))
+
+ def test_get_server_addresses_nonexistent_network(self):
+ url = '/v3/fake/servers/%s/ips/network_0' % FAKE_UUID
+ req = fakes.HTTPRequestV3.blank(url)
+ self.assertRaises(webob.exc.HTTPNotFound, self.ips_controller.show,
+ req, FAKE_UUID, 'network_0')
+
+ def test_get_server_addresses_nonexistent_server(self):
+ def fake_instance_get(*args, **kwargs):
+ raise exception.InstanceNotFound(instance_id='fake')
+
+ self.stubs.Set(db, 'instance_get_by_uuid', fake_instance_get)
+
+ server_id = str(uuid.uuid4())
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s/ips' % server_id)
+ self.assertRaises(webob.exc.HTTPNotFound,
+ self.ips_controller.index, req, server_id)
+
+ def test_get_server_list_empty(self):
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ return_servers_empty)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ res_dict = self.controller.index(req)
+
+ num_servers = len(res_dict['servers'])
+ self.assertEqual(0, num_servers)
+
+ def test_get_server_list_with_reservation_id(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?reservation_id=foo')
+ res_dict = self.controller.index(req)
+
+ i = 0
+ for s in res_dict['servers']:
+ self.assertEqual(s.get('name'), 'server%d' % (i + 1))
+ i += 1
+
+ def test_get_server_list_with_reservation_id_empty(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail?'
+ 'reservation_id=foo')
+ res_dict = self.controller.detail(req)
+
+ i = 0
+ for s in res_dict['servers']:
+ self.assertEqual(s.get('name'), 'server%d' % (i + 1))
+ i += 1
+
+ def test_get_server_list_with_reservation_id_details(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail?'
+ 'reservation_id=foo')
+ res_dict = self.controller.detail(req)
+
+ i = 0
+ for s in res_dict['servers']:
+ self.assertEqual(s.get('name'), 'server%d' % (i + 1))
+ i += 1
+
+ def test_get_server_list(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ res_dict = self.controller.index(req)
+
+ self.assertEqual(len(res_dict['servers']), 5)
+ for i, s in enumerate(res_dict['servers']):
+ self.assertEqual(s['id'], fakes.get_fake_uuid(i))
+ self.assertEqual(s['name'], 'server%d' % (i + 1))
+ self.assertEqual(s.get('image', None), None)
+
+ expected_links = [
+ {
+ "rel": "self",
+ "href": "http://localhost/v3/fake/servers/%s" % s['id'],
+ },
+ {
+ "rel": "bookmark",
+ "href": "http://localhost/fake/servers/%s" % s['id'],
+ },
+ ]
+
+ self.assertEqual(s['links'], expected_links)
+
+ def test_get_servers_with_limit(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?limit=3')
+ res_dict = self.controller.index(req)
+
+ servers = res_dict['servers']
+ self.assertEqual([s['id'] for s in servers],
+ [fakes.get_fake_uuid(i) for i in xrange(len(servers))])
+
+ servers_links = res_dict['servers_links']
+ self.assertEqual(servers_links[0]['rel'], 'next')
+ href_parts = urlparse.urlparse(servers_links[0]['href'])
+ self.assertEqual('/v3/fake/servers', href_parts.path)
+ params = urlparse.parse_qs(href_parts.query)
+ expected_params = {'limit': ['3'],
+ 'marker': [fakes.get_fake_uuid(2)]}
+ self.assertThat(params, matchers.DictMatches(expected_params))
+
+ def test_get_servers_with_limit_bad_value(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?limit=aaa')
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.index, req)
+
+ def test_get_server_details_empty(self):
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ return_servers_empty)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail')
+ res_dict = self.controller.index(req)
+
+ num_servers = len(res_dict['servers'])
+ self.assertEqual(0, num_servers)
+
+ def test_get_server_details_with_limit(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail?limit=3')
+ res = self.controller.detail(req)
+
+ servers = res['servers']
+ self.assertEqual([s['id'] for s in servers],
+ [fakes.get_fake_uuid(i) for i in xrange(len(servers))])
+
+ servers_links = res['servers_links']
+ self.assertEqual(servers_links[0]['rel'], 'next')
+
+ href_parts = urlparse.urlparse(servers_links[0]['href'])
+ self.assertEqual('/v3/fake/servers', href_parts.path)
+ params = urlparse.parse_qs(href_parts.query)
+ expected = {'limit': ['3'], 'marker': [fakes.get_fake_uuid(2)]}
+ self.assertThat(params, matchers.DictMatches(expected))
+
+ def test_get_server_details_with_limit_bad_value(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail?limit=aaa')
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.detail, req)
+
+ def test_get_server_details_with_limit_and_other_params(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail'
+ '?limit=3&blah=2:t')
+ res = self.controller.detail(req)
+
+ servers = res['servers']
+ self.assertEqual([s['id'] for s in servers],
+ [fakes.get_fake_uuid(i) for i in xrange(len(servers))])
+
+ servers_links = res['servers_links']
+ self.assertEqual(servers_links[0]['rel'], 'next')
+
+ href_parts = urlparse.urlparse(servers_links[0]['href'])
+ self.assertEqual('/v3/fake/servers', href_parts.path)
+ params = urlparse.parse_qs(href_parts.query)
+ expected = {'limit': ['3'], 'blah': ['2:t'],
+ 'marker': [fakes.get_fake_uuid(2)]}
+ self.assertThat(params, matchers.DictMatches(expected))
+
+ def test_get_servers_with_too_big_limit(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?limit=30')
+ res_dict = self.controller.index(req)
+ self.assertTrue('servers_links' not in res_dict)
+
+ def test_get_servers_with_bad_limit(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?limit=asdf')
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.index, req)
+
+ def test_get_servers_with_marker(self):
+ url = '/v3/fake/servers?marker=%s' % fakes.get_fake_uuid(2)
+ req = fakes.HTTPRequestV3.blank(url)
+ servers = self.controller.index(req)['servers']
+ self.assertEqual([s['name'] for s in servers], ["server4", "server5"])
+
+ def test_get_servers_with_limit_and_marker(self):
+ url = '/v3/fake/servers?limit=2&marker=%s' % fakes.get_fake_uuid(1)
+ req = fakes.HTTPRequestV3.blank(url)
+ servers = self.controller.index(req)['servers']
+ self.assertEqual([s['name'] for s in servers], ['server3', 'server4'])
+
+ def test_get_servers_with_bad_marker(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?limit=2&marker=asdf')
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.index, req)
+
+ def test_get_servers_with_bad_option(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?unknownoption=whee')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_allows_image(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('image' in search_opts)
+ self.assertEqual(search_opts['image'], '12345')
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?image=12345')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_tenant_id_filter_converts_to_project_id_for_admin(self):
+ def fake_get_all(context, filters=None, sort_key=None,
+ sort_dir='desc', limit=None, marker=None):
+ self.assertNotEqual(filters, None)
+ self.assertEqual(filters['project_id'], 'fake')
+ self.assertFalse(filters.get('tenant_id'))
+ return [fakes.stub_instance(100)]
+
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?tenant_id=fake',
+ use_admin_context=True)
+ res = self.controller.index(req)
+
+ self.assertTrue('servers' in res)
+
+ def test_admin_restricted_tenant(self):
+ def fake_get_all(context, filters=None, sort_key=None,
+ sort_dir='desc', limit=None, marker=None):
+ self.assertNotEqual(filters, None)
+ self.assertEqual(filters['project_id'], 'fake')
+ return [fakes.stub_instance(100)]
+
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers',
+ use_admin_context=True)
+ res = self.controller.index(req)
+
+ self.assertTrue('servers' in res)
+
+ def test_all_tenants_pass_policy(self):
+ def fake_get_all(context, filters=None, sort_key=None,
+ sort_dir='desc', limit=None, marker=None):
+ self.assertNotEqual(filters, None)
+ self.assertTrue('project_id' not in filters)
+ return [fakes.stub_instance(100)]
+
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ fake_get_all)
+
+ rules = {
+ "compute:get_all_tenants":
+ common_policy.parse_rule("project_id:fake"),
+ "compute:get_all":
+ common_policy.parse_rule("project_id:fake"),
+ }
+
+ common_policy.set_rules(common_policy.Rules(rules))
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?all_tenants=1')
+ res = self.controller.index(req)
+
+ self.assertTrue('servers' in res)
+
+ def test_all_tenants_fail_policy(self):
+ def fake_get_all(context, filters=None, sort_key=None,
+ sort_dir='desc', limit=None, marker=None):
+ self.assertNotEqual(filters, None)
+ return [fakes.stub_instance(100)]
+
+ rules = {
+ "compute:get_all_tenants":
+ common_policy.parse_rule("project_id:non_fake"),
+ "compute:get_all":
+ common_policy.parse_rule("project_id:fake"),
+ }
+
+ common_policy.set_rules(common_policy.Rules(rules))
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?all_tenants=1')
+ self.assertRaises(exception.PolicyNotAuthorized,
+ self.controller.index, req)
+
+ def test_get_servers_allows_flavor(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('flavor' in search_opts)
+ # flavor is an integer ID
+ self.assertEqual(search_opts['flavor'], '12345')
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?flavor=12345')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_with_bad_flavor(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?flavor=abcde')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 0)
+
+ def test_get_servers_allows_status(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('vm_state' in search_opts)
+ self.assertEqual(search_opts['vm_state'], vm_states.ACTIVE)
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?status=active')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_invalid_status(self):
+ # Test getting servers by invalid status.
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?status=baloney',
+ use_admin_context=False)
+ servers = self.controller.index(req)['servers']
+ self.assertEqual(len(servers), 0)
+
+ def test_get_servers_deleted_status_as_user(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?status=deleted',
+ use_admin_context=False)
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.detail, req)
+
+ def test_get_servers_deleted_status_as_admin(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertTrue('vm_state' in search_opts)
+ self.assertEqual(search_opts['vm_state'], 'deleted')
+
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?status=deleted',
+ use_admin_context=True)
+
+ servers = self.controller.detail(req)['servers']
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_allows_name(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('name' in search_opts)
+ self.assertEqual(search_opts['name'], 'whee.*')
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?name=whee.*')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_allows_changes_since(self):
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('changes-since' in search_opts)
+ changes_since = datetime.datetime(2011, 1, 24, 17, 8, 1,
+ tzinfo=iso8601.iso8601.UTC)
+ self.assertEqual(search_opts['changes-since'], changes_since)
+ self.assertTrue('deleted' not in search_opts)
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ params = 'changes-since=2011-01-24T17:08:01Z'
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?%s' % params)
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_allows_changes_since_bad_value(self):
+ params = 'changes-since=asdf'
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?%s' % params)
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.index, req)
+
+ def test_get_servers_admin_filters_as_user(self):
+ """Test getting servers by admin-only or unknown options when
+ context is not admin. Make sure the admin and unknown options
+ are stripped before they get to compute_api.get_all()
+ """
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ # Allowed by user
+ self.assertTrue('name' in search_opts)
+ self.assertTrue('ip' in search_opts)
+ # OSAPI converts status to vm_state
+ self.assertTrue('vm_state' in search_opts)
+ # Allowed only by admins with admin API on
+ self.assertFalse('unknown_option' in search_opts)
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ query_str = "name=foo&ip=10.*&status=active&unknown_option=meow"
+ req = fakes.HTTPRequest.blank('/v3/fake/servers?%s' % query_str)
+ res = self.controller.index(req)
+
+ servers = res['servers']
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_admin_options_as_admin(self):
+ """Test getting servers by admin-only or unknown options when
+ context is admin. All options should be passed
+ """
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ # Allowed by user
+ self.assertTrue('name' in search_opts)
+ # OSAPI converts status to vm_state
+ self.assertTrue('vm_state' in search_opts)
+ # Allowed only by admins with admin API on
+ self.assertTrue('ip' in search_opts)
+ self.assertTrue('unknown_option' in search_opts)
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ query_str = "name=foo&ip=10.*&status=active&unknown_option=meow"
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?%s' % query_str,
+ use_admin_context=True)
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_allows_ip(self):
+ """Test getting servers by ip."""
+
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('ip' in search_opts)
+ self.assertEqual(search_opts['ip'], '10\..*')
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?ip=10\..*')
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_get_servers_admin_allows_ip6(self):
+ """Test getting servers by ip6 with admin_api enabled and
+ admin context
+ """
+ server_uuid = str(uuid.uuid4())
+
+ def fake_get_all(compute_self, context, search_opts=None,
+ sort_key=None, sort_dir='desc',
+ limit=None, marker=None):
+ self.assertNotEqual(search_opts, None)
+ self.assertTrue('ip6' in search_opts)
+ self.assertEqual(search_opts['ip6'], 'ffff.*')
+ return [fakes.stub_instance(100, uuid=server_uuid)]
+
+ self.stubs.Set(compute_api.API, 'get_all', fake_get_all)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers?ip6=ffff.*',
+ use_admin_context=True)
+ servers = self.controller.index(req)['servers']
+
+ self.assertEqual(len(servers), 1)
+ self.assertEqual(servers[0]['id'], server_uuid)
+
+ def test_update_server_all_attributes(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(name='server_test',
+ access_ipv4='0.0.0.0',
+ access_ipv6='beef::0123'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {
+ 'name': 'server_test',
+ 'accessIPv4': '0.0.0.0',
+ 'accessIPv6': 'beef::0123',
+ }}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['name'], 'server_test')
+ self.assertEqual(res_dict['server']['accessIPv4'], '0.0.0.0')
+ self.assertEqual(res_dict['server']['accessIPv6'], 'beef::0123')
+
+ def test_update_server_invalid_xml_raises_lookup(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/xml'
+ #xml request which raises LookupError
+ req.body = """<?xml version="1.0" encoding="TF-8"?>
+ <metadata
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ key="Label"></meta>"""
+ res = req.get_response(fakes.wsgi_app())
+ self.assertEqual(res.status_int, 400)
+
+ def test_update_server_invalid_xml_raises_expat(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/xml'
+ #xml request which raises ExpatError
+ req.body = """<?xml version="1.0" encoding="UTF-8"?>
+ <metadata
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ key="Label"></meta>"""
+ res = req.get_response(fakes.wsgi_app())
+ self.assertEqual(res.status_int, 400)
+
+ def test_update_server_name(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(name='server_test'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'name': 'server_test'}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['name'], 'server_test')
+
+ def test_update_server_name_too_long(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(name='server_test'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'name': 'x' * 256}}
+ req.body = jsonutils.dumps(body)
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.update,
+ req, FAKE_UUID, body)
+
+ def test_update_server_access_ipv4(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv4='0.0.0.0'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv4': '0.0.0.0'}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv4'], '0.0.0.0')
+
+ def test_update_server_access_ipv4_bad_format(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv4='0.0.0.0'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv4': 'bad_format'}}
+ req.body = jsonutils.dumps(body)
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.update,
+ req, FAKE_UUID, body)
+
+ def test_update_server_access_ipv4_none(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv4='0.0.0.0'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv4': None}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv4'], '')
+
+ def test_update_server_access_ipv4_blank(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv4='0.0.0.0'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv4': ''}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv4'], '')
+
+ def test_update_server_access_ipv6(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv6='beef::0123'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv6': 'beef::0123'}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv6'], 'beef::0123')
+
+ def test_update_server_access_ipv6_bad_format(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv6='beef::0123'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv6': 'bad_format'}}
+ req.body = jsonutils.dumps(body)
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.update,
+ req, FAKE_UUID, body)
+
+ def test_update_server_access_ipv6_none(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv6='beef::0123'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv6': None}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv6'], '')
+
+ def test_update_server_access_ipv6_blank(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get(access_ipv6='beef::0123'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'accessIPv6': ''}}
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['accessIPv6'], '')
+
+ def test_update_server_personality(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {
+ 'server': {
+ 'personality': []
+ }
+ }
+ req.body = jsonutils.dumps(body)
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.update, req, FAKE_UUID, body)
+
+ def test_update_server_adminPass_ignored(self):
+ inst_dict = dict(name='server_test', adminPass='bacon')
+ body = dict(server=inst_dict)
+
+ def server_update(context, id, params):
+ filtered_dict = {
+ 'display_name': 'server_test',
+ }
+ self.assertEqual(params, filtered_dict)
+ filtered_dict['uuid'] = id
+ return filtered_dict
+
+ self.stubs.Set(db, 'instance_update', server_update)
+ # FIXME (comstud)
+ # self.stubs.Set(db, 'instance_get',
+ # return_server_with_attributes(name='server_test'))
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = "application/json"
+ req.body = jsonutils.dumps(body)
+ res_dict = self.controller.update(req, FAKE_UUID, body)
+
+ self.assertEqual(res_dict['server']['id'], FAKE_UUID)
+ self.assertEqual(res_dict['server']['name'], 'server_test')
+
+ def test_update_server_not_found(self):
+ def fake_get(*args, **kwargs):
+ raise exception.InstanceNotFound(instance_id='fake')
+
+ self.stubs.Set(compute_api.API, 'get', fake_get)
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'name': 'server_test'}}
+ req.body = jsonutils.dumps(body)
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.update,
+ req, FAKE_UUID, body)
+
+ def test_update_server_not_found_on_update(self):
+ def fake_update(*args, **kwargs):
+ raise exception.InstanceNotFound(instance_id='fake')
+
+ self.stubs.Set(compute_api.API, 'update', fake_update)
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'server': {'name': 'server_test'}}
+ req.body = jsonutils.dumps(body)
+ self.assertRaises(webob.exc.HTTPNotFound, self.controller.update,
+ req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_access_ipv4_bad_format(self):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ access_ipv4 = 'bad_format'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_blank_metadata_key(self):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ access_ipv4 = '0.0.0.0'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ '': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_metadata_key_too_long(self):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ access_ipv4 = '0.0.0.0'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ ('a' * 260): 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPRequestEntityTooLarge,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_metadata_value_too_long(self):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ access_ipv4 = '0.0.0.0'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'key1': ('a' * 260),
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPRequestEntityTooLarge,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_fails_when_min_ram_too_small(self):
+ # make min_ram larger than our instance ram size
+ def fake_get_image(self, context, image_href):
+ return dict(id='76fa36fc-c930-4bf3-8c8a-ea2a2420deb6',
+ name='public image', is_public=True,
+ status='active', properties={'key1': 'value1'},
+ min_ram="4096", min_disk="10")
+
+ self.stubs.Set(fake._FakeImageService, 'show', fake_get_image)
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_fails_when_min_disk_too_small(self):
+ # make min_disk larger than our instance disk size
+ def fake_get_image(self, context, image_href):
+ return dict(id='76fa36fc-c930-4bf3-8c8a-ea2a2420deb6',
+ name='public image', is_public=True,
+ status='active', properties={'key1': 'value1'},
+ min_ram="128", min_disk="100000")
+
+ self.stubs.Set(fake._FakeImageService, 'show', fake_get_image)
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_image_too_large(self):
+ # make image size larger than our instance disk size
+ size = str(1000 * (1024 ** 3))
+
+ def fake_get_image(self, context, image_href):
+ return dict(id='76fa36fc-c930-4bf3-8c8a-ea2a2420deb6',
+ name='public image', is_public=True,
+ status='active', size=size)
+
+ self.stubs.Set(fake._FakeImageService, 'show', fake_get_image)
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_deleted_image(self):
+ def fake_get_image(self, context, image_href):
+ return dict(id='76fa36fc-c930-4bf3-8c8a-ea2a2420deb6',
+ name='public image', is_public=True,
+ status='DELETED')
+
+ self.stubs.Set(fake._FakeImageService, 'show', fake_get_image)
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_rebuild_instance_with_access_ipv6_bad_format(self):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ access_ipv4 = '1.2.3.4'
+ access_ipv6 = 'bad_format'
+ body = {
+ 'rebuild': {
+ 'name': 'new_name',
+ 'imageRef': image_href,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/a/action')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller._action_rebuild, req, FAKE_UUID, body)
+
+ def test_get_all_server_details(self):
+ expected_flavor = {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": 'http://localhost/fake/flavors/1',
+ },
+ ],
+ }
+ expected_image = {
+ "id": "10",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": 'http://localhost/fake/images/10',
+ },
+ ],
+ }
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail')
+ res_dict = self.controller.detail(req)
+
+ for i, s in enumerate(res_dict['servers']):
+ self.assertEqual(s['id'], fakes.get_fake_uuid(i))
+ self.assertEqual(s['hostId'], '')
+ self.assertEqual(s['name'], 'server%d' % (i + 1))
+ self.assertEqual(s['image'], expected_image)
+ self.assertEqual(s['flavor'], expected_flavor)
+ self.assertEqual(s['status'], 'BUILD')
+ self.assertEqual(s['metadata']['seq'], str(i + 1))
+
+ def test_get_all_server_details_with_host(self):
+ '''
+ We want to make sure that if two instances are on the same host, then
+ they return the same hostId. If two instances are on different hosts,
+ they should return different hostIds. In this test, there are 5
+ instances - 2 on one host and 3 on another.
+ '''
+
+ def return_servers_with_host(context, *args, **kwargs):
+ return [fakes.stub_instance(i + 1, 'fake', 'fake', host=i % 2,
+ uuid=fakes.get_fake_uuid(i))
+ for i in xrange(5)]
+
+ self.stubs.Set(db, 'instance_get_all_by_filters',
+ return_servers_with_host)
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/detail')
+ res_dict = self.controller.detail(req)
+
+ server_list = res_dict['servers']
+ host_ids = [server_list[0]['hostId'], server_list[1]['hostId']]
+ self.assertTrue(host_ids[0] and host_ids[1])
+ self.assertNotEqual(host_ids[0], host_ids[1])
+
+ for i, s in enumerate(server_list):
+ self.assertEqual(s['id'], fakes.get_fake_uuid(i))
+ self.assertEqual(s['hostId'], host_ids[i % 2])
+ self.assertEqual(s['name'], 'server%d' % (i + 1))
+
+ def _delete_server_instance(self, uuid=FAKE_UUID):
+ fakes.stub_out_instance_quota(self.stubs, 0, 10)
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % uuid)
+ req.method = 'DELETE'
+
+ self.server_delete_called = False
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE))
+
+ def instance_destroy_mock(*args, **kwargs):
+ self.server_delete_called = True
+ self.stubs.Set(db, 'instance_destroy', instance_destroy_mock)
+
+ self.controller.delete(req, uuid)
+
+ def test_delete_server_instance(self):
+ self._delete_server_instance()
+ self.assertEqual(self.server_delete_called, True)
+
+ def test_delete_server_instance_not_found(self):
+ self.assertRaises(webob.exc.HTTPNotFound,
+ self._delete_server_instance,
+ uuid='non-existent-uuid')
+
+ def test_delete_server_instance_while_building(self):
+ fakes.stub_out_instance_quota(self.stubs, 0, 10)
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'DELETE'
+
+ self.server_delete_called = False
+
+ def instance_destroy_mock(*args, **kwargs):
+ self.server_delete_called = True
+ self.stubs.Set(db, 'instance_destroy', instance_destroy_mock)
+
+ self.controller.delete(req, FAKE_UUID)
+
+ self.assertEqual(self.server_delete_called, True)
+
+ def test_delete_server_instance_while_resize(self):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'DELETE'
+
+ self.server_delete_called = False
+
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_states.ACTIVE,
+ task_state=task_states.RESIZE_PREP))
+
+ def instance_destroy_mock(*args, **kwargs):
+ self.server_delete_called = True
+ self.stubs.Set(db, 'instance_destroy', instance_destroy_mock)
+
+ self.controller.delete(req, FAKE_UUID)
+ # Delete shoud be allowed in any case, even during resizing,
+ # because it may get stuck.
+ self.assertEqual(self.server_delete_called, True)
+
+
+class ServerStatusTest(test.TestCase):
+
+ def setUp(self):
+ super(ServerStatusTest, self).setUp()
+ fakes.stub_out_nw_api(self.stubs)
+
+ ext_info = plugins.LoadedExtensionInfo()
+ self.controller = servers.ServersController(extension_info=ext_info)
+
+ def _get_with_state(self, vm_state, task_state=None):
+ self.stubs.Set(db, 'instance_get_by_uuid',
+ fakes.fake_instance_get(vm_state=vm_state,
+ task_state=task_state))
+
+ request = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ return self.controller.show(request, FAKE_UUID)
+
+ def test_active(self):
+ response = self._get_with_state(vm_states.ACTIVE)
+ self.assertEqual(response['server']['status'], 'ACTIVE')
+
+ def test_reboot(self):
+ response = self._get_with_state(vm_states.ACTIVE,
+ task_states.REBOOTING)
+ self.assertEqual(response['server']['status'], 'REBOOT')
+
+ def test_reboot_hard(self):
+ response = self._get_with_state(vm_states.ACTIVE,
+ task_states.REBOOTING_HARD)
+ self.assertEqual(response['server']['status'], 'HARD_REBOOT')
+
+ def test_reboot_resize_policy_fail(self):
+ def fake_get_server(context, req, id):
+ return fakes.stub_instance(id)
+
+ self.stubs.Set(self.controller, '_get_server', fake_get_server)
+
+ rule = {'compute:reboot':
+ common_policy.parse_rule('role:admin')}
+ common_policy.set_rules(common_policy.Rules(rule))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/1234/action')
+ self.assertRaises(exception.PolicyNotAuthorized,
+ self.controller._action_reboot, req, '1234',
+ {'reboot': {'type': 'HARD'}})
+
+ def test_rebuild(self):
+ response = self._get_with_state(vm_states.ACTIVE,
+ task_states.REBUILDING)
+ self.assertEqual(response['server']['status'], 'REBUILD')
+
+ def test_rebuild_error(self):
+ response = self._get_with_state(vm_states.ERROR)
+ self.assertEqual(response['server']['status'], 'ERROR')
+
+ def test_resize(self):
+ response = self._get_with_state(vm_states.ACTIVE,
+ task_states.RESIZE_PREP)
+ self.assertEqual(response['server']['status'], 'RESIZE')
+
+ def test_confirm_resize_policy_fail(self):
+ def fake_get_server(context, req, id):
+ return fakes.stub_instance(id)
+
+ self.stubs.Set(self.controller, '_get_server', fake_get_server)
+
+ rule = {'compute:confirm_resize':
+ common_policy.parse_rule('role:admin')}
+ common_policy.set_rules(common_policy.Rules(rule))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/1234/action')
+ self.assertRaises(exception.PolicyNotAuthorized,
+ self.controller._action_confirm_resize, req, '1234', {})
+
+ def test_verify_resize(self):
+ response = self._get_with_state(vm_states.RESIZED, None)
+ self.assertEqual(response['server']['status'], 'VERIFY_RESIZE')
+
+ def test_revert_resize(self):
+ response = self._get_with_state(vm_states.RESIZED,
+ task_states.RESIZE_REVERTING)
+ self.assertEqual(response['server']['status'], 'REVERT_RESIZE')
+
+ def test_revert_resize_policy_fail(self):
+ def fake_get_server(context, req, id):
+ return fakes.stub_instance(id)
+
+ self.stubs.Set(self.controller, '_get_server', fake_get_server)
+
+ rule = {'compute:revert_resize':
+ common_policy.parse_rule('role:admin')}
+ common_policy.set_rules(common_policy.Rules(rule))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/1234/action')
+ self.assertRaises(exception.PolicyNotAuthorized,
+ self.controller._action_revert_resize, req, '1234', {})
+
+ def test_password_update(self):
+ response = self._get_with_state(vm_states.ACTIVE,
+ task_states.UPDATING_PASSWORD)
+ self.assertEqual(response['server']['status'], 'PASSWORD')
+
+ def test_stopped(self):
+ response = self._get_with_state(vm_states.STOPPED)
+ self.assertEqual(response['server']['status'], 'SHUTOFF')
+
+
+class ServersControllerCreateTest(test.TestCase):
+
+ def setUp(self):
+ """Shared implementation for tests below that create instance."""
+ super(ServersControllerCreateTest, self).setUp()
+
+ self.flags(verbose=True,
+ enable_instance_password=True)
+ self.instance_cache_num = 0
+ self.instance_cache_by_id = {}
+ self.instance_cache_by_uuid = {}
+
+ ext_info = plugins.LoadedExtensionInfo()
+ self.controller = servers.ServersController(extension_info=ext_info)
+
+ def instance_create(context, inst):
+ inst_type = flavors.get_instance_type_by_flavor_id(3)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ def_image_ref = 'http://localhost/images/%s' % image_uuid
+ self.instance_cache_num += 1
+ instance = {
+ 'id': self.instance_cache_num,
+ 'display_name': inst['display_name'] or 'test',
+ 'uuid': FAKE_UUID,
+ 'instance_type': dict(inst_type),
+ 'access_ip_v4': '1.2.3.4',
+ 'access_ip_v6': 'fead::1234',
+ 'image_ref': inst.get('image_ref', def_image_ref),
+ 'user_id': 'fake',
+ 'project_id': 'fake',
+ 'reservation_id': inst['reservation_id'],
+ "created_at": datetime.datetime(2010, 10, 10, 12, 0, 0),
+ "updated_at": datetime.datetime(2010, 11, 11, 11, 0, 0),
+ "config_drive": None,
+ "progress": 0,
+ "fixed_ips": [],
+ "task_state": "",
+ "vm_state": "",
+ }
+
+ self.instance_cache_by_id[instance['id']] = instance
+ self.instance_cache_by_uuid[instance['uuid']] = instance
+ return instance
+
+ def instance_get(context, instance_id):
+ """Stub for compute/api create() pulling in instance after
+ scheduling
+ """
+ return self.instance_cache_by_id[instance_id]
+
+ def instance_update(context, uuid, values):
+ instance = self.instance_cache_by_uuid[uuid]
+ instance.update(values)
+ return instance
+
+ def rpc_call_wrapper(context, topic, msg, timeout=None):
+ """Stub out the scheduler creating the instance entry."""
+ if (topic == CONF.scheduler_topic and
+ msg['method'] == 'run_instance'):
+ request_spec = msg['args']['request_spec']
+ num_instances = request_spec.get('num_instances', 1)
+ instances = []
+ for x in xrange(num_instances):
+ instances.append(instance_create(context,
+ request_spec['instance_properties']))
+ return instances
+
+ def server_update(context, instance_uuid, params):
+ inst = self.instance_cache_by_uuid[instance_uuid]
+ inst.update(params)
+ return (inst, inst)
+
+ def fake_method(*args, **kwargs):
+ pass
+
+ def project_get_networks(context, user_id):
+ return dict(id='1', host='localhost')
+
+ def queue_get_for(context, *args):
+ return 'network_topic'
+
+ fakes.stub_out_rate_limiting(self.stubs)
+ fakes.stub_out_key_pair_funcs(self.stubs)
+ fake.stub_out_image_service(self.stubs)
+ fakes.stub_out_nw_api(self.stubs)
+ self.stubs.Set(uuid, 'uuid4', fake_gen_uuid)
+ self.stubs.Set(db, 'instance_add_security_group',
+ return_security_group)
+ self.stubs.Set(db, 'project_get_networks',
+ project_get_networks)
+ self.stubs.Set(db, 'instance_create', instance_create)
+ self.stubs.Set(db, 'instance_system_metadata_update',
+ fake_method)
+ self.stubs.Set(db, 'instance_get', instance_get)
+ self.stubs.Set(db, 'instance_update', instance_update)
+ self.stubs.Set(rpc, 'cast', fake_method)
+ self.stubs.Set(rpc, 'call', rpc_call_wrapper)
+ self.stubs.Set(db, 'instance_update_and_get_original',
+ server_update)
+ self.stubs.Set(rpc, 'queue_get_for', queue_get_for)
+ self.stubs.Set(manager.VlanManager, 'allocate_fixed_ip',
+ fake_method)
+
+ def _check_admin_pass_len(self, server_dict):
+ """utility function - check server_dict for adminPass length."""
+ self.assertEqual(CONF.password_length,
+ len(server_dict["adminPass"]))
+
+ def _check_admin_pass_missing(self, server_dict):
+ """utility function - check server_dict for absence of adminPass."""
+ self.assertTrue("adminPass" not in server_dict)
+
+ def _test_create_instance(self):
+ image_uuid = 'c905cedb-7281-47e4-8a62-f26bc5fc4c77'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_uuid, flavorRef=2,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ server = self.controller.create(req, body).obj['server']
+
+ self._check_admin_pass_len(server)
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_server_bad_image_href(self):
+ image_href = 1
+ flavor_ref = 'http://localhost/123/flavors/3'
+
+ body = {
+ 'server': {
+ 'min_count': 1,
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ }
+ }
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create,
+ req,
+ body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-networks extension tests
+ # def test_create_server_with_invalid_networks_parameter(self):
+ # self.ext_mgr.extensions = {'os-networks': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'networks': {'uuid': '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'},
+ # }
+ # }
+ # req = fakes.HTTPRequest.blank('/v2/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create,
+ # req,
+ # body)
+
+ def test_create_server_with_deleted_image(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # Get the fake image service so we can set the status to deleted
+ (image_service, image_id) = glance.get_remote_image_service(
+ context, '')
+ image_service.update(context, image_uuid, {'status': 'DELETED'})
+ self.addCleanup(image_service.update, context, image_uuid,
+ {'status': 'active'})
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_uuid, flavorRef=2,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req.body = jsonutils.dumps(body)
+
+ req.headers["content-type"] = "application/json"
+ with testtools.ExpectedException(
+ webob.exc.HTTPBadRequest,
+ 'Image 76fa36fc-c930-4bf3-8c8a-ea2a2420deb6 is not active.'):
+ self.controller.create(req, body)
+
+ def test_create_server_image_too_large(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+
+ # Get the fake image service so we can set the status to deleted
+ (image_service, image_id) = glance.get_remote_image_service(
+ context, image_uuid)
+
+ image = image_service.show(context, image_id)
+
+ orig_size = image['size']
+ new_size = str(1000 * (1024 ** 3))
+ image_service.update(context, image_uuid, {'size': new_size})
+
+ self.addCleanup(image_service.update, context, image_uuid,
+ {'size': orig_size})
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ body = dict(server=dict(name='server_test',
+ imageRef=image_uuid,
+ flavorRef=2))
+ req.body = jsonutils.dumps(body)
+
+ req.headers["content-type"] = "application/json"
+ with testtools.ExpectedException(
+ webob.exc.HTTPBadRequest,
+ "Instance type's disk is too small for requested image."):
+ self.controller.create(req, body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_instance_invalid_negative_min(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+
+ # body = {
+ # 'server': {
+ # 'min_count': -1,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # }
+ # }
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create,
+ # req,
+ # body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_instance_invalid_negative_max(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+
+ # body = {
+ # 'server': {
+ # 'max_count': -1,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # }
+ # }
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create,
+ # req,
+ # body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_instance_invalid_alpha_min(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+
+ # body = {
+ # 'server': {
+ # 'min_count': 'abcd',
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # }
+ # }
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create,
+ # req,
+ # body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_instance_invalid_alpha_max(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+
+ # body = {
+ # 'server': {
+ # 'max_count': 'abcd',
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # }
+ # }
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create,
+ # req,
+ # body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instances(self):
+ # """Test creating multiple instances but not asking for
+ # reservation_id
+ # """
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'min_count': 2,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {'hello': 'world',
+ # 'open': 'stack'},
+ # 'personality': []
+ # }
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body).obj
+
+ # self.assertEqual(FAKE_UUID, res["server"]["id"])
+ # self._check_admin_pass_len(res["server"])
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instances_pass_disabled(self):
+ # """Test creating multiple instances but not asking for
+ # reservation_id
+ # """
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # self.flags(enable_instance_password=False)
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'min_count': 2,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {'hello': 'world',
+ # 'open': 'stack'},
+ # 'personality': []
+ # }
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body).obj
+
+ # self.assertEqual(FAKE_UUID, res["server"]["id"])
+ # self._check_admin_pass_missing(res["server"])
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instances_resv_id_return(self):
+ # """Test creating multiple instances with asking for
+ # reservation_id
+ # """
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'min_count': 2,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {'hello': 'world',
+ # 'open': 'stack'},
+ # 'personality': [],
+ # 'return_reservation_id': True
+ # }
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body)
+
+ # reservation_id = res.obj.get('reservation_id')
+ # self.assertNotEqual(reservation_id, "")
+ # self.assertNotEqual(reservation_id, None)
+ # self.assertTrue(len(reservation_id) > 1)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instances_with_multiple_volume_bdm(self):
+ # """
+ # Test that a BadRequest is raised if multiple instances
+ # are requested with a list of block device mappings for volumes.
+ # """
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # min_count = 2
+ # bdm = [{'device_name': 'foo1', 'volume_id': 'vol-xxxx'},
+ # {'device_name': 'foo2', 'volume_id': 'vol-yyyy'}
+ # ]
+ # params = {
+ # 'block_device_mapping': bdm,
+ # 'min_count': min_count
+ # }
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['min_count'], 2)
+ # self.assertEqual(len(kwargs['block_device_mapping']), 2)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params, no_image=True)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instances_with_single_volume_bdm(self):
+ # """
+ # Test that a BadRequest is raised if multiple instances
+ # are requested to boot from a single volume.
+ # """
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # min_count = 2
+ # bdm = [{'device_name': 'foo1', 'volume_id': 'vol-xxxx'}]
+ # params = {
+ # 'block_device_mapping': bdm,
+ # 'min_count': min_count
+ # }
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['min_count'], 2)
+ # self.assertEqual(kwargs['block_device_mapping']['volume_id'],
+ # 'vol-xxxx')
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params, no_image=True)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instance_with_non_integer_max_count(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'max_count': 2.5,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {'hello': 'world',
+ # 'open': 'stack'},
+ # 'personality': []
+ # }
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create, req, body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multiple-create extension tests
+ # def test_create_multiple_instance_with_non_integer_min_count(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/123/flavors/3'
+ # body = {
+ # 'server': {
+ # 'min_count': 2.5,
+ # 'name': 'server_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {'hello': 'world',
+ # 'open': 'stack'},
+ # 'personality': []
+ # }
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create, req, body)
+
+ def test_create_instance_image_ref_is_bookmark(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_image_ref_is_invalid(self):
+ image_uuid = 'this_is_not_a_valid_uuid'
+ image_href = 'http://localhost/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.create,
+ req, body)
+
+ def test_create_instance_no_key_pair(self):
+ fakes.stub_out_key_pair_funcs(self.stubs, have_key_pair=False)
+ self._test_create_instance()
+
+ def _test_create_extra(self, params, no_image=False):
+ image_uuid = 'c905cedb-7281-47e4-8a62-f26bc5fc4c77'
+ server = dict(name='server_test', imageRef=image_uuid, flavorRef=2)
+ if no_image:
+ server.pop('imageRef', None)
+ server.update(params)
+ body = dict(server=server)
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ server = self.controller.create(req, body).obj['server']
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-security-groups extension tests
+ # def test_create_instance_with_security_group_enabled(self):
+ # self.ext_mgr.extensions = {'os-security-groups': 'fake'}
+ # group = 'foo'
+ # old_create = compute_api.API.create
+
+ # def sec_group_get(ctx, proj, name):
+ # if name == group:
+ # return True
+ # else:
+ # raise exception.SecurityGroupNotFoundForProject(
+ # project_id=proj, security_group_id=name)
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['security_group'], [group])
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(db, 'security_group_get_by_name', sec_group_get)
+ # # negative test
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra,
+ # {'security_groups': [{'name': 'bogus'}]})
+ # # positive test - extra assert in create path
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra({'security_groups': [{'name': group}]})
+
+ def test_create_instance_with_security_group_disabled(self):
+ group = 'foo'
+ params = {'security_groups': [{'name': group}]}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ # NOTE(vish): if the security groups extension is not
+ # enabled, then security groups passed in
+ # are ignored.
+ self.assertEqual(kwargs['security_group'], ['default'])
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the OS-DCF extension tests
+ # def test_create_instance_with_disk_config_enabled(self):
+ # self.ext_mgr.extensions = {'OS-DCF': 'fake'}
+ # # NOTE(vish): the extension converts OS-DCF:disk_config into
+ # # auto_disk_config, so we are testing with
+ # # the_internal_value
+ # params = {'auto_disk_config': 'AUTO'}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['auto_disk_config'], 'AUTO')
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_disk_config_disabled(self):
+ params = {'auto_disk_config': True}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['auto_disk_config'], False)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the OS-SCH-HNT extension tests
+ # def test_create_instance_with_scheduler_hints_enabled(self):
+ # self.ext_mgr.extensions = {'OS-SCH-HNT': 'fake'}
+ # hints = {'a': 'b'}
+ # params = {'scheduler_hints': hints}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['scheduler_hints'], hints)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_scheduler_hints_disabled(self):
+ hints = {'a': 'b'}
+ params = {'scheduler_hints': hints}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['scheduler_hints'], {})
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_volumes_enabled(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'device_name': 'foo'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_volumes_enabled_no_image(self):
+ # """
+ # Test that the create will fail if there is no image
+ # and no bdms supplied in the request
+ # """
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertNotIn('imageRef', kwargs)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, {}, no_image=True)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_volumes_enabled_and_bdms_no_image(self):
+ # """
+ # Test that the create works if there is no image supplied but
+ # os-volumes extension is enabled and bdms are supplied
+ # """
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'device_name': 'foo'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # self.assertNotIn('imageRef', kwargs)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params, no_image=True)
+
+ def test_create_instance_with_volumes_disabled(self):
+ bdm = [{'device_name': 'foo'}]
+ params = {'block_device_mapping': bdm}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['block_device_mapping'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_device_name_not_string(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'delete_on_termination': 1,
+ # 'device_name': 123,
+ # 'volume_size': 1,
+ # 'volume_id': '11111111-1111-1111-1111-111111111111'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_device_name_empty(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'delete_on_termination': 1,
+ # 'device_name': '',
+ # 'volume_size': 1,
+ # 'volume_id': '11111111-1111-1111-1111-111111111111'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_device_name_too_long(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'delete_on_termination': 1,
+ # 'device_name': 'a' * 256,
+ # 'volume_size': 1,
+ # 'volume_id': '11111111-1111-1111-1111-111111111111'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_space_in_device_name(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'delete_on_termination': 1,
+ # 'device_name': 'vd a',
+ # 'volume_size': 1,
+ # 'volume_id': '11111111-1111-1111-1111-111111111111'}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], bdm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self._test_create_extra, params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-volumes extension tests
+ # def test_create_instance_with_bdm_delete_on_termination(self):
+ # self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ # bdm = [{'device_name': 'foo1', 'delete_on_termination': 1},
+ # {'device_name': 'foo2', 'delete_on_termination': True},
+ # {'device_name': 'foo3', 'delete_on_termination': 'invalid'},
+ # {'device_name': 'foo4', 'delete_on_termination': 0},
+ # {'device_name': 'foo5', 'delete_on_termination': False}]
+ # expected_dbm = [
+ # {'device_name': 'foo1', 'delete_on_termination': True},
+ # {'device_name': 'foo2', 'delete_on_termination': True},
+ # {'device_name': 'foo3', 'delete_on_termination': False},
+ # {'device_name': 'foo4', 'delete_on_termination': False},
+ # {'device_name': 'foo5', 'delete_on_termination': False}]
+ # params = {'block_device_mapping': bdm}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['block_device_mapping'], expected_dbm)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-user-data extension tests
+ # def test_create_instance_with_user_data_enabled(self):
+ # self.ext_mgr.extensions = {'os-user-data': 'fake'}
+ # user_data = 'fake'
+ # params = {'user_data': user_data}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['user_data'], user_data)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_user_data_disabled(self):
+ user_data = 'fake'
+ params = {'user_data': user_data}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['user_data'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-keypairs extension tests
+ # def test_create_instance_with_keypairs_enabled(self):
+ # self.ext_mgr.extensions = {'os-keypairs': 'fake'}
+ # key_name = 'green'
+
+ # params = {'key_name': key_name}
+ # old_create = compute_api.API.create
+
+ # # NOTE(sdague): key pair goes back to the database,
+ # # so we need to stub it out for tests
+ # def key_pair_get(context, user_id, name):
+ # return {'public_key': 'FAKE_KEY',
+ # 'fingerprint': 'FAKE_FINGERPRINT',
+ # 'name': name}
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['key_name'], key_name)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(db, 'key_pair_get', key_pair_get)
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-availability-zone extension tests
+ # def test_create_instance_with_availability_zone_enabled(self):
+ # self.ext_mgr.extensions = {'os-availability-zone': 'fake'}
+ # availability_zone = 'fake'
+ # params = {'availability_zone': availability_zone}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['availability_zone'], availability_zone)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_availability_zone_disabled(self):
+ availability_zone = 'fake'
+ params = {'availability_zone': availability_zone}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['availability_zone'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-multi-create extension tests
+ # def test_create_instance_with_multiple_create_enabled(self):
+ # self.ext_mgr.extensions = {'os-multiple-create': 'fake'}
+ # min_count = 2
+ # max_count = 3
+ # params = {
+ # 'min_count': min_count,
+ # 'max_count': max_count,
+ # }
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # self.assertEqual(kwargs['min_count'], 2)
+ # self.assertEqual(kwargs['max_count'], 3)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_multiple_create_disabled(self):
+ ret_res_id = True
+ min_count = 2
+ max_count = 3
+ params = {
+ 'min_count': min_count,
+ 'max_count': max_count,
+ }
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['min_count'], 1)
+ self.assertEqual(kwargs['max_count'], 1)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-networks extension tests
+ # def test_create_instance_with_networks_enabled(self):
+ # self.ext_mgr.extensions = {'os-networks': 'fake'}
+ # net_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # requested_networks = [{'uuid': net_uuid}]
+ # params = {'networks': requested_networks}
+ # old_create = compute_api.API.create
+
+ # def create(*args, **kwargs):
+ # result = [('76fa36fc-c930-4bf3-8c8a-ea2a2420deb6', None)]
+ # self.assertEqual(kwargs['requested_networks'], result)
+ # return old_create(*args, **kwargs)
+
+ # self.stubs.Set(compute_api.API, 'create', create)
+ # self._test_create_extra(params)
+
+ def test_create_instance_with_networks_disabled_quantumv2(self):
+ self.flags(network_api_class='nova.network.quantumv2.api.API')
+ net_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ requested_networks = [{'uuid': net_uuid}]
+ params = {'networks': requested_networks}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ result = [('76fa36fc-c930-4bf3-8c8a-ea2a2420deb6', None,
+ None)]
+ self.assertEqual(kwargs['requested_networks'], result)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ def test_create_instance_with_networks_disabled(self):
+ net_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ requested_networks = [{'uuid': net_uuid}]
+ params = {'networks': requested_networks}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['requested_networks'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ def test_create_instance_with_access_ip(self):
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ access_ipv4 = '1.2.3.4'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self._check_admin_pass_len(server)
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_with_access_ip_pass_disabled(self):
+ # test with admin passwords disabled See lp bug 921814
+ self.flags(enable_instance_password=False)
+
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ access_ipv4 = '1.2.3.4'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self._check_admin_pass_missing(server)
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_bad_format_access_ip_v4(self):
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ access_ipv4 = 'bad_format'
+ access_ipv6 = 'fead::1234'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.create,
+ req, body)
+
+ def test_create_instance_bad_format_access_ip_v6(self):
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/fake/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/fake/flavors/3'
+ access_ipv4 = '1.2.3.4'
+ access_ipv6 = 'bad_format'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'accessIPv4': access_ipv4,
+ 'accessIPv6': access_ipv6,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.create,
+ req, body)
+
+ def test_create_instance_name_too_long(self):
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'X' * 256,
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest, self.controller.create,
+ req, body)
+
+ def test_create_instance(self):
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self._check_admin_pass_len(server)
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_pass_disabled(self):
+ self.flags(enable_instance_password=False)
+ # proper local hrefs must start with 'http://localhost/v3/'
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self._check_admin_pass_missing(server)
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_too_much_metadata(self):
+ self.flags(quota_metadata_items=1)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ 'vote': 'fiddletown',
+ },
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPRequestEntityTooLarge,
+ self.controller.create, req, body)
+
+ def test_create_instance_metadata_key_too_long(self):
+ self.flags(quota_metadata_items=1)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ ('a' * 260): '12345',
+ },
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPRequestEntityTooLarge,
+ self.controller.create, req, body)
+
+ def test_create_instance_metadata_value_too_long(self):
+ self.flags(quota_metadata_items=1)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'key1': ('a' * 260),
+ },
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPRequestEntityTooLarge,
+ self.controller.create, req, body)
+
+ def test_create_instance_metadata_key_blank(self):
+ self.flags(quota_metadata_items=1)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ '': '12345',
+ },
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_instance_invalid_key_name(self):
+ image_href = 'http://localhost/v3/images/2'
+ flavor_ref = 'http://localhost/flavors/3'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ key_name='nonexistentkey'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_instance_valid_key_name(self):
+ image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ flavor_ref = 'http://localhost/flavors/3'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ key_name='key'))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ self.assertEqual(FAKE_UUID, res["server"]["id"])
+ self._check_admin_pass_len(res["server"])
+
+ def test_create_instance_invalid_flavor_href(self):
+ image_href = 'http://localhost/v3/images/2'
+ flavor_ref = 'http://localhost/v3/flavors/asdf'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_instance_invalid_flavor_id_int(self):
+ image_href = 'http://localhost/v3/fake/images/2'
+ flavor_ref = -1
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_instance_bad_flavor_href(self):
+ image_href = 'http://localhost/v3/images/2'
+ flavor_ref = 'http://localhost/v3/flavors/17'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-config-drive extension tests
+ # def test_create_instance_with_config_drive(self):
+ # self.ext_mgr.extensions = {'os-config-drive': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/v3/fake/flavors/3'
+ # body = {
+ # 'server': {
+ # 'name': 'config_drive_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {
+ # 'hello': 'world',
+ # 'open': 'stack',
+ # },
+ # 'personality': {},
+ # 'config_drive': "true",
+ # },
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body).obj
+
+ # server = res['server']
+ # self.assertEqual(FAKE_UUID, server['id'])
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-config-drive extension tests
+ # def test_create_instance_with_config_drive_as_id(self):
+ # self.ext_mgr.extensions = {'os-config-drive': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/v3/fake/flavors/3'
+ # body = {
+ # 'server': {
+ # 'name': 'config_drive_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {
+ # 'hello': 'world',
+ # 'open': 'stack',
+ # },
+ # 'personality': {},
+ # 'config_drive': image_href,
+ # },
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body).obj
+
+ # server = res['server']
+ # self.assertEqual(FAKE_UUID, server['id'])
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-config-drive extension tests
+ # def test_create_instance_with_bad_config_drive(self):
+ # self.ext_mgr.extensions = {'os-config-drive': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/v3/fake/flavors/3'
+ # body = {
+ # 'server': {
+ # 'name': 'config_drive_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {
+ # 'hello': 'world',
+ # 'open': 'stack',
+ # },
+ # 'personality': {},
+ # 'config_drive': 'asdf',
+ # },
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+
+ # self.assertRaises(webob.exc.HTTPBadRequest,
+ # self.controller.create, req, body)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-config-drive extension tests
+ # def test_create_instance_without_config_drive(self):
+ # self.ext_mgr.extensions = {'os-config-drive': 'fake'}
+ # image_href = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ # flavor_ref = 'http://localhost/v3/fake/flavors/3'
+ # body = {
+ # 'server': {
+ # 'name': 'config_drive_test',
+ # 'imageRef': image_href,
+ # 'flavorRef': flavor_ref,
+ # 'metadata': {
+ # 'hello': 'world',
+ # 'open': 'stack',
+ # },
+ # 'personality': {},
+ # },
+ # }
+
+ # req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ # req.method = 'POST'
+ # req.body = jsonutils.dumps(body)
+ # req.headers["content-type"] = "application/json"
+ # res = self.controller.create(req, body).obj
+
+ # server = res['server']
+ # self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_with_config_drive_disabled(self):
+ config_drive = [{'config_drive': 'foo'}]
+ params = {'config_drive': config_drive}
+ old_create = compute_api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['config_drive'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(compute_api.API, 'create', create)
+ self._test_create_extra(params)
+
+ def test_create_instance_bad_href(self):
+ image_href = 'asdf'
+ flavor_ref = 'http://localhost/v3/flavors/3'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_href, flavorRef=flavor_ref,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_instance_local_href(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ flavor_ref = 'http://localhost/v3/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_uuid,
+ 'flavorRef': flavor_ref,
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self.assertEqual(FAKE_UUID, server['id'])
+
+ def test_create_instance_admin_pass(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_uuid,
+ 'flavorRef': 3,
+ 'adminPass': 'testpass',
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers['content-type'] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self.assertEqual(server['adminPass'], body['server']['adminPass'])
+
+ def test_create_instance_admin_pass_pass_disabled(self):
+ self.flags(enable_instance_password=False)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_uuid,
+ 'flavorRef': 3,
+ 'adminPass': 'testpass',
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers['content-type'] = "application/json"
+ res = self.controller.create(req, body).obj
+
+ server = res['server']
+ self.assertTrue('adminPass' in body['server'])
+ self.assertTrue('adminPass' not in server)
+
+ def test_create_instance_admin_pass_empty(self):
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_uuid,
+ 'flavorRef': 3,
+ 'adminPass': '',
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers['content-type'] = "application/json"
+
+ # The fact that the action doesn't raise is enough validation
+ self.controller.create(req, body)
+
+ def test_create_instance_invalid_personality(self):
+
+ def fake_create(*args, **kwargs):
+ codec = 'utf8'
+ content = 'b25zLiINCg0KLVJpY2hhcmQgQ$$%QQmFjaA=='
+ start_position = 19
+ end_position = 20
+ msg = 'invalid start byte'
+ raise UnicodeDecodeError(codec, content, start_position,
+ end_position, msg)
+
+ self.stubs.Set(compute_api.API,
+ 'create',
+ fake_create)
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ flavor_ref = 'http://localhost/v3/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_uuid,
+ 'flavorRef': flavor_ref,
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "b25zLiINCg0KLVJpY2hhcmQgQ$$%QQmFjaA==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ self.assertRaises(webob.exc.HTTPBadRequest,
+ self.controller.create, req, body)
+
+ def test_create_location(self):
+ selfhref = 'http://localhost/v3/fake/servers/%s' % FAKE_UUID
+ bookhref = 'http://localhost/fake/servers/%s' % FAKE_UUID
+ image_uuid = '76fa36fc-c930-4bf3-8c8a-ea2a2420deb6'
+ image_href = 'http://localhost/v3/images/%s' % image_uuid
+ flavor_ref = 'http://localhost/123/flavors/3'
+ body = {
+ 'server': {
+ 'name': 'server_test',
+ 'imageRef': image_href,
+ 'flavorRef': flavor_ref,
+ 'metadata': {
+ 'hello': 'world',
+ 'open': 'stack',
+ },
+ 'personality': [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "MQ==",
+ },
+ ],
+ },
+ }
+
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers['content-type'] = 'application/json'
+ robj = self.controller.create(req, body)
+
+ self.assertEqual(robj['Location'], selfhref)
+
+ def _do_test_create_instance_above_quota(self, resource, allowed, quota,
+ expected_msg):
+ fakes.stub_out_instance_quota(self.stubs, allowed, quota, resource)
+ image_uuid = 'c905cedb-7281-47e4-8a62-f26bc5fc4c77'
+ body = dict(server=dict(
+ name='server_test', imageRef=image_uuid, flavorRef=3,
+ metadata={'hello': 'world', 'open': 'stack'},
+ personality={}))
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+ try:
+ server = self.controller.create(req, body).obj['server']
+ self.fail('expected quota to be exceeded')
+ except webob.exc.HTTPRequestEntityTooLarge as e:
+ self.assertEquals(e.explanation, expected_msg)
+
+ def test_create_instance_above_quota_instances(self):
+ msg = _('Quota exceeded for instances: Requested 1, but'
+ ' already used 10 of 10 instances')
+ self._do_test_create_instance_above_quota('instances', 0, 10, msg)
+
+ def test_create_instance_above_quota_ram(self):
+ msg = _('Quota exceeded for ram: Requested 4096, but'
+ ' already used 8192 of 10240 ram')
+ self._do_test_create_instance_above_quota('ram', 2048, 10 * 1024, msg)
+
+ def test_create_instance_above_quota_cores(self):
+ msg = _('Quota exceeded for cores: Requested 2, but'
+ ' already used 9 of 10 cores')
+ self._do_test_create_instance_above_quota('cores', 1, 10, msg)
+
+
+class TestServerCreateRequestXMLDeserializer(test.TestCase):
+
+ def setUp(self):
+ super(TestServerCreateRequestXMLDeserializer, self).setUp()
+ self.deserializer = servers.CreateDeserializer()
+
+ def test_minimal_request(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_alternate_namespace_prefix(self):
+ serial_request = """
+<ns2:server xmlns:ns2="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2">
+ <ns2:metadata><ns2:meta key="hello">world</ns2:meta></ns2:metadata>
+ </ns2:server>
+ """
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ 'metadata': {"hello": "world"},
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the scheduler hints extension tests
+# def test_request_with_scheduler_hints_and_alternate_namespace_prefix(self):
+# serial_request = """
+# <ns2:server xmlns:ns2="http://docs.openstack.org/compute/api/v2"
+# name="new-server-test"
+# imageRef="1"
+# flavorRef="2">
+# <ns2:metadata><ns2:meta key="hello">world</ns2:meta></ns2:metadata>
+# <os:scheduler_hints
+# xmlns:os="http://docs.openstack.org/compute/ext/scheduler-hints/api/v2">
+# <hypervisor>xen</hypervisor>
+# <near>eb999657-dd6b-464e-8713-95c532ac3b18</near>
+# </os:scheduler_hints>
+# </ns2:server>
+# """
+# request = self.deserializer.deserialize(serial_request)
+# expected = {
+# "server": {
+# 'OS-SCH-HNT:scheduler_hints': {
+# 'hypervisor': ['xen'],
+# 'near': ['eb999657-dd6b-464e-8713-95c532ac3b18']
+# },
+# "name": "new-server-test",
+# "imageRef": "1",
+# "flavorRef": "2",
+# "metadata": {
+# "hello": "world"
+# }
+# }
+# }
+# self.assertEquals(request['body'], expected)
+
+ def test_access_ipv4(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2"
+ accessIPv4="1.2.3.4"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "accessIPv4": "1.2.3.4",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_access_ipv6(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2"
+ accessIPv6="fead::1234"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "accessIPv6": "fead::1234",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_access_ip(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2"
+ accessIPv4="1.2.3.4"
+ accessIPv6="fead::1234"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_admin_pass(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2"
+ adminPass="1234"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "adminPass": "1234",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_image_link(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="http://localhost:8774/v3/images/2"
+ flavorRef="3"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "http://localhost:8774/v3/images/2",
+ "flavorRef": "3",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_flavor_link(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="http://localhost:8774/v3/flavors/3"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "http://localhost:8774/v3/flavors/3",
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_empty_metadata_personality(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2">
+ <metadata/>
+ <personality/>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "metadata": {},
+ "personality": [],
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_multiple_metadata_items(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2">
+ <metadata>
+ <meta key="one">two</meta>
+ <meta key="open">snack</meta>
+ </metadata>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "metadata": {"one": "two", "open": "snack"},
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_multiple_personality_files(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test"
+ imageRef="1"
+ flavorRef="2">
+ <personality>
+ <file path="/etc/banner.txt">MQ==</file>
+ <file path="/etc/hosts">Mg==</file>
+ </personality>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "2",
+ "personality": [
+ {"path": "/etc/banner.txt", "contents": "MQ=="},
+ {"path": "/etc/hosts", "contents": "Mg=="},
+ ],
+ },
+ }
+ self.assertThat(request['body'], matchers.DictMatches(expected))
+
+ def test_spec_request(self):
+ image_bookmark_link = ("http://servers.api.openstack.org/1234/"
+ "images/52415800-8b69-11e0-9b19-734f6f006e54")
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ imageRef="%s"
+ flavorRef="52415800-8b69-11e0-9b19-734f1195ff37"
+ name="new-server-test">
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <personality>
+ <file path="/etc/banner.txt">Mg==</file>
+ </personality>
+</server>""" % (image_bookmark_link)
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "new-server-test",
+ "imageRef": ("http://servers.api.openstack.org/1234/"
+ "images/52415800-8b69-11e0-9b19-734f6f006e54"),
+ "flavorRef": "52415800-8b69-11e0-9b19-734f1195ff37",
+ "metadata": {"My Server Name": "Apache1"},
+ "personality": [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "Mg==",
+ },
+ ],
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_empty_networks(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks/>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_one_network(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1" fixed_ip="10.0.1.12"/>
+ </networks>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1", "fixed_ip": "10.0.1.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_two_networks(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1" fixed_ip="10.0.1.12"/>
+ <network uuid="2" fixed_ip="10.0.2.12"/>
+ </networks>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1", "fixed_ip": "10.0.1.12"},
+ {"uuid": "2", "fixed_ip": "10.0.2.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_second_network_node_ignored(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1" fixed_ip="10.0.1.12"/>
+ </networks>
+ <networks>
+ <network uuid="2" fixed_ip="10.0.2.12"/>
+ </networks>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1", "fixed_ip": "10.0.1.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_one_network_missing_id(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network fixed_ip="10.0.1.12"/>
+ </networks>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"fixed_ip": "10.0.1.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_one_network_missing_fixed_ip(self):
+ serial_request = """
+<server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1"/>
+ </networks>
+</server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_one_network_empty_id(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="" fixed_ip="10.0.1.12"/>
+ </networks>
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "", "fixed_ip": "10.0.1.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_one_network_empty_fixed_ip(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1" fixed_ip=""/>
+ </networks>
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1", "fixed_ip": ""}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_networks_duplicate_ids(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <networks>
+ <network uuid="1" fixed_ip="10.0.1.12"/>
+ <network uuid="1" fixed_ip="10.0.2.12"/>
+ </networks>
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "networks": [{"uuid": "1", "fixed_ip": "10.0.1.12"},
+ {"uuid": "1", "fixed_ip": "10.0.2.12"}],
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_availability_zone(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1"
+ availability_zone="some_zone:some_host">
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "availability_zone": "some_zone:some_host",
+ }}
+ self.assertEquals(request['body'], expected)
+
+ def test_request_with_multiple_create_args(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1"
+ min_count="1" max_count="3" return_reservation_id="True">
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "min_count": "1",
+ "max_count": "3",
+ "return_reservation_id": True,
+ }}
+ self.assertEquals(request['body'], expected)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the OS-DCF extension tests
+ # def test_request_with_disk_config(self):
+ # serial_request = """
+ # <server xmlns="http://docs.openstack.org/compute/api/v2"
+ # xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+ # name="new-server-test" imageRef="1" flavorRef="1"
+ # OS-DCF:diskConfig="AUTO">
+ # </server>"""
+ # request = self.deserializer.deserialize(serial_request)
+ # expected = {"server": {
+ # "name": "new-server-test",
+ # "imageRef": "1",
+ # "flavorRef": "1",
+ # "OS-DCF:diskConfig": "AUTO",
+ # }}
+ # self.assertEquals(request['body'], expected)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the scheduler hints extension tests
+ # def test_request_with_scheduler_hints(self):
+ # serial_request = """
+ # <server xmlns="http://docs.openstack.org/compute/api/v2"
+ # xmlns:OS-SCH-HNT=
+ # "http://docs.openstack.org/compute/ext/scheduler-hints/api/v2"
+ # name="new-server-test" imageRef="1" flavorRef="1">
+ # <OS-SCH-HNT:scheduler_hints>
+ # <different_host>
+ # 7329b667-50c7-46a6-b913-cb2a09dfeee0
+ # </different_host>
+ # <different_host>
+ # f31efb24-34d2-43e1-8b44-316052956a39
+ # </different_host>
+ # </OS-SCH-HNT:scheduler_hints>
+ # </server>"""
+ # request = self.deserializer.deserialize(serial_request)
+ # expected = {"server": {
+ # "name": "new-server-test",
+ # "imageRef": "1",
+ # "flavorRef": "1",
+ # "OS-SCH-HNT:scheduler_hints": {
+ # "different_host": [
+ # "7329b667-50c7-46a6-b913-cb2a09dfeee0",
+ # "f31efb24-34d2-43e1-8b44-316052956a39",
+ # ]
+ # }
+ # }}
+ # self.assertEquals(request['body'], expected)
+
+ def test_request_with_block_device_mapping(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="new-server-test" imageRef="1" flavorRef="1">
+ <block_device_mapping>
+ <mapping volume_id="7329b667-50c7-46a6-b913-cb2a09dfeee0"
+ device_name="/dev/vda" virtual_name="root"
+ delete_on_termination="False" />
+ <mapping snapshot_id="f31efb24-34d2-43e1-8b44-316052956a39"
+ device_name="/dev/vdb" virtual_name="ephemeral0"
+ delete_on_termination="False" />
+ <mapping device_name="/dev/vdc" no_device="True" />
+ </block_device_mapping>
+ </server>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {"server": {
+ "name": "new-server-test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "block_device_mapping": [
+ {
+ "volume_id": "7329b667-50c7-46a6-b913-cb2a09dfeee0",
+ "device_name": "/dev/vda",
+ "virtual_name": "root",
+ "delete_on_termination": False,
+ },
+ {
+ "snapshot_id": "f31efb24-34d2-43e1-8b44-316052956a39",
+ "device_name": "/dev/vdb",
+ "virtual_name": "ephemeral0",
+ "delete_on_termination": False,
+ },
+ {
+ "device_name": "/dev/vdc",
+ "no_device": True,
+ },
+ ]
+ }}
+ self.assertEquals(request['body'], expected)
+
+ # TODO(cyeoh): bp-v3-api-unittests
+ # This needs to be ported to the os-config-drive extension tests
+ # def test_request_with_config_drive(self):
+ # serial_request = """
+ # <server xmlns="http://docs.openstack.org/compute/api/v2"
+ # name="config_drive_test"
+ # imageRef="1"
+ # flavorRef="1"
+ # config_drive="true"/>"""
+ # request = self.deserializer.deserialize(serial_request)
+ # expected = {
+ # "server": {
+ # "name": "config_drive_test",
+ # "imageRef": "1",
+ # "flavorRef": "1",
+ # "config_drive": "true"
+ # },
+ # }
+ # self.assertEquals(request['body'], expected)
+
+ def test_corrupt_xml(self):
+ """Should throw a 400 error on corrupt xml."""
+ self.assertRaises(
+ exception.MalformedRequestBody,
+ self.deserializer.deserialize,
+ utils.killer_xml_body())
+
+
+# TODO(cyeoh): bp-v3-api-unittests
+# This needs to be ported to the OS-DCF extension tests
+# class TestServerActionRequestXMLDeserializer(test.TestCase):
+
+# def setUp(self):
+# super(TestServerActionRequestXMLDeserializer, self).setUp()
+# self.deserializer = servers.ActionDeserializer()
+
+# def test_rebuild_request(self):
+# serial_request = """
+# <rebuild xmlns="http://docs.openstack.org/compute/api/v1.1"
+# xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+# OS-DCF:diskConfig="MANUAL" imageRef="1"/>"""
+# request = self.deserializer.deserialize(serial_request)
+# expected = {
+# "rebuild": {
+# "imageRef": "1",
+# "OS-DCF:diskConfig": "MANUAL",
+# },
+# }
+# self.assertEquals(request['body'], expected)
+
+# def test_rebuild_request_auto_disk_config_compat(self):
+# serial_request = """
+# <rebuild xmlns="http://docs.openstack.org/compute/api/v1.1"
+# xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+# auto_disk_config="MANUAL" imageRef="1"/>"""
+# request = self.deserializer.deserialize(serial_request)
+# expected = {
+# "rebuild": {
+# "imageRef": "1",
+# "OS-DCF:diskConfig": "MANUAL",
+# },
+# }
+# self.assertEquals(request['body'], expected)
+
+# def test_resize_request(self):
+# serial_request = """
+# <resize xmlns="http://docs.openstack.org/compute/api/v1.1"
+# xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+# OS-DCF:diskConfig="MANUAL" flavorRef="1"/>"""
+# request = self.deserializer.deserialize(serial_request)
+# expected = {
+# "resize": {
+# "flavorRef": "1",
+# "OS-DCF:diskConfig": "MANUAL",
+# },
+# }
+# self.assertEquals(request['body'], expected)
+
+# def test_resize_request_auto_disk_config_compat(self):
+# serial_request = """
+# <resize xmlns="http://docs.openstack.org/compute/api/v1.1"
+# xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+# auto_disk_config="MANUAL" flavorRef="1"/>"""
+# request = self.deserializer.deserialize(serial_request)
+# expected = {
+# "resize": {
+# "flavorRef": "1",
+# "OS-DCF:diskConfig": "MANUAL",
+# },
+# }
+# self.assertEquals(request['body'], expected)
+
+
+class TestAddressesXMLSerialization(test.TestCase):
+
+ index_serializer = ips.AddressesTemplate()
+ show_serializer = ips.NetworkTemplate()
+
+ def test_xml_declaration(self):
+ fixture = {
+ 'network_2': [
+ {'addr': '192.168.0.1', 'version': 4},
+ {'addr': 'fe80::beef', 'version': 6},
+ ],
+ }
+ output = self.show_serializer.serialize(fixture)
+ has_dec = output.startswith("<?xml version='1.0' encoding='UTF-8'?>")
+ self.assertTrue(has_dec)
+
+ def test_show(self):
+ fixture = {
+ 'network_2': [
+ {'addr': '192.168.0.1', 'version': 4},
+ {'addr': 'fe80::beef', 'version': 6},
+ ],
+ }
+ output = self.show_serializer.serialize(fixture)
+ root = etree.XML(output)
+ network = fixture['network_2']
+ self.assertEqual(str(root.get('id')), 'network_2')
+ ip_elems = root.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+ def test_index(self):
+ fixture = {
+ 'addresses': {
+ 'network_1': [
+ {'addr': '192.168.0.3', 'version': 4},
+ {'addr': '192.168.0.5', 'version': 4},
+ ],
+ 'network_2': [
+ {'addr': '192.168.0.1', 'version': 4},
+ {'addr': 'fe80::beef', 'version': 6},
+ ],
+ },
+ }
+ output = self.index_serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'addresses')
+ addresses_dict = fixture['addresses']
+ network_elems = root.findall('{0}network'.format(NS))
+ self.assertEqual(len(network_elems), 2)
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+
+class ServersViewBuilderTest(test.TestCase):
+
+ def setUp(self):
+ super(ServersViewBuilderTest, self).setUp()
+ self.flags(use_ipv6=True)
+ self.instance = fakes.stub_instance(
+ id=1,
+ image_ref="5",
+ uuid="deadbeef-feed-edee-beef-d0ea7beefedd",
+ display_name="test_server",
+ include_fake_metadata=False)
+
+ privates = ['172.19.0.1']
+ publics = ['192.168.0.3']
+ public6s = ['b33f::fdee:ddff:fecc:bbaa']
+
+ def nw_info(*args, **kwargs):
+ return [(None, {'label': 'public',
+ 'ips': [dict(ip=ip) for ip in publics],
+ 'ip6s': [dict(ip=ip) for ip in public6s]}),
+ (None, {'label': 'private',
+ 'ips': [dict(ip=ip) for ip in privates]})]
+
+ def floaters(*args, **kwargs):
+ return []
+
+ fakes.stub_out_nw_api_get_instance_nw_info(self.stubs, nw_info)
+ fakes.stub_out_nw_api_get_floating_ips_by_fixed_address(self.stubs,
+ floaters)
+
+ self.uuid = self.instance['uuid']
+ self.view_builder = views.servers.ViewBuilder()
+ self.request = fakes.HTTPRequestV3.blank("/v2")
+
+ def test_get_flavor_valid_instance_type(self):
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ expected = {"id": "1",
+ "links": [{"rel": "bookmark",
+ "href": flavor_bookmark}]}
+ result = self.view_builder._get_flavor(self.request, self.instance)
+ self.assertEqual(result, expected)
+
+ def test_build_server(self):
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "name": "test_server",
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.basic(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_with_project_id(self):
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "name": "test_server",
+ "links": [
+ {
+ "rel": "self",
+ "href": "http://localhost/v3/fake/servers/%s" %
+ self.uuid,
+ },
+ {
+ "rel": "bookmark",
+ "href": "http://localhost/fake/servers/%s" % self.uuid,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.basic(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_detail(self):
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {},
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_no_image(self):
+ self.instance["image_ref"] = ""
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertEqual(output['server']['image'], "")
+
+ def test_build_server_detail_with_fault(self):
+ self.instance['vm_state'] = vm_states.ERROR
+ self.instance['fault'] = {
+ 'code': 404,
+ 'instance_uuid': self.uuid,
+ 'message': "HTTPNotFound",
+ 'details': "Stock details for test",
+ 'created_at': datetime.datetime(2010, 10, 10, 12, 0, 0),
+ }
+
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "name": "test_server",
+ "status": "ERROR",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {},
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ "fault": {
+ "code": 404,
+ "created": "2010-10-10T12:00:00Z",
+ "message": "HTTPNotFound",
+ "details": "Stock details for test",
+ },
+ }
+ }
+
+ self.request.context = context.RequestContext('fake', 'fake')
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_detail_with_fault_no_details_not_admin(self):
+ self.instance['vm_state'] = vm_states.ERROR
+ self.instance['fault'] = {
+ 'code': 500,
+ 'instance_uuid': self.uuid,
+ 'message': "Error",
+ 'details': 'Stock details for test',
+ 'created_at': datetime.datetime(2010, 10, 10, 12, 0, 0),
+ }
+
+ expected_fault = {"code": 500,
+ "created": "2010-10-10T12:00:00Z",
+ "message": "Error"}
+
+ self.request.context = context.RequestContext('fake', 'fake')
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output['server']['fault'],
+ matchers.DictMatches(expected_fault))
+
+ def test_build_server_detail_with_fault_admin(self):
+ self.instance['vm_state'] = vm_states.ERROR
+ self.instance['fault'] = {
+ 'code': 500,
+ 'instance_uuid': self.uuid,
+ 'message': "Error",
+ 'details': 'Stock details for test',
+ 'created_at': datetime.datetime(2010, 10, 10, 12, 0, 0),
+ }
+
+ expected_fault = {"code": 500,
+ "created": "2010-10-10T12:00:00Z",
+ "message": "Error",
+ 'details': 'Stock details for test'}
+
+ self.request.environ['nova.context'].is_admin = True
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output['server']['fault'],
+ matchers.DictMatches(expected_fault))
+
+ def test_build_server_detail_with_fault_no_details_admin(self):
+ self.instance['vm_state'] = vm_states.ERROR
+ self.instance['fault'] = {
+ 'code': 500,
+ 'instance_uuid': self.uuid,
+ 'message': "Error",
+ 'details': '',
+ 'created_at': datetime.datetime(2010, 10, 10, 12, 0, 0),
+ }
+
+ expected_fault = {"code": 500,
+ "created": "2010-10-10T12:00:00Z",
+ "message": "Error"}
+
+ self.request.environ['nova.context'].is_admin = True
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output['server']['fault'],
+ matchers.DictMatches(expected_fault))
+
+ def test_build_server_detail_with_fault_but_active(self):
+ self.instance['vm_state'] = vm_states.ACTIVE
+ self.instance['progress'] = 100
+ self.instance['fault'] = {
+ 'code': 404,
+ 'instance_uuid': self.uuid,
+ 'message': "HTTPNotFound",
+ 'details': "Stock details for test",
+ 'created_at': datetime.datetime(2010, 10, 10, 12, 0, 0),
+ }
+
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertFalse('fault' in output['server'])
+
+ def test_build_server_detail_active_status(self):
+ #set the power state of the instance to running
+ self.instance['vm_state'] = vm_states.ACTIVE
+ self.instance['progress'] = 100
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 100,
+ "name": "test_server",
+ "status": "ACTIVE",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {},
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_detail_with_accessipv4(self):
+
+ self.instance['access_ip_v4'] = '1.2.3.4'
+
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {},
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "",
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_detail_with_accessipv6(self):
+
+ self.instance['access_ip_v6'] = 'fead::1234'
+
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {},
+ "accessIPv4": "",
+ "accessIPv6": "fead::1234",
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+ def test_build_server_detail_with_metadata(self):
+
+ metadata = []
+ metadata.append(models.InstanceMetadata(key="Open", value="Stack"))
+ self.instance['metadata'] = metadata
+
+ image_bookmark = "http://localhost/fake/images/5"
+ flavor_bookmark = "http://localhost/fake/flavors/1"
+ self_link = "http://localhost/v3/fake/servers/%s" % self.uuid
+ bookmark_link = "http://localhost/fake/servers/%s" % self.uuid
+ expected_server = {
+ "server": {
+ "id": self.uuid,
+ "user_id": "fake_user",
+ "tenant_id": "fake_project",
+ "updated": "2010-11-11T11:00:00Z",
+ "created": "2010-10-10T12:00:00Z",
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "hostId": '',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ 'test1': [
+ {'version': 4, 'addr': '192.168.1.100'},
+ {'version': 6, 'addr': '2001:db8:0:1::1'}
+ ]
+ },
+ "metadata": {"Open": "Stack"},
+ "links": [
+ {
+ "rel": "self",
+ "href": self_link,
+ },
+ {
+ "rel": "bookmark",
+ "href": bookmark_link,
+ },
+ ],
+ }
+ }
+
+ output = self.view_builder.show(self.request, self.instance)
+ self.assertThat(output, matchers.DictMatches(expected_server))
+
+
+class ServerXMLSerializationTest(test.TestCase):
+
+ TIMESTAMP = "2010-10-11T10:30:22Z"
+ SERVER_HREF = 'http://localhost/v3/servers/%s' % FAKE_UUID
+ SERVER_NEXT = 'http://localhost/v3/servers?limit=%s&marker=%s'
+ SERVER_BOOKMARK = 'http://localhost/servers/%s' % FAKE_UUID
+ IMAGE_BOOKMARK = 'http://localhost/images/5'
+ FLAVOR_BOOKMARK = 'http://localhost/flavors/1'
+
+ def test_xml_declaration(self):
+ serializer = servers.ServerTemplate()
+
+ fixture = {
+ "server": {
+ 'id': FAKE_UUID,
+ 'user_id': 'fake_user_id',
+ 'tenant_id': 'fake_tenant_id',
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "hostId": 'e4d909c290d0fb1ca068ffaddf22cbd0',
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.IMAGE_BOOKMARK,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.FLAVOR_BOOKMARK,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ "network_two": [
+ {
+ "version": 4,
+ "addr": "67.23.10.139",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.139",
+ },
+ ],
+ },
+ "metadata": {
+ "Open": "Stack",
+ "Number": "1",
+ },
+ 'links': [
+ {
+ 'href': self.SERVER_HREF,
+ 'rel': 'self',
+ },
+ {
+ 'href': self.SERVER_BOOKMARK,
+ 'rel': 'bookmark',
+ },
+ ],
+ }
+ }
+
+ output = serializer.serialize(fixture)
+ has_dec = output.startswith("<?xml version='1.0' encoding='UTF-8'?>")
+ self.assertTrue(has_dec)
+
+ def test_show(self):
+ serializer = servers.ServerTemplate()
+
+ fixture = {
+ "server": {
+ "id": FAKE_UUID,
+ "user_id": "fake",
+ "tenant_id": "fake",
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "hostId": 'e4d909c290d0fb1ca068ffaddf22cbd0',
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.IMAGE_BOOKMARK,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.FLAVOR_BOOKMARK,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ "network_two": [
+ {
+ "version": 4,
+ "addr": "67.23.10.139",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.139",
+ },
+ ],
+ },
+ "metadata": {
+ "Open": "Stack",
+ "Number": "1",
+ },
+ 'links': [
+ {
+ 'href': self.SERVER_HREF,
+ 'rel': 'self',
+ },
+ {
+ 'href': self.SERVER_BOOKMARK,
+ 'rel': 'bookmark',
+ },
+ ],
+ }
+ }
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'server')
+
+ server_dict = fixture['server']
+
+ for key in ['name', 'id', 'created', 'accessIPv4',
+ 'updated', 'progress', 'status', 'hostId',
+ 'accessIPv6']:
+ self.assertEqual(root.get(key), str(server_dict[key]))
+
+ link_nodes = root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ metadata_root = root.find('{0}metadata'.format(NS))
+ metadata_elems = metadata_root.findall('{0}meta'.format(NS))
+ self.assertEqual(len(metadata_elems), 2)
+ for i, metadata_elem in enumerate(metadata_elems):
+ (meta_key, meta_value) = server_dict['metadata'].items()[i]
+ self.assertEqual(str(metadata_elem.get('key')), str(meta_key))
+ self.assertEqual(str(metadata_elem.text).strip(), str(meta_value))
+
+ image_root = root.find('{0}image'.format(NS))
+ self.assertEqual(image_root.get('id'), server_dict['image']['id'])
+ link_nodes = image_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['image']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ flavor_root = root.find('{0}flavor'.format(NS))
+ self.assertEqual(flavor_root.get('id'), server_dict['flavor']['id'])
+ link_nodes = flavor_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['flavor']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ addresses_root = root.find('{0}addresses'.format(NS))
+ addresses_dict = server_dict['addresses']
+ network_elems = addresses_root.findall('{0}network'.format(NS))
+ self.assertEqual(len(network_elems), 2)
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+ def test_create(self):
+ serializer = servers.FullServerTemplate()
+
+ fixture = {
+ "server": {
+ "id": FAKE_UUID,
+ "user_id": "fake",
+ "tenant_id": "fake",
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
+ "adminPass": "test_password",
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.IMAGE_BOOKMARK,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.FLAVOR_BOOKMARK,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ "network_two": [
+ {
+ "version": 4,
+ "addr": "67.23.10.139",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.139",
+ },
+ ],
+ },
+ "metadata": {
+ "Open": "Stack",
+ "Number": "1",
+ },
+ 'links': [
+ {
+ 'href': self.SERVER_HREF,
+ 'rel': 'self',
+ },
+ {
+ 'href': self.SERVER_BOOKMARK,
+ 'rel': 'bookmark',
+ },
+ ],
+ }
+ }
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'server')
+
+ server_dict = fixture['server']
+
+ for key in ['name', 'id', 'created', 'accessIPv4',
+ 'updated', 'progress', 'status', 'hostId',
+ 'accessIPv6', 'adminPass']:
+ self.assertEqual(root.get(key), str(server_dict[key]))
+
+ link_nodes = root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ metadata_root = root.find('{0}metadata'.format(NS))
+ metadata_elems = metadata_root.findall('{0}meta'.format(NS))
+ self.assertEqual(len(metadata_elems), 2)
+ for i, metadata_elem in enumerate(metadata_elems):
+ (meta_key, meta_value) = server_dict['metadata'].items()[i]
+ self.assertEqual(str(metadata_elem.get('key')), str(meta_key))
+ self.assertEqual(str(metadata_elem.text).strip(), str(meta_value))
+
+ image_root = root.find('{0}image'.format(NS))
+ self.assertEqual(image_root.get('id'), server_dict['image']['id'])
+ link_nodes = image_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['image']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ flavor_root = root.find('{0}flavor'.format(NS))
+ self.assertEqual(flavor_root.get('id'), server_dict['flavor']['id'])
+ link_nodes = flavor_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['flavor']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ addresses_root = root.find('{0}addresses'.format(NS))
+ addresses_dict = server_dict['addresses']
+ network_elems = addresses_root.findall('{0}network'.format(NS))
+ self.assertEqual(len(network_elems), 2)
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+ def test_index(self):
+ serializer = servers.MinimalServersTemplate()
+
+ uuid1 = fakes.get_fake_uuid(1)
+ uuid2 = fakes.get_fake_uuid(2)
+ expected_server_href = 'http://localhost/v3/servers/%s' % uuid1
+ expected_server_bookmark = 'http://localhost/servers/%s' % uuid1
+ expected_server_href_2 = 'http://localhost/v3/servers/%s' % uuid2
+ expected_server_bookmark_2 = 'http://localhost/servers/%s' % uuid2
+ fixture = {"servers": [
+ {
+ "id": fakes.get_fake_uuid(1),
+ "name": "test_server",
+ 'links': [
+ {
+ 'href': expected_server_href,
+ 'rel': 'self',
+ },
+ {
+ 'href': expected_server_bookmark,
+ 'rel': 'bookmark',
+ },
+ ],
+ },
+ {
+ "id": fakes.get_fake_uuid(2),
+ "name": "test_server_2",
+ 'links': [
+ {
+ 'href': expected_server_href_2,
+ 'rel': 'self',
+ },
+ {
+ 'href': expected_server_bookmark_2,
+ 'rel': 'bookmark',
+ },
+ ],
+ },
+ ]}
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'servers_index')
+ server_elems = root.findall('{0}server'.format(NS))
+ self.assertEqual(len(server_elems), 2)
+ for i, server_elem in enumerate(server_elems):
+ server_dict = fixture['servers'][i]
+ for key in ['name', 'id']:
+ self.assertEqual(server_elem.get(key), str(server_dict[key]))
+
+ link_nodes = server_elem.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ def test_index_with_servers_links(self):
+ serializer = servers.MinimalServersTemplate()
+
+ uuid1 = fakes.get_fake_uuid(1)
+ uuid2 = fakes.get_fake_uuid(2)
+ expected_server_href = 'http://localhost/v3/servers/%s' % uuid1
+ expected_server_next = self.SERVER_NEXT % (2, 2)
+ expected_server_bookmark = 'http://localhost/servers/%s' % uuid1
+ expected_server_href_2 = 'http://localhost/v3/servers/%s' % uuid2
+ expected_server_bookmark_2 = 'http://localhost/servers/%s' % uuid2
+ fixture = {"servers": [
+ {
+ "id": fakes.get_fake_uuid(1),
+ "name": "test_server",
+ 'links': [
+ {
+ 'href': expected_server_href,
+ 'rel': 'self',
+ },
+ {
+ 'href': expected_server_bookmark,
+ 'rel': 'bookmark',
+ },
+ ],
+ },
+ {
+ "id": fakes.get_fake_uuid(2),
+ "name": "test_server_2",
+ 'links': [
+ {
+ 'href': expected_server_href_2,
+ 'rel': 'self',
+ },
+ {
+ 'href': expected_server_bookmark_2,
+ 'rel': 'bookmark',
+ },
+ ],
+ },
+ ],
+ "servers_links": [
+ {
+ 'rel': 'next',
+ 'href': expected_server_next,
+ },
+ ]}
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'servers_index')
+ server_elems = root.findall('{0}server'.format(NS))
+ self.assertEqual(len(server_elems), 2)
+ for i, server_elem in enumerate(server_elems):
+ server_dict = fixture['servers'][i]
+ for key in ['name', 'id']:
+ self.assertEqual(server_elem.get(key), str(server_dict[key]))
+
+ link_nodes = server_elem.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ # Check servers_links
+ servers_links = root.findall('{0}link'.format(ATOMNS))
+ for i, link in enumerate(fixture['servers_links']):
+ for key, value in link.items():
+ self.assertEqual(servers_links[i].get(key), value)
+
+ def test_detail(self):
+ serializer = servers.ServersTemplate()
+
+ uuid1 = fakes.get_fake_uuid(1)
+ expected_server_href = 'http://localhost/v3/servers/%s' % uuid1
+ expected_server_bookmark = 'http://localhost/servers/%s' % uuid1
+ expected_image_bookmark = self.IMAGE_BOOKMARK
+ expected_flavor_bookmark = self.FLAVOR_BOOKMARK
+
+ uuid2 = fakes.get_fake_uuid(2)
+ expected_server_href_2 = 'http://localhost/v3/servers/%s' % uuid2
+ expected_server_bookmark_2 = 'http://localhost/servers/%s' % uuid2
+ fixture = {"servers": [
+ {
+ "id": fakes.get_fake_uuid(1),
+ "user_id": "fake",
+ "tenant_id": "fake",
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "hostId": 'e4d909c290d0fb1ca068ffaddf22cbd0',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": expected_image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": expected_flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ },
+ "metadata": {
+ "Number": "1",
+ },
+ "links": [
+ {
+ "href": expected_server_href,
+ "rel": "self",
+ },
+ {
+ "href": expected_server_bookmark,
+ "rel": "bookmark",
+ },
+ ],
+ },
+ {
+ "id": fakes.get_fake_uuid(2),
+ "user_id": 'fake',
+ "tenant_id": 'fake',
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 100,
+ "name": "test_server_2",
+ "status": "ACTIVE",
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "hostId": 'e4d909c290d0fb1ca068ffaddf22cbd0',
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": expected_image_bookmark,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": expected_flavor_bookmark,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ },
+ "metadata": {
+ "Number": "2",
+ },
+ "links": [
+ {
+ "href": expected_server_href_2,
+ "rel": "self",
+ },
+ {
+ "href": expected_server_bookmark_2,
+ "rel": "bookmark",
+ },
+ ],
+ },
+ ]}
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'servers')
+ server_elems = root.findall('{0}server'.format(NS))
+ self.assertEqual(len(server_elems), 2)
+ for i, server_elem in enumerate(server_elems):
+ server_dict = fixture['servers'][i]
+
+ for key in ['name', 'id', 'created', 'accessIPv4',
+ 'updated', 'progress', 'status', 'hostId',
+ 'accessIPv6']:
+ self.assertEqual(server_elem.get(key), str(server_dict[key]))
+
+ link_nodes = server_elem.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ metadata_root = server_elem.find('{0}metadata'.format(NS))
+ metadata_elems = metadata_root.findall('{0}meta'.format(NS))
+ for i, metadata_elem in enumerate(metadata_elems):
+ (meta_key, meta_value) = server_dict['metadata'].items()[i]
+ self.assertEqual(str(metadata_elem.get('key')), str(meta_key))
+ self.assertEqual(str(metadata_elem.text).strip(),
+ str(meta_value))
+
+ image_root = server_elem.find('{0}image'.format(NS))
+ self.assertEqual(image_root.get('id'), server_dict['image']['id'])
+ link_nodes = image_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['image']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ flavor_root = server_elem.find('{0}flavor'.format(NS))
+ self.assertEqual(flavor_root.get('id'),
+ server_dict['flavor']['id'])
+ link_nodes = flavor_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['flavor']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ addresses_root = server_elem.find('{0}addresses'.format(NS))
+ addresses_dict = server_dict['addresses']
+ network_elems = addresses_root.findall('{0}network'.format(NS))
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+ def test_update(self):
+ serializer = servers.ServerTemplate()
+
+ fixture = {
+ "server": {
+ "id": FAKE_UUID,
+ "user_id": "fake",
+ "tenant_id": "fake",
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "hostId": 'e4d909c290d0fb1ca068ffaddf22cbd0',
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.IMAGE_BOOKMARK,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.FLAVOR_BOOKMARK,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ "network_two": [
+ {
+ "version": 4,
+ "addr": "67.23.10.139",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.139",
+ },
+ ],
+ },
+ "metadata": {
+ "Open": "Stack",
+ "Number": "1",
+ },
+ 'links': [
+ {
+ 'href': self.SERVER_HREF,
+ 'rel': 'self',
+ },
+ {
+ 'href': self.SERVER_BOOKMARK,
+ 'rel': 'bookmark',
+ },
+ ],
+ "fault": {
+ "code": 500,
+ "created": self.TIMESTAMP,
+ "message": "Error Message",
+ "details": "Fault details",
+ }
+ }
+ }
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'server')
+
+ server_dict = fixture['server']
+
+ for key in ['name', 'id', 'created', 'accessIPv4',
+ 'updated', 'progress', 'status', 'hostId',
+ 'accessIPv6']:
+ self.assertEqual(root.get(key), str(server_dict[key]))
+
+ link_nodes = root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ metadata_root = root.find('{0}metadata'.format(NS))
+ metadata_elems = metadata_root.findall('{0}meta'.format(NS))
+ self.assertEqual(len(metadata_elems), 2)
+ for i, metadata_elem in enumerate(metadata_elems):
+ (meta_key, meta_value) = server_dict['metadata'].items()[i]
+ self.assertEqual(str(metadata_elem.get('key')), str(meta_key))
+ self.assertEqual(str(metadata_elem.text).strip(), str(meta_value))
+
+ image_root = root.find('{0}image'.format(NS))
+ self.assertEqual(image_root.get('id'), server_dict['image']['id'])
+ link_nodes = image_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['image']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ flavor_root = root.find('{0}flavor'.format(NS))
+ self.assertEqual(flavor_root.get('id'), server_dict['flavor']['id'])
+ link_nodes = flavor_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['flavor']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ addresses_root = root.find('{0}addresses'.format(NS))
+ addresses_dict = server_dict['addresses']
+ network_elems = addresses_root.findall('{0}network'.format(NS))
+ self.assertEqual(len(network_elems), 2)
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+ fault_root = root.find('{0}fault'.format(NS))
+ fault_dict = server_dict['fault']
+ self.assertEqual(fault_root.get("code"), str(fault_dict["code"]))
+ self.assertEqual(fault_root.get("created"), fault_dict["created"])
+ msg_elem = fault_root.find('{0}message'.format(NS))
+ self.assertEqual(msg_elem.text, fault_dict["message"])
+ det_elem = fault_root.find('{0}details'.format(NS))
+ self.assertEqual(det_elem.text, fault_dict["details"])
+
+ def test_action(self):
+ serializer = servers.FullServerTemplate()
+
+ fixture = {
+ "server": {
+ "id": FAKE_UUID,
+ "user_id": "fake",
+ "tenant_id": "fake",
+ 'created': self.TIMESTAMP,
+ 'updated': self.TIMESTAMP,
+ "progress": 0,
+ "name": "test_server",
+ "status": "BUILD",
+ "accessIPv4": "1.2.3.4",
+ "accessIPv6": "fead::1234",
+ "hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
+ "adminPass": "test_password",
+ "image": {
+ "id": "5",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.IMAGE_BOOKMARK,
+ },
+ ],
+ },
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "rel": "bookmark",
+ "href": self.FLAVOR_BOOKMARK,
+ },
+ ],
+ },
+ "addresses": {
+ "network_one": [
+ {
+ "version": 4,
+ "addr": "67.23.10.138",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.138",
+ },
+ ],
+ "network_two": [
+ {
+ "version": 4,
+ "addr": "67.23.10.139",
+ },
+ {
+ "version": 6,
+ "addr": "::babe:67.23.10.139",
+ },
+ ],
+ },
+ "metadata": {
+ "Open": "Stack",
+ "Number": "1",
+ },
+ 'links': [
+ {
+ 'href': self.SERVER_HREF,
+ 'rel': 'self',
+ },
+ {
+ 'href': self.SERVER_BOOKMARK,
+ 'rel': 'bookmark',
+ },
+ ],
+ }
+ }
+
+ output = serializer.serialize(fixture)
+ root = etree.XML(output)
+ xmlutil.validate_schema(root, 'server')
+
+ server_dict = fixture['server']
+
+ for key in ['name', 'id', 'created', 'accessIPv4',
+ 'updated', 'progress', 'status', 'hostId',
+ 'accessIPv6', 'adminPass']:
+ self.assertEqual(root.get(key), str(server_dict[key]))
+
+ link_nodes = root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 2)
+ for i, link in enumerate(server_dict['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ metadata_root = root.find('{0}metadata'.format(NS))
+ metadata_elems = metadata_root.findall('{0}meta'.format(NS))
+ self.assertEqual(len(metadata_elems), 2)
+ for i, metadata_elem in enumerate(metadata_elems):
+ (meta_key, meta_value) = server_dict['metadata'].items()[i]
+ self.assertEqual(str(metadata_elem.get('key')), str(meta_key))
+ self.assertEqual(str(metadata_elem.text).strip(), str(meta_value))
+
+ image_root = root.find('{0}image'.format(NS))
+ self.assertEqual(image_root.get('id'), server_dict['image']['id'])
+ link_nodes = image_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['image']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ flavor_root = root.find('{0}flavor'.format(NS))
+ self.assertEqual(flavor_root.get('id'), server_dict['flavor']['id'])
+ link_nodes = flavor_root.findall('{0}link'.format(ATOMNS))
+ self.assertEqual(len(link_nodes), 1)
+ for i, link in enumerate(server_dict['flavor']['links']):
+ for key, value in link.items():
+ self.assertEqual(link_nodes[i].get(key), value)
+
+ addresses_root = root.find('{0}addresses'.format(NS))
+ addresses_dict = server_dict['addresses']
+ network_elems = addresses_root.findall('{0}network'.format(NS))
+ self.assertEqual(len(network_elems), 2)
+ for i, network_elem in enumerate(network_elems):
+ network = addresses_dict.items()[i]
+ self.assertEqual(str(network_elem.get('id')), str(network[0]))
+ ip_elems = network_elem.findall('{0}ip'.format(NS))
+ for z, ip_elem in enumerate(ip_elems):
+ ip = network[1][z]
+ self.assertEqual(str(ip_elem.get('version')),
+ str(ip['version']))
+ self.assertEqual(str(ip_elem.get('addr')),
+ str(ip['addr']))
+
+
+class ServersAllExtensionsTestCase(test.TestCase):
+ """
+ Servers tests using default API router with all extensions enabled.
+
+ The intent here is to catch cases where extensions end up throwing
+ an exception because of a malformed request before the core API
+ gets a chance to validate the request and return a 422 response.
+
+ For example, ServerDiskConfigController extends servers.Controller:
+
+ @wsgi.extends
+ def create(self, req, body):
+ if 'server' in body:
+ self._set_disk_config(body['server'])
+ resp_obj = (yield)
+ self._show(req, resp_obj)
+
+ we want to ensure that the extension isn't barfing on an invalid
+ body.
+ """
+
+ def setUp(self):
+ super(ServersAllExtensionsTestCase, self).setUp()
+ self.app = compute.APIRouterV3()
+
+ def test_create_missing_server(self):
+ # Test create with malformed body.
+
+ def fake_create(*args, **kwargs):
+ raise test.TestingException("Should not reach the compute API.")
+
+ self.stubs.Set(compute_api.API, 'create', fake_create)
+
+ req = fakes.HTTPRequestV3.blank('/servers')
+ req.method = 'POST'
+ req.content_type = 'application/json'
+ body = {'foo': {'a': 'b'}}
+
+ req.body = jsonutils.dumps(body)
+ res = req.get_response(self.app)
+ self.assertEqual(422, res.status_int)
+
+ def test_update_missing_server(self):
+ # Test create with malformed body.
+
+ def fake_update(*args, **kwargs):
+ raise test.TestingException("Should not reach the compute API.")
+
+ self.stubs.Set(compute_api.API, 'create', fake_update)
+
+ req = fakes.HTTPRequestV3.blank('/servers/1')
+ req.method = 'PUT'
+ req.content_type = 'application/json'
+ body = {'foo': {'a': 'b'}}
+
+ req.body = jsonutils.dumps(body)
+ res = req.get_response(self.app)
+ self.assertEqual(422, res.status_int)
+
+
+class ServersUnprocessableEntityTestCase(test.TestCase):
+ """
+ Tests of places we throw 422 Unprocessable Entity from
+ """
+
+ def setUp(self):
+ super(ServersUnprocessableEntityTestCase, self).setUp()
+ ext_info = plugins.LoadedExtensionInfo()
+ self.controller = servers.ServersController(extension_info=ext_info)
+
+ def _unprocessable_server_create(self, body):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers')
+ req.method = 'POST'
+
+ self.assertRaises(webob.exc.HTTPUnprocessableEntity,
+ self.controller.create, req, body)
+
+ def test_create_server_no_body(self):
+ self._unprocessable_server_create(body=None)
+
+ def test_create_server_missing_server(self):
+ body = {'foo': {'a': 'b'}}
+ self._unprocessable_server_create(body=body)
+
+ def test_create_server_malformed_entity(self):
+ body = {'server': 'string'}
+ self._unprocessable_server_create(body=body)
+
+ def _unprocessable_server_update(self, body):
+ req = fakes.HTTPRequestV3.blank('/v3/fake/servers/%s' % FAKE_UUID)
+ req.method = 'PUT'
+
+ self.assertRaises(webob.exc.HTTPUnprocessableEntity,
+ self.controller.update, req, FAKE_UUID, body)
+
+ def test_update_server_no_body(self):
+ self._unprocessable_server_update(body=None)
+
+ def test_update_server_missing_server(self):
+ body = {'foo': {'a': 'b'}}
+ self._unprocessable_server_update(body=body)
+
+ def test_create_update_malformed_entity(self):
+ body = {'server': 'string'}
+ self._unprocessable_server_update(body=body)
diff --git a/nova/tests/api/openstack/compute/test_v3_extensions.py b/nova/tests/api/openstack/compute/test_v3_extensions.py
new file mode 100644
index 000000000..f7c1bf39c
--- /dev/null
+++ b/nova/tests/api/openstack/compute/test_v3_extensions.py
@@ -0,0 +1,72 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2013 IBM Corp.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+from oslo.config import cfg
+
+from nova.api.openstack import compute
+from nova.api.openstack.compute import plugins
+from nova import test
+
+CONF = cfg.CONF
+
+
+class fake_bad_extension(object):
+ name = "fake_bad_extension"
+ alias = "fake-bad"
+
+
+class ExtensionLoadingTestCase(test.TestCase):
+
+ def test_extensions_loaded(self):
+ app = compute.APIRouterV3()
+ self.assertIn('servers', app._loaded_extension_info.extensions)
+
+ def test_check_bad_extension(self):
+ extension_info = plugins.LoadedExtensionInfo()
+ self.assertFalse(extension_info._check_extension(fake_bad_extension))
+
+ def test_extensions_blacklist(self):
+ app = compute.APIRouterV3()
+ self.assertIn('os-fixed-ips', app._loaded_extension_info.extensions)
+ CONF.set_override('extensions_blacklist', 'os-fixed-ips', 'osapi_v3')
+ app = compute.APIRouterV3()
+ self.assertNotIn('os-fixed-ips', app._loaded_extension_info.extensions)
+
+ def test_extensions_whitelist_accept(self):
+ app = compute.APIRouterV3()
+ self.assertIn('os-fixed-ips', app._loaded_extension_info.extensions)
+ CONF.set_override('extensions_whitelist', 'servers,os-fixed-ips',
+ 'osapi_v3')
+ app = compute.APIRouterV3()
+ self.assertIn('os-fixed-ips', app._loaded_extension_info.extensions)
+
+ def test_extensions_whitelist_block(self):
+ app = compute.APIRouterV3()
+ self.assertIn('os-fixed-ips', app._loaded_extension_info.extensions)
+ CONF.set_override('extensions_whitelist', 'servers', 'osapi_v3')
+ app = compute.APIRouterV3()
+ self.assertNotIn('os-fixed-ips', app._loaded_extension_info.extensions)
+
+ def test_blacklist_overrides_whitelist(self):
+ app = compute.APIRouterV3()
+ self.assertIn('os-fixed-ips', app._loaded_extension_info.extensions)
+ CONF.set_override('extensions_whitelist', 'servers,os-fixed-ips',
+ 'osapi_v3')
+ CONF.set_override('extensions_blacklist', 'os-fixed-ips', 'osapi_v3')
+ app = compute.APIRouterV3()
+ self.assertNotIn('os-fixed-ips', app._loaded_extension_info.extensions)
+ self.assertIn('servers', app._loaded_extension_info.extensions)
+ self.assertEqual(len(app._loaded_extension_info.extensions), 1)
diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py
index 86fa3f750..640e77b33 100644
--- a/nova/tests/api/openstack/fakes.py
+++ b/nova/tests/api/openstack/fakes.py
@@ -334,6 +334,18 @@ class HTTPRequest(os_wsgi.Request):
return out
+class HTTPRequestV3(os_wsgi.Request):
+
+ @classmethod
+ def blank(cls, *args, **kwargs):
+ kwargs['base_url'] = 'http://localhost/v3'
+ use_admin_context = kwargs.pop('use_admin_context', False)
+ out = os_wsgi.Request.blank(*args, **kwargs)
+ out.environ['nova.context'] = FakeRequestContext('fake_user', 'fake',
+ is_admin=use_admin_context)
+ return out
+
+
class TestRouter(wsgi.Router):
def __init__(self, controller, mapper=None):
if not mapper:
diff --git a/nova/tests/cells/test_cells_manager.py b/nova/tests/cells/test_cells_manager.py
index 137d48ff6..543ff66e7 100644
--- a/nova/tests/cells/test_cells_manager.py
+++ b/nova/tests/cells/test_cells_manager.py
@@ -122,6 +122,15 @@ class CellsManagerClassTestCase(test.TestCase):
self.cells_manager.schedule_run_instance(self.ctxt,
host_sched_kwargs=host_sched_kwargs)
+ def test_build_instances(self):
+ build_inst_kwargs = {'instances': [1, 2]}
+ self.mox.StubOutWithMock(self.msg_runner, 'build_instances')
+ our_cell = self.msg_runner.state_manager.get_my_state()
+ self.msg_runner.build_instances(self.ctxt, our_cell, build_inst_kwargs)
+ self.mox.ReplayAll()
+ self.cells_manager.build_instances(self.ctxt,
+ build_inst_kwargs=build_inst_kwargs)
+
def test_run_compute_api_method(self):
# Args should just be silently passed through
cell_name = 'fake-cell-name'
diff --git a/nova/tests/cells/test_cells_messaging.py b/nova/tests/cells/test_cells_messaging.py
index 1de39de1f..9aae11201 100644
--- a/nova/tests/cells/test_cells_messaging.py
+++ b/nova/tests/cells/test_cells_messaging.py
@@ -608,6 +608,16 @@ class CellsTargetedMethodsTestCase(test.TestCase):
self.tgt_cell_name,
host_sched_kwargs)
+ def test_build_instances(self):
+ build_inst_kwargs = {'filter_properties': {},
+ 'key1': 'value1',
+ 'key2': 'value2'}
+ self.mox.StubOutWithMock(self.tgt_scheduler, 'build_instances')
+ self.tgt_scheduler.build_instances(self.ctxt, build_inst_kwargs)
+ self.mox.ReplayAll()
+ self.src_msg_runner.build_instances(self.ctxt, self.tgt_cell_name,
+ build_inst_kwargs)
+
def test_run_compute_api_method(self):
instance_uuid = 'fake_instance_uuid'
diff --git a/nova/tests/cells/test_cells_rpcapi.py b/nova/tests/cells/test_cells_rpcapi.py
index 76c9f05d3..172b54831 100644
--- a/nova/tests/cells/test_cells_rpcapi.py
+++ b/nova/tests/cells/test_cells_rpcapi.py
@@ -114,6 +114,21 @@ class CellsAPITestCase(test.TestCase):
self._check_result(call_info, 'schedule_run_instance',
expected_args)
+ def test_build_instances(self):
+ call_info = self._stub_rpc_method('cast', None)
+
+ self.cells_rpcapi.build_instances(
+ self.fake_context, instances=['1', '2'],
+ image={'fake': 'image'}, arg1=1, arg2=2, arg3=3)
+
+ expected_args = {'build_inst_kwargs': {'instances': ['1', '2'],
+ 'image': {'fake': 'image'},
+ 'arg1': 1,
+ 'arg2': 2,
+ 'arg3': 3}}
+ self._check_result(call_info, 'build_instances',
+ expected_args, version=1.8)
+
def test_instance_update_at_top(self):
fake_info_cache = {'id': 1,
'instance': 'fake_instance',
diff --git a/nova/tests/cells/test_cells_scheduler.py b/nova/tests/cells/test_cells_scheduler.py
index c8f90619e..9cd637cdf 100644
--- a/nova/tests/cells/test_cells_scheduler.py
+++ b/nova/tests/cells/test_cells_scheduler.py
@@ -26,6 +26,7 @@ from nova import context
from nova import db
from nova import exception
from nova.openstack.common import uuidutils
+from nova.scheduler import utils as scheduler_utils
from nova import test
from nova.tests.cells import fakes
@@ -73,24 +74,32 @@ class CellsSchedulerTestCase(test.TestCase):
for x in xrange(3):
instance_uuids.append(uuidutils.generate_uuid())
self.instance_uuids = instance_uuids
- self.request_spec = {'instance_uuids': instance_uuids,
- 'other': 'stuff'}
+ self.instances = [{'uuid': uuid} for uuid in instance_uuids]
+ self.request_spec = {
+ 'instance_uuids': instance_uuids,
+ 'instance_properties': 'fake_properties',
+ 'instance_type': 'fake_type',
+ 'image': 'fake_image',
+ 'security_group': 'fake_sec_groups',
+ 'block_device_mapping': 'fake_bdm'}
+ self.build_inst_kwargs = {
+ 'instances': self.instances,
+ 'instance_type': 'fake_type',
+ 'image': 'fake_image',
+ 'filter_properties': {},
+ 'security_group': 'fake_sec_groups',
+ 'block_device_mapping': 'fake_bdm'}
def test_create_instances_here(self):
# Just grab the first instance type
inst_type = db.instance_type_get(self.ctxt, 1)
image = {'properties': {}}
+ instance_uuids = self.instance_uuids
instance_props = {'hostname': 'meow',
'display_name': 'moo',
'image_ref': 'fake_image_ref',
'user_id': self.ctxt.user_id,
'project_id': self.ctxt.project_id}
- request_spec = {'instance_type': inst_type,
- 'image': image,
- 'security_group': ['default'],
- 'block_device_mapping': [],
- 'instance_properties': instance_props,
- 'instance_uuids': self.instance_uuids}
call_info = {'uuids': []}
@@ -100,10 +109,11 @@ class CellsSchedulerTestCase(test.TestCase):
self.stubs.Set(self.msg_runner, 'instance_update_at_top',
_fake_instance_update_at_top)
- self.scheduler._create_instances_here(self.ctxt, request_spec)
- self.assertEqual(self.instance_uuids, call_info['uuids'])
+ self.scheduler._create_instances_here(self.ctxt, instance_uuids,
+ instance_props, inst_type, image, ['default'], [])
+ self.assertEqual(instance_uuids, call_info['uuids'])
- for instance_uuid in self.instance_uuids:
+ for instance_uuid in instance_uuids:
instance = db.instance_get_by_uuid(self.ctxt, instance_uuid)
self.assertEqual('meow', instance['hostname'])
self.assertEqual('moo-%s' % instance['uuid'],
@@ -146,6 +156,48 @@ class CellsSchedulerTestCase(test.TestCase):
child_cells = self.state_manager.get_child_cells()
self.assertIn(call_info['target_cell'], child_cells)
+ def test_build_instances_selects_child_cell(self):
+ # Make sure there's no capacity info so we're sure to
+ # select a child cell
+ our_cell_info = self.state_manager.get_my_state()
+ our_cell_info.capacities = {}
+
+ call_info = {'times': 0}
+
+ orig_fn = self.msg_runner.build_instances
+
+ def msg_runner_build_instances(ctxt, target_cell, build_inst_kwargs):
+ # This gets called twice. Once for our running it
+ # in this cell.. and then it'll get called when the
+ # child cell is picked. So, first time.. just run it
+ # like normal.
+ if not call_info['times']:
+ call_info['times'] += 1
+ return orig_fn(ctxt, target_cell, build_inst_kwargs)
+ call_info['ctxt'] = ctxt
+ call_info['target_cell'] = target_cell
+ call_info['build_inst_kwargs'] = build_inst_kwargs
+
+ def fake_build_request_spec(image, instances):
+ request_spec = {
+ 'instance_uuids': [inst['uuid'] for inst in instances],
+ 'image': image}
+ return request_spec
+
+ self.stubs.Set(self.msg_runner, 'build_instances',
+ msg_runner_build_instances)
+ self.stubs.Set(scheduler_utils, 'build_request_spec',
+ fake_build_request_spec)
+
+ self.msg_runner.build_instances(self.ctxt, self.my_cell_state,
+ self.build_inst_kwargs)
+
+ self.assertEqual(self.ctxt, call_info['ctxt'])
+ self.assertEqual(self.build_inst_kwargs,
+ call_info['build_inst_kwargs'])
+ child_cells = self.state_manager.get_child_cells()
+ self.assertIn(call_info['target_cell'], child_cells)
+
def test_run_instance_selects_current_cell(self):
# Make sure there's no child cells so that we will be
# selected
@@ -153,9 +205,16 @@ class CellsSchedulerTestCase(test.TestCase):
call_info = {}
- def fake_create_instances_here(ctxt, request_spec):
+ def fake_create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image, security_groups,
+ block_device_mapping):
call_info['ctxt'] = ctxt
- call_info['request_spec'] = request_spec
+ call_info['instance_uuids'] = instance_uuids
+ call_info['instance_properties'] = instance_properties
+ call_info['instance_type'] = instance_type
+ call_info['image'] = image
+ call_info['security_groups'] = security_groups
+ call_info['block_device_mapping'] = block_device_mapping
def fake_rpc_run_instance(ctxt, **host_sched_kwargs):
call_info['host_sched_kwargs'] = host_sched_kwargs
@@ -172,8 +231,69 @@ class CellsSchedulerTestCase(test.TestCase):
self.my_cell_state, host_sched_kwargs)
self.assertEqual(self.ctxt, call_info['ctxt'])
- self.assertEqual(self.request_spec, call_info['request_spec'])
self.assertEqual(host_sched_kwargs, call_info['host_sched_kwargs'])
+ self.assertEqual(self.instance_uuids, call_info['instance_uuids'])
+ self.assertEqual(self.request_spec['instance_properties'],
+ call_info['instance_properties'])
+ self.assertEqual(self.request_spec['instance_type'],
+ call_info['instance_type'])
+ self.assertEqual(self.request_spec['image'], call_info['image'])
+ self.assertEqual(self.request_spec['security_group'],
+ call_info['security_groups'])
+ self.assertEqual(self.request_spec['block_device_mapping'],
+ call_info['block_device_mapping'])
+
+ def test_build_instances_selects_current_cell(self):
+ # Make sure there's no child cells so that we will be
+ # selected
+ self.state_manager.child_cells = {}
+
+ call_info = {}
+
+ def fake_create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image, security_groups,
+ block_device_mapping):
+ call_info['ctxt'] = ctxt
+ call_info['instance_uuids'] = instance_uuids
+ call_info['instance_properties'] = instance_properties
+ call_info['instance_type'] = instance_type
+ call_info['image'] = image
+ call_info['security_groups'] = security_groups
+ call_info['block_device_mapping'] = block_device_mapping
+
+ def fake_rpc_build_instances(ctxt, **build_inst_kwargs):
+ call_info['build_inst_kwargs'] = build_inst_kwargs
+
+ def fake_build_request_spec(image, instances):
+ request_spec = {
+ 'instance_uuids': [inst['uuid'] for inst in instances],
+ 'image': image}
+ return request_spec
+
+ self.stubs.Set(self.scheduler, '_create_instances_here',
+ fake_create_instances_here)
+ self.stubs.Set(self.scheduler.compute_task_api,
+ 'build_instances', fake_rpc_build_instances)
+ self.stubs.Set(scheduler_utils, 'build_request_spec',
+ fake_build_request_spec)
+
+ self.msg_runner.build_instances(self.ctxt, self.my_cell_state,
+ self.build_inst_kwargs)
+
+ self.assertEqual(self.ctxt, call_info['ctxt'])
+ self.assertEqual(self.instance_uuids, call_info['instance_uuids'])
+ self.assertEqual(self.build_inst_kwargs['instances'][0],
+ call_info['instance_properties'])
+ self.assertEqual(self.build_inst_kwargs['instance_type'],
+ call_info['instance_type'])
+ self.assertEqual(self.build_inst_kwargs['image'], call_info['image'])
+ self.assertEqual(self.build_inst_kwargs['security_group'],
+ call_info['security_groups'])
+ self.assertEqual(self.build_inst_kwargs['block_device_mapping'],
+ call_info['block_device_mapping'])
+ self.assertEqual(self.build_inst_kwargs,
+ call_info['build_inst_kwargs'])
+ self.assertEqual(self.instance_uuids, call_info['instance_uuids'])
def test_run_instance_retries_when_no_cells_avail(self):
self.flags(scheduler_retries=7, group='cells')
@@ -183,7 +303,7 @@ class CellsSchedulerTestCase(test.TestCase):
call_info = {'num_tries': 0, 'errored_uuids': []}
- def fake_run_instance(message, host_sched_kwargs):
+ def fake_grab_target_cells(filter_properties):
call_info['num_tries'] += 1
raise exception.NoCellsAvailable()
@@ -194,7 +314,8 @@ class CellsSchedulerTestCase(test.TestCase):
self.assertEqual(vm_states.ERROR, values['vm_state'])
call_info['errored_uuids'].append(instance_uuid)
- self.stubs.Set(self.scheduler, '_run_instance', fake_run_instance)
+ self.stubs.Set(self.scheduler, '_grab_target_cells',
+ fake_grab_target_cells)
self.stubs.Set(time, 'sleep', fake_sleep)
self.stubs.Set(db, 'instance_update', fake_instance_update)
@@ -204,17 +325,55 @@ class CellsSchedulerTestCase(test.TestCase):
self.assertEqual(8, call_info['num_tries'])
self.assertEqual(self.instance_uuids, call_info['errored_uuids'])
- def test_run_instance_on_random_exception(self):
+ def test_build_instances_retries_when_no_cells_avail(self):
self.flags(scheduler_retries=7, group='cells')
- host_sched_kwargs = {'request_spec': self.request_spec,
- 'filter_properties': {}}
+ call_info = {'num_tries': 0, 'errored_uuids': []}
+
+ def fake_grab_target_cells(filter_properties):
+ call_info['num_tries'] += 1
+ raise exception.NoCellsAvailable()
+
+ def fake_sleep(_secs):
+ return
+
+ def fake_instance_update(ctxt, instance_uuid, values):
+ self.assertEqual(vm_states.ERROR, values['vm_state'])
+ call_info['errored_uuids'].append(instance_uuid)
+
+ def fake_build_request_spec(image, instances):
+ request_spec = {
+ 'instance_uuids': [inst['uuid'] for inst in instances],
+ 'image': image}
+ return request_spec
+
+ self.stubs.Set(self.scheduler, '_grab_target_cells',
+ fake_grab_target_cells)
+ self.stubs.Set(time, 'sleep', fake_sleep)
+ self.stubs.Set(db, 'instance_update', fake_instance_update)
+ self.stubs.Set(scheduler_utils, 'build_request_spec',
+ fake_build_request_spec)
+
+ self.msg_runner.build_instances(self.ctxt, self.my_cell_state,
+ self.build_inst_kwargs)
+
+ self.assertEqual(8, call_info['num_tries'])
+ self.assertEqual(self.instance_uuids, call_info['errored_uuids'])
+
+ def test_schedule_method_on_random_exception(self):
+ self.flags(scheduler_retries=7, group='cells')
+
+ instances = [{'uuid': uuid} for uuid in self.instance_uuids]
+ method_kwargs = {
+ 'image': 'fake_image',
+ 'instances': instances,
+ 'filter_properties': {}}
call_info = {'num_tries': 0,
'errored_uuids1': [],
'errored_uuids2': []}
- def fake_run_instance(message, host_sched_kwargs):
+ def fake_grab_target_cells(filter_properties):
call_info['num_tries'] += 1
raise test.TestingException()
@@ -226,13 +385,22 @@ class CellsSchedulerTestCase(test.TestCase):
self.assertEqual(vm_states.ERROR, instance['vm_state'])
call_info['errored_uuids2'].append(instance['uuid'])
- self.stubs.Set(self.scheduler, '_run_instance', fake_run_instance)
+ def fake_build_request_spec(image, instances):
+ request_spec = {
+ 'instance_uuids': [inst['uuid'] for inst in instances],
+ 'image': image}
+ return request_spec
+
+ self.stubs.Set(self.scheduler, '_grab_target_cells',
+ fake_grab_target_cells)
self.stubs.Set(db, 'instance_update', fake_instance_update)
self.stubs.Set(self.msg_runner, 'instance_update_at_top',
- fake_instance_update_at_top)
+ fake_instance_update_at_top)
+ self.stubs.Set(scheduler_utils, 'build_request_spec',
+ fake_build_request_spec)
- self.msg_runner.schedule_run_instance(self.ctxt,
- self.my_cell_state, host_sched_kwargs)
+ self.msg_runner.build_instances(self.ctxt, self.my_cell_state,
+ method_kwargs)
# Shouldn't retry
self.assertEqual(1, call_info['num_tries'])
self.assertEqual(self.instance_uuids, call_info['errored_uuids1'])
@@ -252,9 +420,16 @@ class CellsSchedulerTestCase(test.TestCase):
call_info = {}
- def fake_create_instances_here(ctxt, request_spec):
+ def fake_create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image, security_groups,
+ block_device_mapping):
call_info['ctxt'] = ctxt
- call_info['request_spec'] = request_spec
+ call_info['instance_uuids'] = instance_uuids
+ call_info['instance_properties'] = instance_properties
+ call_info['instance_type'] = instance_type
+ call_info['image'] = image
+ call_info['security_groups'] = security_groups
+ call_info['block_device_mapping'] = block_device_mapping
def fake_rpc_run_instance(ctxt, **host_sched_kwargs):
call_info['host_sched_kwargs'] = host_sched_kwargs
@@ -281,7 +456,16 @@ class CellsSchedulerTestCase(test.TestCase):
self.my_cell_state, host_sched_kwargs)
# Our cell was selected.
self.assertEqual(self.ctxt, call_info['ctxt'])
- self.assertEqual(self.request_spec, call_info['request_spec'])
+ self.assertEqual(self.instance_uuids, call_info['instance_uuids'])
+ self.assertEqual(self.request_spec['instance_properties'],
+ call_info['instance_properties'])
+ self.assertEqual(self.request_spec['instance_type'],
+ call_info['instance_type'])
+ self.assertEqual(self.request_spec['image'], call_info['image'])
+ self.assertEqual(self.request_spec['security_group'],
+ call_info['security_groups'])
+ self.assertEqual(self.request_spec['block_device_mapping'],
+ call_info['block_device_mapping'])
self.assertEqual(host_sched_kwargs, call_info['host_sched_kwargs'])
# Filter args are correct
expected_filt_props = {'context': self.ctxt,
@@ -341,9 +525,16 @@ class CellsSchedulerTestCase(test.TestCase):
call_info = {}
- def fake_create_instances_here(ctxt, request_spec):
+ def fake_create_instances_here(ctxt, instance_uuids,
+ instance_properties, instance_type, image, security_groups,
+ block_device_mapping):
call_info['ctxt'] = ctxt
- call_info['request_spec'] = request_spec
+ call_info['instance_uuids'] = instance_uuids
+ call_info['instance_properties'] = instance_properties
+ call_info['instance_type'] = instance_type
+ call_info['image'] = image
+ call_info['security_groups'] = security_groups
+ call_info['block_device_mapping'] = block_device_mapping
def fake_rpc_run_instance(ctxt, **host_sched_kwargs):
call_info['host_sched_kwargs'] = host_sched_kwargs
@@ -370,7 +561,16 @@ class CellsSchedulerTestCase(test.TestCase):
self.my_cell_state, host_sched_kwargs)
# Our cell was selected.
self.assertEqual(self.ctxt, call_info['ctxt'])
- self.assertEqual(self.request_spec, call_info['request_spec'])
+ self.assertEqual(self.instance_uuids, call_info['instance_uuids'])
+ self.assertEqual(self.request_spec['instance_properties'],
+ call_info['instance_properties'])
+ self.assertEqual(self.request_spec['instance_type'],
+ call_info['instance_type'])
+ self.assertEqual(self.request_spec['image'], call_info['image'])
+ self.assertEqual(self.request_spec['security_group'],
+ call_info['security_groups'])
+ self.assertEqual(self.request_spec['block_device_mapping'],
+ call_info['block_device_mapping'])
self.assertEqual(host_sched_kwargs, call_info['host_sched_kwargs'])
# Weight args are correct
expected_filt_props = {'context': self.ctxt,
diff --git a/nova/tests/compute/test_compute.py b/nova/tests/compute/test_compute.py
index afb7d4c12..d94ca662e 100644
--- a/nova/tests/compute/test_compute.py
+++ b/nova/tests/compute/test_compute.py
@@ -88,6 +88,15 @@ def nop_report_driver_status(self):
pass
+def get_primitive_instance_by_uuid(context, instance_uuid):
+ """
+ Helper method to get an instance and then convert it to
+ a primitive form using jsonutils.
+ """
+ instance = db.instance_get_by_uuid(context, instance_uuid)
+ return jsonutils.to_primitive(instance)
+
+
class FakeSchedulerAPI(object):
def run_instance(self, ctxt, request_spec, admin_password,
@@ -229,7 +238,6 @@ class BaseTestCase(test.TestCase):
inst['vm_state'] = vm_states.ACTIVE
inst['image_ref'] = FAKE_IMAGE_REF
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = self.user_id
inst['project_id'] = self.project_id
inst['host'] = 'fake_host'
@@ -1428,7 +1436,7 @@ class ComputeTestCase(BaseTestCase):
orig_sys_metadata=sys_metadata)
self.compute.terminate_instance(self.context, instance=instance)
- def test_rebuild_launch_time(self):
+ def test_rebuild_launched_at_time(self):
# Ensure instance can be rebuilt.
old_time = datetime.datetime(2012, 4, 1)
cur_time = datetime.datetime(2012, 12, 21, 12, 21)
@@ -2596,11 +2604,23 @@ class ComputeTestCase(BaseTestCase):
self.compute.terminate_instance(self.context, instance,
bdms=None, reservations=resvs)
- def test_finish_resize(self):
- # Contrived test to ensure finish_resize doesn't raise anything.
-
- def fake(*args, **kwargs):
- pass
+ def _test_finish_resize(self, power_on):
+ # Contrived test to ensure finish_resize doesn't raise anything and
+ # also tests resize from ACTIVE or STOPPED state which determines
+ # if the resized instance is powered on or not.
+ self.power_on = power_on
+ self.fake_finish_migration_called = False
+
+ def fake_finish_migration(context, migration, instance, disk_info,
+ network_info, image_meta, resize_instance,
+ block_device_info=None, power_on=True):
+ # nova.conf sets the default flavor to m1.small and the test
+ # sets the default flavor to m1.tiny so they should be different
+ # which makes this a resize
+ self.assertTrue(resize_instance)
+ # ensure the power_on value is what we expect
+ self.assertEqual(self.power_on, power_on)
+ self.fake_finish_migration_called = True
def fake_migration_update(context, id, values):
# Ensure instance status updates is after the migration finish
@@ -2610,12 +2630,19 @@ class ComputeTestCase(BaseTestCase):
self.assertFalse(instance['vm_state'] == vm_states.RESIZED)
self.assertEqual(instance['task_state'], task_states.RESIZE_FINISH)
- self.stubs.Set(self.compute.driver, 'finish_migration', fake)
+ self.stubs.Set(self.compute.driver, 'finish_migration',
+ fake_finish_migration)
self.stubs.Set(db, 'migration_update', fake_migration_update)
reservations = self._ensure_quota_reservations_committed()
- instance = jsonutils.to_primitive(self._create_fake_instance())
+ vm_state = None
+ if power_on:
+ vm_state = vm_states.ACTIVE
+ else:
+ vm_state = vm_states.STOPPED
+ params = {'vm_state': vm_state}
+ instance = jsonutils.to_primitive(self._create_fake_instance(params))
instance_type = flavors.get_default_instance_type()
db.instance_update(self.context, instance["uuid"],
{"task_state": task_states.RESIZE_PREP})
@@ -2626,12 +2653,27 @@ class ComputeTestCase(BaseTestCase):
self.context.elevated(), instance['uuid'], 'pre-migrating')
db.instance_update(self.context, instance["uuid"],
{"task_state": task_states.RESIZE_MIGRATED})
- instance = db.instance_get_by_uuid(self.context, instance['uuid'])
+ # NOTE(mriedem): make sure prep_resize set old_vm_state correctly
+ inst_ref = get_primitive_instance_by_uuid(self.context,
+ instance['uuid'])
+ sys_meta = utils.metadata_to_dict(inst_ref['system_metadata'])
+ self.assertTrue('old_vm_state' in sys_meta)
+ if power_on:
+ self.assertEqual(vm_states.ACTIVE, sys_meta['old_vm_state'])
+ else:
+ self.assertEqual(vm_states.STOPPED, sys_meta['old_vm_state'])
self.compute.finish_resize(self.context,
migration=jsonutils.to_primitive(migration_ref),
- disk_info={}, image={}, instance=instance,
+ disk_info={}, image={}, instance=inst_ref,
reservations=reservations)
- self.compute.terminate_instance(self.context, instance=instance)
+ self.assertTrue(self.fake_finish_migration_called)
+ self.compute.terminate_instance(self.context, instance=inst_ref)
+
+ def test_finish_resize_from_active(self):
+ self._test_finish_resize(power_on=True)
+
+ def test_finish_resize_from_stopped(self):
+ self._test_finish_resize(power_on=False)
def test_finish_resize_with_volumes(self):
"""Contrived test to ensure finish_resize doesn't raise anything."""
@@ -3104,23 +3146,153 @@ class ComputeTestCase(BaseTestCase):
new_instance = db.instance_update(self.context, instance['uuid'],
{'host': 'foo'})
new_instance = jsonutils.to_primitive(new_instance)
+ instance_uuid = new_instance['uuid']
self.compute.prep_resize(self.context, instance=new_instance,
instance_type=instance_type, image={})
migration_ref = db.migration_get_by_instance_and_status(
- self.context.elevated(), new_instance['uuid'], 'pre-migrating')
- db.instance_update(self.context, new_instance['uuid'],
+ self.context.elevated(), instance_uuid, 'pre-migrating')
+
+ # verify 'old_vm_state' was set on system_metadata
+ inst = db.instance_get_by_uuid(self.context, instance_uuid)
+ sys_meta = utils.metadata_to_dict(inst['system_metadata'])
+ self.assertEqual(vm_states.ACTIVE, sys_meta['old_vm_state'])
+
+ db.instance_update(self.context, instance_uuid,
{"task_state": task_states.RESIZE_PREP})
self.compute.resize_instance(self.context, instance=new_instance,
migration=migration_ref, image={},
instance_type=jsonutils.to_primitive(instance_type))
- inst = db.instance_get_by_uuid(self.context, new_instance['uuid'])
+ inst = db.instance_get_by_uuid(self.context, instance_uuid)
self.assertEqual(migration_ref['dest_compute'], inst['host'])
self.compute.terminate_instance(self.context,
instance=jsonutils.to_primitive(inst))
- def test_finish_revert_resize(self):
- # Ensure that the flavor is reverted to the original on revert.
+ def _test_confirm_resize(self, power_on):
+ # Common test case method for confirm_resize
+ def fake(*args, **kwargs):
+ pass
+
+ def fake_confirm_migration_driver(*args, **kwargs):
+ # Confirm the instance uses the new type in finish_resize
+ inst = args[1]
+ sys_meta = utils.metadata_to_dict(inst['system_metadata'])
+ self.assertEqual(sys_meta['instance_type_flavorid'], '3')
+
+ old_vm_state = None
+ if power_on:
+ old_vm_state = vm_states.ACTIVE
+ else:
+ old_vm_state = vm_states.STOPPED
+ params = {'vm_state': old_vm_state}
+ instance = jsonutils.to_primitive(self._create_fake_instance(params))
+
+ self.flags(allow_resize_to_same_host=True)
+ self.stubs.Set(self.compute.driver, 'finish_migration', fake)
+ self.stubs.Set(self.compute.driver, 'confirm_migration',
+ fake_confirm_migration_driver)
+
+ reservations = self._ensure_quota_reservations_committed()
+
+ instance_uuid = instance['uuid']
+
+ self.compute.run_instance(self.context, instance=instance)
+
+ # Confirm the instance size before the resize starts
+ inst_ref = db.instance_get_by_uuid(self.context, instance_uuid)
+ instance_type_ref = db.instance_type_get(self.context,
+ inst_ref['instance_type_id'])
+ self.assertEqual(instance_type_ref['flavorid'], '1')
+
+ new_inst_ref = db.instance_update(self.context, instance_uuid,
+ {'vm_state': old_vm_state})
+
+ new_instance_type_ref = db.instance_type_get_by_flavor_id(
+ self.context, 3)
+ new_instance_type_p = jsonutils.to_primitive(new_instance_type_ref)
+ self.compute.prep_resize(self.context,
+ instance=jsonutils.to_primitive(new_inst_ref),
+ instance_type=new_instance_type_p,
+ image={}, reservations=reservations)
+
+ migration_ref = db.migration_get_by_instance_and_status(
+ self.context.elevated(),
+ inst_ref['uuid'], 'pre-migrating')
+
+ # NOTE(danms): make sure to refresh our inst_ref after prep_resize
+ instance = get_primitive_instance_by_uuid(self.context, instance_uuid)
+ # NOTE(mriedem): ensure prep_resize set old_vm_state in system_metadata
+ sys_meta = utils.metadata_to_dict(instance['system_metadata'])
+ self.assertEqual(old_vm_state, sys_meta['old_vm_state'])
+ db.instance_update(self.context, instance_uuid,
+ {"task_state": task_states.RESIZE_PREP})
+ self.compute.resize_instance(self.context, instance=instance,
+ migration=migration_ref,
+ image={},
+ instance_type=new_instance_type_p)
+ self.compute.finish_resize(self.context,
+ migration=jsonutils.to_primitive(migration_ref),
+ disk_info={}, image={}, instance=instance)
+
+ # Prove that the instance size is now the new size
+ rpcinst = get_primitive_instance_by_uuid(self.context, instance_uuid)
+ instance_type_ref = db.instance_type_get(self.context,
+ rpcinst['instance_type_id'])
+ self.assertEqual(instance_type_ref['flavorid'], '3')
+
+ # Finally, confirm the resize and verify the new flavor is applied
+ db.instance_update(self.context, instance_uuid,
+ {"task_state": None})
+
+ def fake_setup_networks_on_host(cls, ctxt, instance, host,
+ teardown):
+ self.assertEqual(host, migration_ref['source_compute'])
+ inst = db.instance_get_by_uuid(ctxt, instance['uuid'])
+ self.assertEqual('fake-mini', inst['host'])
+ self.assertTrue(teardown)
+
+ self.stubs.Set(network_api.API, 'setup_networks_on_host',
+ fake_setup_networks_on_host)
+
+ def fake_get_power_state(context, instance):
+ if power_on:
+ return power_state.RUNNING
+ else:
+ return power_state.SHUTDOWN
+
+ self.stubs.Set(self.compute, '_get_power_state', fake_get_power_state)
+
+ rpcinst = db.instance_get_by_uuid(self.context, rpcinst['uuid'])
+ self.compute.confirm_resize(self.context, rpcinst, reservations,
+ migration_ref)
+
+ instance = get_primitive_instance_by_uuid(self.context, instance_uuid)
+ self.assertEqual(instance['task_state'], None)
+
+ instance_type_ref = db.instance_type_get(self.context,
+ instance['instance_type_id'])
+ self.assertEqual(instance_type_ref['flavorid'], '3')
+ self.assertEqual('fake-mini', migration_ref['source_compute'])
+ self.assertEqual(old_vm_state, instance['vm_state'])
+ self.compute.terminate_instance(self.context, instance=instance)
+
+ def test_confirm_resize_from_active(self):
+ self._test_confirm_resize(power_on=True)
+
+ def test_confirm_resize_from_stopped(self):
+ self._test_confirm_resize(power_on=False)
+
+ def _test_finish_revert_resize(self, power_on,
+ remove_old_vm_state=False):
+ """
+ Convenience method that does most of the work for the
+ test_finish_revert_resize tests.
+ :param power_on -- True if testing resize from ACTIVE state, False if
+ testing resize from STOPPED state.
+ :param remove_old_vm_state -- True if testing a case where the
+ 'old_vm_state' system_metadata is not present when the
+ finish_revert_resize method is called.
+ """
def fake(*args, **kwargs):
pass
@@ -3130,13 +3302,20 @@ class ComputeTestCase(BaseTestCase):
sys_meta = utils.metadata_to_dict(inst['system_metadata'])
self.assertEqual(sys_meta['instance_type_flavorid'], '1')
+ old_vm_state = None
+ if power_on:
+ old_vm_state = vm_states.ACTIVE
+ else:
+ old_vm_state = vm_states.STOPPED
+ params = {'vm_state': old_vm_state}
+ instance = jsonutils.to_primitive(self._create_fake_instance(params))
+
self.stubs.Set(self.compute.driver, 'finish_migration', fake)
self.stubs.Set(self.compute.driver, 'finish_revert_migration',
fake_finish_revert_migration_driver)
reservations = self._ensure_quota_reservations_committed()
- instance = jsonutils.to_primitive(self._create_fake_instance())
instance_uuid = instance['uuid']
self.compute.run_instance(self.context, instance=instance)
@@ -3147,8 +3326,10 @@ class ComputeTestCase(BaseTestCase):
inst_ref['instance_type_id'])
self.assertEqual(instance_type_ref['flavorid'], '1')
+ old_vm_state = instance['vm_state']
new_inst_ref = db.instance_update(self.context, instance_uuid,
- {'host': 'foo'})
+ {'host': 'foo',
+ 'vm_state': old_vm_state})
new_instance_type_ref = db.instance_type_get_by_flavor_id(
self.context, 3)
@@ -3163,8 +3344,10 @@ class ComputeTestCase(BaseTestCase):
inst_ref['uuid'], 'pre-migrating')
# NOTE(danms): make sure to refresh our inst_ref after prep_resize
- inst_ref = db.instance_get_by_uuid(self.context, instance_uuid)
- instance = jsonutils.to_primitive(inst_ref)
+ instance = get_primitive_instance_by_uuid(self.context, instance_uuid)
+ # NOTE(mriedem): ensure prep_resize set old_vm_state in system_metadata
+ sys_meta = utils.metadata_to_dict(instance['system_metadata'])
+ self.assertEqual(old_vm_state, sys_meta['old_vm_state'])
db.instance_update(self.context, instance_uuid,
{"task_state": task_states.RESIZE_PREP})
self.compute.resize_instance(self.context, instance=instance,
@@ -3176,44 +3359,67 @@ class ComputeTestCase(BaseTestCase):
disk_info={}, image={}, instance=instance)
# Prove that the instance size is now the new size
- inst_ref = db.instance_get_by_uuid(self.context, instance_uuid)
+ rpcinst = get_primitive_instance_by_uuid(self.context, instance_uuid)
instance_type_ref = db.instance_type_get(self.context,
- inst_ref['instance_type_id'])
+ rpcinst['instance_type_id'])
self.assertEqual(instance_type_ref['flavorid'], '3')
# Finally, revert and confirm the old flavor has been applied
- rpcinst = jsonutils.to_primitive(inst_ref)
db.instance_update(self.context, instance_uuid,
{"task_state": task_states.RESIZE_REVERTING})
self.compute.revert_resize(self.context,
migration_id=migration_ref['id'], instance=rpcinst,
reservations=reservations)
- def fake_setup_networks_on_host(cls, ctxt, instance, host):
+ def fake_setup_networks_on_host(cls, ctxt, instance, host,
+ teardown=False):
self.assertEqual(host, migration_ref['source_compute'])
inst = db.instance_get_by_uuid(ctxt, instance['uuid'])
self.assertEqual(host, inst['host'])
+ self.assertFalse(teardown)
self.stubs.Set(network_api.API, 'setup_networks_on_host',
fake_setup_networks_on_host)
rpcinst = db.instance_get_by_uuid(self.context, rpcinst['uuid'])
+ if remove_old_vm_state:
+ # need to wipe out the old_vm_state from system_metadata
+ # before calling finish_revert_resize
+ sys_meta = utils.metadata_to_dict(rpcinst['system_metadata'])
+ sys_meta.pop('old_vm_state')
+ rpcinst = db.instance_update(self.context, rpcinst['uuid'],
+ {'system_metadata': sys_meta})
+
self.compute.finish_revert_resize(self.context,
migration=jsonutils.to_primitive(migration_ref),
instance=rpcinst, reservations=reservations)
- instance = db.instance_get_by_uuid(self.context, instance_uuid)
- self.assertEqual(instance['vm_state'], vm_states.ACTIVE)
+ instance = get_primitive_instance_by_uuid(self.context, instance_uuid)
self.assertEqual(instance['task_state'], None)
- inst_ref = db.instance_get_by_uuid(self.context, instance_uuid)
instance_type_ref = db.instance_type_get(self.context,
- inst_ref['instance_type_id'])
+ instance['instance_type_id'])
self.assertEqual(instance_type_ref['flavorid'], '1')
- self.assertEqual(inst_ref['host'], migration_ref['source_compute'])
+ self.assertEqual(instance['host'], migration_ref['source_compute'])
+ if remove_old_vm_state:
+ self.assertEqual(vm_states.ACTIVE, instance['vm_state'])
+ else:
+ self.assertEqual(old_vm_state, instance['vm_state'])
- self.compute.terminate_instance(self.context,
- instance=jsonutils.to_primitive(inst_ref))
+ self.compute.terminate_instance(self.context, instance=instance)
+
+ def test_finish_revert_resize_from_active(self):
+ self._test_finish_revert_resize(power_on=True)
+
+ def test_finish_revert_resize_from_stopped(self):
+ self._test_finish_revert_resize(power_on=False)
+
+ def test_finish_revert_resize_from_stopped_remove_old_vm_state(self):
+ # in this case we resize from STOPPED but end up with ACTIVE
+ # because the old_vm_state value is not present in
+ # finish_revert_resize
+ self._test_finish_revert_resize(power_on=False,
+ remove_old_vm_state=True)
def _test_cleanup_stored_instance_types(self, old, new, revert=False):
migration = dict(old_instance_type_id=old,
@@ -4592,15 +4798,23 @@ class ComputeTestCase(BaseTestCase):
self.mox.ReplayAll()
self.compute._init_instance('fake-context', instance)
- def test_init_instance_reverts_crashed_migrations(self):
+ def _test_init_instance_reverts_crashed_migrations(self,
+ old_vm_state=None):
+ power_on = True if (not old_vm_state or
+ old_vm_state == vm_states.ACTIVE) else False
+ sys_meta = {
+ 'old_vm_state': old_vm_state
+ }
instance = {
'uuid': 'foo',
'vm_state': vm_states.ERROR,
'task_state': task_states.RESIZE_MIGRATING,
'power_state': power_state.SHUTDOWN,
+ 'system_metadata': sys_meta
}
fixed = dict(instance, task_state=None)
self.mox.StubOutWithMock(compute_utils, 'get_nw_info_for_instance')
+ self.mox.StubOutWithMock(utils, 'metadata_to_dict')
self.mox.StubOutWithMock(self.compute.driver, 'plug_vifs')
self.mox.StubOutWithMock(self.compute.driver,
'finish_revert_migration')
@@ -4612,9 +4826,10 @@ class ComputeTestCase(BaseTestCase):
compute_utils.get_nw_info_for_instance(instance).AndReturn(
network_model.NetworkInfo())
self.compute.driver.plug_vifs(instance, [])
+ utils.metadata_to_dict(instance['system_metadata']).AndReturn(sys_meta)
self.compute._get_instance_volume_block_device_info(
self.context, instance).AndReturn([])
- self.compute.driver.finish_revert_migration(instance, [], [])
+ self.compute.driver.finish_revert_migration(instance, [], [], power_on)
self.compute._instance_update(self.context, instance['uuid'],
task_state=None).AndReturn(fixed)
self.compute.driver.get_info(fixed).AndReturn(
@@ -4624,6 +4839,17 @@ class ComputeTestCase(BaseTestCase):
self.compute._init_instance(self.context, instance)
+ def test_init_instance_reverts_crashed_migration_from_active(self):
+ self._test_init_instance_reverts_crashed_migrations(
+ old_vm_state=vm_states.ACTIVE)
+
+ def test_init_instance_reverts_crashed_migration_from_stopped(self):
+ self._test_init_instance_reverts_crashed_migrations(
+ old_vm_state=vm_states.STOPPED)
+
+ def test_init_instance_reverts_crashed_migration_no_old_state(self):
+ self._test_init_instance_reverts_crashed_migrations(old_vm_state=None)
+
def _test_init_instance_update_nw_info_cache_helper(self, legacy_nwinfo):
self.compute.driver.legacy_nwinfo = lambda *a, **k: legacy_nwinfo
@@ -7733,7 +7959,6 @@ class ComputeAPITestCase(BaseTestCase):
inst['vm_state'] = vm_states.ACTIVE
inst['image_ref'] = FAKE_IMAGE_REF
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = self.user_id
inst['project_id'] = self.project_id
inst['host'] = 'fake_host'
diff --git a/nova/tests/compute/test_compute_utils.py b/nova/tests/compute/test_compute_utils.py
index 4366bf5ac..84dd67eb5 100644
--- a/nova/tests/compute/test_compute_utils.py
+++ b/nova/tests/compute/test_compute_utils.py
@@ -263,7 +263,6 @@ class UsageInfoTestCase(test.TestCase):
inst = {}
inst['image_ref'] = 1
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = self.user_id
inst['project_id'] = self.project_id
inst['instance_type_id'] = instance_type['id']
diff --git a/nova/tests/conductor/test_conductor.py b/nova/tests/conductor/test_conductor.py
index 28d0074f2..8b397db02 100644
--- a/nova/tests/conductor/test_conductor.py
+++ b/nova/tests/conductor/test_conductor.py
@@ -76,7 +76,6 @@ class _BaseTestCase(object):
inst['vm_state'] = vm_states.ACTIVE
inst['image_ref'] = FAKE_IMAGE_REF
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = self.user_id
inst['project_id'] = self.project_id
inst['host'] = 'fake_host'
@@ -1197,6 +1196,41 @@ class _BaseTaskTestCase(object):
self.assertRaises(NotImplementedError, self.conductor.migrate_server,
self.context, None, None, True, False, "dummy", None, None)
+ def test_build_instances(self):
+ instance_type = flavors.get_default_instance_type()
+ system_metadata = flavors.save_instance_type_info({}, instance_type)
+ # NOTE(alaski): instance_type -> system_metadata -> instance_type loses
+ # some data (extra_specs) so we need both for testing.
+ instance_type_extract = flavors.extract_instance_type(
+ {'system_metadata': system_metadata})
+ self.mox.StubOutWithMock(self.conductor_manager.scheduler_rpcapi,
+ 'run_instance')
+ self.conductor_manager.scheduler_rpcapi.run_instance(self.context,
+ request_spec={
+ 'image': {'fake_data': 'should_pass_silently'},
+ 'instance_properties': {'system_metadata': system_metadata,
+ 'uuid': 'fakeuuid'},
+ 'instance_type': instance_type_extract,
+ 'instance_uuids': ['fakeuuid', 'fakeuuid2'],
+ 'block_device_mapping': 'block_device_mapping',
+ 'security_group': 'security_groups'},
+ admin_password='admin_password',
+ injected_files='injected_files',
+ requested_networks='requested_networks', is_first_time=True,
+ filter_properties={})
+ self.mox.ReplayAll()
+ self.conductor.build_instances(self.context,
+ instances=[{'uuid': 'fakeuuid',
+ 'system_metadata': system_metadata},
+ {'uuid': 'fakeuuid2'}],
+ image={'fake_data': 'should_pass_silently'},
+ filter_properties={},
+ admin_password='admin_password',
+ injected_files='injected_files',
+ requested_networks='requested_networks',
+ security_groups='security_groups',
+ block_device_mapping='block_device_mapping')
+
class ConductorTaskTestCase(_BaseTaskTestCase, test.TestCase):
"""ComputeTaskManager Tests."""
diff --git a/nova/tests/console/test_console.py b/nova/tests/console/test_console.py
index e4211f258..76a71936a 100644
--- a/nova/tests/console/test_console.py
+++ b/nova/tests/console/test_console.py
@@ -53,7 +53,6 @@ class ConsoleTestCase(test.TestCase):
#inst['name'] = 'instance-1234'
inst['image_id'] = 1
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = self.user_id
inst['project_id'] = self.project_id
inst['instance_type_id'] = 1
diff --git a/nova/tests/fake_instance.py b/nova/tests/fake_instance.py
new file mode 100644
index 000000000..b63d16555
--- /dev/null
+++ b/nova/tests/fake_instance.py
@@ -0,0 +1,40 @@
+# Copyright 2013 IBM Corp.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import datetime
+import uuid
+
+from nova.objects import instance as instance_obj
+
+
+def fake_db_instance(**updates):
+ db_instance = {
+ 'id': 1,
+ 'uuid': str(uuid.uuid4()),
+ 'user_id': 'fake-user',
+ 'project_id': 'fake-project',
+ 'host': 'fake-host',
+ 'created_at': datetime.datetime(1955, 11, 5),
+ }
+ for field, typefn in instance_obj.Instance.fields.items():
+ if field in db_instance:
+ continue
+ try:
+ db_instance[field] = typefn(None)
+ except TypeError:
+ db_instance[field] = typefn()
+
+ if updates:
+ db_instance.update(updates)
+ return db_instance
diff --git a/nova/tests/fake_utils.py b/nova/tests/fake_utils.py
new file mode 100644
index 000000000..cb73bc8bb
--- /dev/null
+++ b/nova/tests/fake_utils.py
@@ -0,0 +1,28 @@
+# Copyright (c) 2013 Rackspace Hosting
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+"""This modules stubs out functions in nova.utils."""
+
+from nova import utils
+
+
+def stub_out_utils_spawn_n(stubs):
+ """Stubs out spawn_n with a blocking version.
+
+ This aids testing async processes by blocking until they're done.
+ """
+ def no_spawn(func, *args, **kwargs):
+ return func(*args, **kwargs)
+
+ stubs.Set(utils, 'spawn_n', no_spawn)
diff --git a/nova/tests/integrated/test_api_samples.py b/nova/tests/integrated/test_api_samples.py
index 873719ab6..c3895678c 100644
--- a/nova/tests/integrated/test_api_samples.py
+++ b/nova/tests/integrated/test_api_samples.py
@@ -54,6 +54,7 @@ from nova.tests.api.openstack.compute.contrib import test_services
from nova.tests.api.openstack import fakes
from nova.tests import fake_instance_actions
from nova.tests import fake_network
+from nova.tests import fake_utils
from nova.tests.image import fake
from nova.tests.integrated import integrated_helpers
from nova.tests import utils as test_utils
@@ -93,7 +94,9 @@ class ApiSampleTestBase(integrated_helpers._IntegratedTestBase):
ext = [self.extension_name] if self.extension_name else []
self.flags(osapi_compute_extension=ext + extends)
super(ApiSampleTestBase, self).setUp()
+ self.useFixture(test.SampleNetworks())
fake_network.stub_compute_with_ips(self.stubs)
+ fake_utils.stub_out_utils_spawn_n(self.stubs)
self.generate_samples = os.getenv('GENERATE_SAMPLES') is not None
def _pretty_data(self, data):
diff --git a/nova/tests/network/test_manager.py b/nova/tests/network/test_manager.py
index b8f75233a..d534e7857 100644
--- a/nova/tests/network/test_manager.py
+++ b/nova/tests/network/test_manager.py
@@ -519,6 +519,7 @@ class FlatNetworkTestCase(test.TestCase):
class VlanNetworkTestCase(test.TestCase):
def setUp(self):
super(VlanNetworkTestCase, self).setUp()
+ self.useFixture(test.SampleNetworks())
self.network = network_manager.VlanManager(host=HOST)
self.network.db = db
self.context = context.RequestContext('testuser', 'testproject',
@@ -1929,6 +1930,7 @@ class TestFloatingIPManager(floating_ips.FloatingIP,
class AllocateTestCase(test.TestCase):
def setUp(self):
super(AllocateTestCase, self).setUp()
+ self.useFixture(test.SampleNetworks())
self.conductor = self.start_service(
'conductor', manager=CONF.conductor.manager)
self.compute = self.start_service('compute')
diff --git a/nova/tests/objects/test_objects.py b/nova/tests/objects/test_objects.py
index 754358230..cbaf8cb17 100644
--- a/nova/tests/objects/test_objects.py
+++ b/nova/tests/objects/test_objects.py
@@ -123,6 +123,14 @@ class TestUtils(test.TestCase):
self.assertEqual(utils.datetime_or_none(None), None)
self.assertRaises(ValueError, utils.datetime_or_none, 'foo')
+ def test_datetime_or_str_or_none(self):
+ dts = timeutils.isotime()
+ dt = timeutils.parse_isotime(dts)
+ self.assertEqual(utils.datetime_or_str_or_none(dt), dt)
+ self.assertEqual(utils.datetime_or_str_or_none(None), None)
+ self.assertEqual(utils.datetime_or_str_or_none(dts), dt)
+ self.assertRaises(ValueError, utils.datetime_or_str_or_none, 'foo')
+
def test_int_or_none(self):
self.assertEqual(utils.int_or_none(1), 1)
self.assertEqual(utils.int_or_none('1'), 1)
diff --git a/nova/tests/scheduler/fakes.py b/nova/tests/scheduler/fakes.py
index 024d37969..c9157d11c 100644
--- a/nova/tests/scheduler/fakes.py
+++ b/nova/tests/scheduler/fakes.py
@@ -123,7 +123,6 @@ class FakeInstance(object):
inst['vm_state'] = vm_states.ACTIVE
inst['image_ref'] = 1
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = 'fake'
inst['project_id'] = 'fake'
type_id = flavors.get_instance_type_by_name(type_name)['id']
diff --git a/nova/tests/test_db_api.py b/nova/tests/test_db_api.py
index ca542790c..efe243d1b 100644
--- a/nova/tests/test_db_api.py
+++ b/nova/tests/test_db_api.py
@@ -27,8 +27,10 @@ import uuid as stdlib_uuid
import mox
from oslo.config import cfg
from sqlalchemy.dialects import sqlite
+from sqlalchemy import exc
from sqlalchemy.exc import IntegrityError
from sqlalchemy import MetaData
+from sqlalchemy.orm import query
from sqlalchemy.sql.expression import select
from nova.compute import vm_states
@@ -2782,6 +2784,13 @@ class FixedIPTestCase(BaseInstanceTypeTestCase):
network_id=None,
updated_at=new))
+ def mock_db_query_first_to_raise_data_error_exception(self):
+ self.mox.StubOutWithMock(query.Query, 'first')
+ query.Query.first().AndRaise(exc.DataError(mox.IgnoreArg(),
+ mox.IgnoreArg(),
+ mox.IgnoreArg()))
+ self.mox.ReplayAll()
+
def test_fixed_ip_disassociate_all_by_timeout_single_host(self):
now = timeutils.utcnow()
self._timeout_test(self.ctxt, now, False)
@@ -3118,7 +3127,7 @@ class FixedIPTestCase(BaseInstanceTypeTestCase):
self.assertRaises(exception.FixedIpNotFound,
db.fixed_ip_get, self.ctxt, 0)
- def test_fixed_ip_get_sucsess2(self):
+ def test_fixed_ip_get_success2(self):
adress = 'fixed_ip_adress'
instance_uuid = self._create_instance()
network_id = db.network_create_safe(self.ctxt, {})['id']
@@ -3139,7 +3148,7 @@ class FixedIPTestCase(BaseInstanceTypeTestCase):
self.assertRaises(exception.NotAuthorized, db.fixed_ip_get,
self.ctxt, fixed_ip_id)
- def test_fixed_ip_get_sucsess(self):
+ def test_fixed_ip_get_success(self):
adress = 'fixed_ip_adress'
instance_uuid = self._create_instance()
network_id = db.network_create_safe(self.ctxt, {})['id']
@@ -3165,6 +3174,11 @@ class FixedIPTestCase(BaseInstanceTypeTestCase):
self.assertRaises(exception.FixedIpNotFoundForAddress,
db.fixed_ip_get_by_address_detailed, self.ctxt, 'x')
+ def test_fixed_ip_get_by_address_with_data_error_exception(self):
+ self.mock_db_query_first_to_raise_data_error_exception()
+ self.assertRaises(exception.FixedIpInvalid,
+ db.fixed_ip_get_by_address_detailed, self.ctxt, 'x')
+
def test_fixed_ip_get_by_address_detailed_sucsess(self):
adress = 'fixed_ip_adress_123'
instance_uuid = self._create_instance()
@@ -3246,6 +3260,13 @@ class FloatingIpTestCase(test.TestCase, ModelsObjectComparatorMixin):
'interface': 'fake_interface',
}
+ def mock_db_query_first_to_raise_data_error_exception(self):
+ self.mox.StubOutWithMock(query.Query, 'first')
+ query.Query.first().AndRaise(exc.DataError(mox.IgnoreArg(),
+ mox.IgnoreArg(),
+ mox.IgnoreArg()))
+ self.mox.ReplayAll()
+
def _create_floating_ip(self, values):
if not values:
values = {}
@@ -3266,6 +3287,11 @@ class FloatingIpTestCase(test.TestCase, ModelsObjectComparatorMixin):
self.assertRaises(exception.FloatingIpNotFound,
db.floating_ip_get, self.ctxt, 100500)
+ def test_floating_ip_get_with_long_id_not_found(self):
+ self.mock_db_query_first_to_raise_data_error_exception()
+ self.assertRaises(exception.InvalidID,
+ db.floating_ip_get, self.ctxt, 123456789101112)
+
def test_floating_ip_get_pools(self):
values = [
{'address': '0.0.0.0', 'pool': 'abc'},
@@ -3571,6 +3597,12 @@ class FloatingIpTestCase(test.TestCase, ModelsObjectComparatorMixin):
db.floating_ip_get_by_address,
self.ctxt, 'non_exists_host')
+ def test_floating_ip_get_by_invalid_address(self):
+ self.mock_db_query_first_to_raise_data_error_exception()
+ self.assertRaises(exception.InvalidIpAddressError,
+ db.floating_ip_get_by_address,
+ self.ctxt, 'non_exists_host')
+
def test_floating_ip_get_by_fixed_address(self):
fixed_float = [
('1.1.1.1', '2.2.2.1'),
@@ -4186,6 +4218,13 @@ class VirtualInterfaceTestCase(test.TestCase, ModelsObjectComparatorMixin):
'uuid': str(stdlib_uuid.uuid4())
}
+ def mock_db_query_first_to_raise_data_error_exception(self):
+ self.mox.StubOutWithMock(query.Query, 'first')
+ query.Query.first().AndRaise(exc.DataError(mox.IgnoreArg(),
+ mox.IgnoreArg(),
+ mox.IgnoreArg()))
+ self.mox.ReplayAll()
+
def _create_virt_interface(self, values):
v = self._get_base_values()
v.update(values)
@@ -4222,6 +4261,17 @@ class VirtualInterfaceTestCase(test.TestCase, ModelsObjectComparatorMixin):
vif['address'])
self._assertEqualObjects(vif, real_vif)
+ def test_virtual_interface_get_by_address_not_found(self):
+ self.assertIsNone(db.virtual_interface_get_by_address(self.ctxt,
+ "i.nv.ali.ip"))
+
+ def test_virtual_interface_get_by_address_data_error_exception(self):
+ self.mock_db_query_first_to_raise_data_error_exception()
+ self.assertRaises(exception.InvalidIpAddressError,
+ db.virtual_interface_get_by_address,
+ self.ctxt,
+ "i.nv.ali.ip")
+
def test_virtual_interface_get_by_uuid(self):
vifs = [self._create_virt_interface({}),
self._create_virt_interface({})]
diff --git a/nova/tests/test_linuxscsi.py b/nova/tests/test_linuxscsi.py
index 7f66974d0..0775b9d5b 100644
--- a/nova/tests/test_linuxscsi.py
+++ b/nova/tests/test_linuxscsi.py
@@ -38,7 +38,7 @@ class StorageLinuxSCSITestCase(test.TestCase):
self.stubs.Set(utils, 'execute', fake_execute)
- def test_find_multipath_device(self):
+ def test_find_multipath_device_3par(self):
def fake_execute(*cmd, **kwargs):
out = ("mpath6 (350002ac20398383d) dm-3 3PARdata,VV\n"
"size=2.0G features='0' hwhandler='0' wp=rw\n"
@@ -64,3 +64,62 @@ class StorageLinuxSCSITestCase(test.TestCase):
self.assertEqual("0", info['devices'][1]['id'])
self.assertEqual("0", info['devices'][1]['channel'])
self.assertEqual("1", info['devices'][1]['lun'])
+
+ def test_find_multipath_device_svc(self):
+ def fake_execute(*cmd, **kwargs):
+ out = ("36005076da00638089c000000000004d5 dm-2 IBM,2145\n"
+ "size=954M features='1 queue_if_no_path' hwhandler='0'"
+ " wp=rw\n"
+ "|-+- policy='round-robin 0' prio=-1 status=active\n"
+ "| |- 6:0:2:0 sde 8:64 active undef running\n"
+ "| `- 6:0:4:0 sdg 8:96 active undef running\n"
+ "`-+- policy='round-robin 0' prio=-1 status=enabled\n"
+ " |- 6:0:3:0 sdf 8:80 active undef running\n"
+ " `- 6:0:5:0 sdh 8:112 active undef running\n"
+ )
+ return out, None
+
+ self.stubs.Set(utils, 'execute', fake_execute)
+
+ info = linuxscsi.find_multipath_device('/dev/sde')
+ LOG.error("info = %s" % info)
+ self.assertEqual("/dev/dm-2", info["device"])
+ self.assertEqual("/dev/sde", info['devices'][0]['device'])
+ self.assertEqual("6", info['devices'][0]['host'])
+ self.assertEqual("0", info['devices'][0]['channel'])
+ self.assertEqual("2", info['devices'][0]['id'])
+ self.assertEqual("0", info['devices'][0]['lun'])
+
+ self.assertEqual("/dev/sdf", info['devices'][2]['device'])
+ self.assertEqual("6", info['devices'][2]['host'])
+ self.assertEqual("0", info['devices'][2]['channel'])
+ self.assertEqual("3", info['devices'][2]['id'])
+ self.assertEqual("0", info['devices'][2]['lun'])
+
+ def test_find_multipath_device_ds8000(self):
+ def fake_execute(*cmd, **kwargs):
+ out = ("36005076303ffc48e0000000000000101 dm-2 IBM,2107900\n"
+ "size=1.0G features='1 queue_if_no_path' hwhandler='0'"
+ " wp=rw\n"
+ "`-+- policy='round-robin 0' prio=-1 status=active\n"
+ " |- 6:0:2:0 sdd 8:64 active undef running\n"
+ " `- 6:1:0:3 sdc 8:32 active undef running\n"
+ )
+ return out, None
+
+ self.stubs.Set(utils, 'execute', fake_execute)
+
+ info = linuxscsi.find_multipath_device('/dev/sdd')
+ LOG.error("info = %s" % info)
+ self.assertEqual("/dev/dm-2", info["device"])
+ self.assertEqual("/dev/sdd", info['devices'][0]['device'])
+ self.assertEqual("6", info['devices'][0]['host'])
+ self.assertEqual("0", info['devices'][0]['channel'])
+ self.assertEqual("2", info['devices'][0]['id'])
+ self.assertEqual("0", info['devices'][0]['lun'])
+
+ self.assertEqual("/dev/sdc", info['devices'][1]['device'])
+ self.assertEqual("6", info['devices'][1]['host'])
+ self.assertEqual("1", info['devices'][1]['channel'])
+ self.assertEqual("0", info['devices'][1]['id'])
+ self.assertEqual("3", info['devices'][1]['lun'])
diff --git a/nova/tests/virt/hyperv/db_fakes.py b/nova/tests/virt/hyperv/db_fakes.py
index 5152bd035..77f98d36c 100644
--- a/nova/tests/virt/hyperv/db_fakes.py
+++ b/nova/tests/virt/hyperv/db_fakes.py
@@ -18,7 +18,6 @@
Stubouts, mocks and fixtures for the test suite
"""
-import time
import uuid
from nova.compute import task_states
@@ -145,7 +144,6 @@ def stub_out_db_instance_api(stubs):
'task_state': task_states.SCHEDULING,
'user_id': values['user_id'],
'project_id': values['project_id'],
- 'launch_time': time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime()),
'instance_type': instance_type,
'memory_mb': instance_type['memory_mb'],
'vcpus': instance_type['vcpus'],
diff --git a/nova/tests/virt/hyperv/test_hypervapi.py b/nova/tests/virt/hyperv/test_hypervapi.py
index b6df2ea31..cfc79c388 100644
--- a/nova/tests/virt/hyperv/test_hypervapi.py
+++ b/nova/tests/virt/hyperv/test_hypervapi.py
@@ -1159,7 +1159,7 @@ class HyperVAPITestCase(test.TestCase):
instance_type, network_info)
self._mox.VerifyAll()
- def test_finish_migration(self):
+ def _test_finish_migration(self, power_on):
self._instance_data = self._get_instance_data()
instance = db.instance_create(self._context, self._instance_data)
instance['system_metadata'] = {}
@@ -1198,14 +1198,21 @@ class HyperVAPITestCase(test.TestCase):
self._set_vm_name(instance['name'])
self._setup_create_instance_mocks(None, False)
- vmutils.VMUtils.set_vm_state(mox.Func(self._check_instance_name),
- constants.HYPERV_VM_STATE_ENABLED)
+ if power_on:
+ vmutils.VMUtils.set_vm_state(mox.Func(self._check_instance_name),
+ constants.HYPERV_VM_STATE_ENABLED)
self._mox.ReplayAll()
self._conn.finish_migration(self._context, None, instance, "",
- network_info, None, False, None)
+ network_info, None, False, None, power_on)
self._mox.VerifyAll()
+ def test_finish_migration_power_on(self):
+ self._test_finish_migration(True)
+
+ def test_finish_migration_power_off(self):
+ self._test_finish_migration(False)
+
def test_confirm_migration(self):
self._instance_data = self._get_instance_data()
instance = db.instance_create(self._context, self._instance_data)
@@ -1218,7 +1225,7 @@ class HyperVAPITestCase(test.TestCase):
self._conn.confirm_migration(None, instance, network_info)
self._mox.VerifyAll()
- def test_finish_revert_migration(self):
+ def _test_finish_revert_migration(self, power_on):
self._instance_data = self._get_instance_data()
instance = db.instance_create(self._context, self._instance_data)
network_info = fake_network.fake_get_instance_nw_info(
@@ -1246,9 +1253,17 @@ class HyperVAPITestCase(test.TestCase):
self._set_vm_name(instance['name'])
self._setup_create_instance_mocks(None, False)
- vmutils.VMUtils.set_vm_state(mox.Func(self._check_instance_name),
- constants.HYPERV_VM_STATE_ENABLED)
+ if power_on:
+ vmutils.VMUtils.set_vm_state(mox.Func(self._check_instance_name),
+ constants.HYPERV_VM_STATE_ENABLED)
self._mox.ReplayAll()
- self._conn.finish_revert_migration(instance, network_info, None)
+ self._conn.finish_revert_migration(instance, network_info, None,
+ power_on)
self._mox.VerifyAll()
+
+ def test_finish_revert_migration_power_on(self):
+ self._test_finish_revert_migration(True)
+
+ def test_finish_revert_migration_power_off(self):
+ self._test_finish_revert_migration(False)
diff --git a/nova/tests/virt/libvirt/fakelibvirt.py b/nova/tests/virt/libvirt/fakelibvirt.py
index 30c3e4d9c..9594757a8 100644
--- a/nova/tests/virt/libvirt/fakelibvirt.py
+++ b/nova/tests/virt/libvirt/fakelibvirt.py
@@ -914,6 +914,10 @@ def virEventRegisterDefaultImpl():
pass
+def registerErrorHandler(handler, ctxt):
+ pass
+
+
virDomain = Domain
diff --git a/nova/tests/virt/libvirt/test_libvirt.py b/nova/tests/virt/libvirt/test_libvirt.py
index f72c37cd1..22defe13f 100644
--- a/nova/tests/virt/libvirt/test_libvirt.py
+++ b/nova/tests/virt/libvirt/test_libvirt.py
@@ -281,6 +281,7 @@ class LibvirtConnTestCase(test.TestCase):
def setUp(self):
super(LibvirtConnTestCase, self).setUp()
+ self.useFixture(test.SampleNetworks())
self.flags(fake_call=True)
self.user_id = 'fake'
self.project_id = 'fake'
@@ -4816,7 +4817,6 @@ class LibvirtDriverTestCase(test.TestCase):
inst = {}
inst['image_ref'] = '1'
inst['reservation_id'] = 'r-fakeres'
- inst['launch_time'] = '10'
inst['user_id'] = 'fake'
inst['project_id'] = 'fake'
type_id = flavors.get_instance_type_by_name('m1.tiny')['id']
@@ -4951,7 +4951,7 @@ class LibvirtDriverTestCase(test.TestCase):
self.libvirtconnection._wait_for_running({'name': 'else',
'uuid': 'other_uuid'})
- def test_finish_migration(self):
+ def _test_finish_migration(self, power_on):
"""Test for nova.virt.libvirt.libvirt_driver.LivirtConnection
.finish_migration. """
@@ -4960,6 +4960,8 @@ class LibvirtDriverTestCase(test.TestCase):
{'type': 'raw', 'path': '/test/disk.local',
'local_gb': 10, 'backing_file': '/base/disk.local'}]
disk_info_text = jsonutils.dumps(disk_info)
+ powered_on = power_on
+ self.fake_create_domain_called = False
def fake_can_resize_fs(path, size, use_cow=False):
return False
@@ -4981,7 +4983,9 @@ class LibvirtDriverTestCase(test.TestCase):
block_device_info=None):
pass
- def fake_create_domain(xml, instance=None):
+ def fake_create_domain(xml, instance=None, power_on=True):
+ self.fake_create_domain_called = True
+ self.assertEqual(powered_on, power_on)
return None
def fake_enable_hairpin(instance):
@@ -4991,7 +4995,10 @@ class LibvirtDriverTestCase(test.TestCase):
pass
def fake_get_info(instance):
- return {'state': power_state.RUNNING}
+ if powered_on:
+ return {'state': power_state.RUNNING}
+ else:
+ return {'state': power_state.SHUTDOWN}
self.flags(use_cow_images=True)
self.stubs.Set(libvirt_driver.disk, 'extend', fake_extend)
@@ -5015,11 +5022,20 @@ class LibvirtDriverTestCase(test.TestCase):
self.libvirtconnection.finish_migration(
context.get_admin_context(), None, ins_ref,
- disk_info_text, None, None, None)
+ disk_info_text, None, None, None, None, power_on)
+ self.assertTrue(self.fake_create_domain_called)
+
+ def test_finish_migration_power_on(self):
+ self._test_finish_migration(True)
+
+ def test_finish_migration_power_off(self):
+ self._test_finish_migration(False)
- def test_finish_revert_migration(self):
+ def _test_finish_revert_migration(self, power_on):
"""Test for nova.virt.libvirt.libvirt_driver.LivirtConnection
.finish_revert_migration. """
+ powered_on = power_on
+ self.fake_create_domain_called = False
def fake_execute(*args, **kwargs):
pass
@@ -5027,14 +5043,19 @@ class LibvirtDriverTestCase(test.TestCase):
def fake_plug_vifs(instance, network_info):
pass
- def fake_create_domain(xml, instance=None):
+ def fake_create_domain(xml, instance=None, power_on=True):
+ self.fake_create_domain_called = True
+ self.assertEqual(powered_on, power_on)
return None
def fake_enable_hairpin(instance):
pass
def fake_get_info(instance):
- return {'state': power_state.RUNNING}
+ if powered_on:
+ return {'state': power_state.RUNNING}
+ else:
+ return {'state': power_state.SHUTDOWN}
def fake_to_xml(instance, network_info, disk_info,
image_meta=None, rescue=None,
@@ -5063,7 +5084,15 @@ class LibvirtDriverTestCase(test.TestCase):
f = open(libvirt_xml_path, 'w')
f.close()
- self.libvirtconnection.finish_revert_migration(ins_ref, None)
+ self.libvirtconnection.finish_revert_migration(ins_ref, None,
+ None, power_on)
+ self.assertTrue(self.fake_create_domain_called)
+
+ def test_finish_revert_migration_power_on(self):
+ self._test_finish_revert_migration(True)
+
+ def test_finish_revert_migration_power_off(self):
+ self._test_finish_revert_migration(False)
def _test_finish_revert_migration_after_crash(self, backup_made, new_made):
class FakeLoopingCall:
diff --git a/nova/tests/virt/powervm/test_powervm.py b/nova/tests/virt/powervm/test_powervm.py
index a923d52ff..3781c6738 100644
--- a/nova/tests/virt/powervm/test_powervm.py
+++ b/nova/tests/virt/powervm/test_powervm.py
@@ -380,7 +380,9 @@ class PowerVMDriverTestCase(test.TestCase):
expected_path = '/some/file/path/filename'
self.assertEqual(joined_path, expected_path)
- def _test_finish_revert_migration_after_crash(self, backup_made, new_made):
+ def _test_finish_revert_migration_after_crash(self, backup_made,
+ new_made,
+ power_on):
inst = {'name': 'foo'}
network_info = []
network_info.append({'address': 'fa:89:f0:8b:9b:39'})
@@ -404,21 +406,24 @@ class PowerVMDriverTestCase(test.TestCase):
'foo')
self.powervm_connection._powervm._operator.set_lpar_mac_base_value(
'foo', 'fa:89:f0:8b:9b:39')
- self.powervm_connection._powervm.power_on('foo')
+ if power_on:
+ self.powervm_connection._powervm.power_on('foo')
self.mox.ReplayAll()
self.powervm_connection.finish_revert_migration(inst, network_info,
- block_device_info=None)
+ block_device_info=None,
+ power_on=power_on)
def test_finish_revert_migration_after_crash(self):
- self._test_finish_revert_migration_after_crash(True, True)
+ self._test_finish_revert_migration_after_crash(True, True, True)
def test_finish_revert_migration_after_crash_before_new(self):
- self._test_finish_revert_migration_after_crash(True, False)
+ self._test_finish_revert_migration_after_crash(True, False, True)
def test_finish_revert_migration_after_crash_before_backup(self):
- self._test_finish_revert_migration_after_crash(False, False)
+ # NOTE(mriedem): tests the power_on=False case also
+ self._test_finish_revert_migration_after_crash(False, False, False)
def test_migrate_volume_use_instance_name(self):
inst_name = 'instance-00000000'
@@ -457,7 +462,7 @@ class PowerVMDriverTestCase(test.TestCase):
expected_path = 'some/image/path/logical-vol-name_rsz.gz'
self.assertEqual(file_path, expected_path)
- def test_deploy_from_migrated_file(self):
+ def _test_deploy_from_migrated_file(self, power_on):
instance = self.instance
context = 'fake_context'
network_info = []
@@ -469,9 +474,10 @@ class PowerVMDriverTestCase(test.TestCase):
self.flags(powervm_mgr=dest)
fake_op = self.powervm_connection._powervm
self.deploy_from_vios_file_called = False
+ self.power_on = power_on
def fake_deploy_from_vios_file(lpar, file_path, size,
- decompress):
+ decompress, power_on):
exp_file_path = 'some/file/path.gz'
exp_size = 40 * 1024 ** 3
exp_decompress = True
@@ -479,15 +485,23 @@ class PowerVMDriverTestCase(test.TestCase):
self.assertEqual(exp_file_path, file_path)
self.assertEqual(exp_size, size)
self.assertEqual(exp_decompress, decompress)
+ self.assertEqual(self.power_on, power_on)
self.stubs.Set(fake_op, '_deploy_from_vios_file',
fake_deploy_from_vios_file)
self.powervm_connection.finish_migration(context, None,
instance, disk_info, network_info,
None, resize_instance=True,
- block_device_info=None)
+ block_device_info=None,
+ power_on=power_on)
self.assertEqual(self.deploy_from_vios_file_called, True)
+ def test_deploy_from_migrated_file_power_on(self):
+ self._test_deploy_from_migrated_file(True)
+
+ def test_deploy_from_migrated_file_power_off(self):
+ self._test_deploy_from_migrated_file(False)
+
def test_set_lpar_mac_base_value(self):
instance = self.instance
context = 'fake_context'
diff --git a/nova/tests/virt/vmwareapi/db_fakes.py b/nova/tests/virt/vmwareapi/db_fakes.py
index 54e3cf43b..8f2df43e3 100644
--- a/nova/tests/virt/vmwareapi/db_fakes.py
+++ b/nova/tests/virt/vmwareapi/db_fakes.py
@@ -19,7 +19,6 @@
Stubouts, mocks and fixtures for the test suite
"""
-import time
import uuid
from nova.compute import task_states
@@ -72,7 +71,6 @@ def stub_out_db_instance_api(stubs):
'task_state': task_states.SCHEDULING,
'user_id': values['user_id'],
'project_id': values['project_id'],
- 'launch_time': time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime()),
'instance_type': values['instance_type'],
'memory_mb': type_data['memory_mb'],
'vcpus': type_data['vcpus'],
diff --git a/nova/tests/virt/vmwareapi/test_vmwareapi.py b/nova/tests/virt/vmwareapi/test_vmwareapi.py
index 9508a5805..2691857fe 100644
--- a/nova/tests/virt/vmwareapi/test_vmwareapi.py
+++ b/nova/tests/virt/vmwareapi/test_vmwareapi.py
@@ -35,10 +35,12 @@ from nova.tests import matchers
from nova.tests import utils
from nova.tests.virt.vmwareapi import db_fakes
from nova.tests.virt.vmwareapi import stubs
+from nova.virt import fake
from nova.virt.vmwareapi import driver
from nova.virt.vmwareapi import fake as vmwareapi_fake
from nova.virt.vmwareapi import vim
from nova.virt.vmwareapi import vm_util
+from nova.virt.vmwareapi import vmops
class fake_vm_ref(object):
@@ -113,7 +115,7 @@ class VMwareAPIVMTestCase(test.TestCase):
vmwareapi_fake.reset()
db_fakes.stub_out_db_instance_api(self.stubs)
stubs.set_stubs(self.stubs)
- self.conn = driver.VMwareESXDriver(None, False)
+ self.conn = driver.VMwareVCDriver(fake.FakeVirtAPI)
# NOTE(vish): none of the network plugging code is actually
# being tested
self.network_info = utils.get_test_network_info(legacy_model=False)
@@ -381,6 +383,102 @@ class VMwareAPIVMTestCase(test.TestCase):
self.mox.ReplayAll()
self.conn.get_console_output(self.instance)
+ def _test_finish_migration(self, power_on):
+ """
+ Tests the finish_migration method on vmops via the
+ VMwareVCDriver. Results are checked against whether or not
+ the underlying instance should have been powered on.
+ """
+
+ self.power_on_called = False
+
+ def fake_power_on(instance):
+ self.assertEquals(self.instance, instance)
+ self.power_on_called = True
+
+ def fake_vmops_update_instance_progress(context, instance, step,
+ total_steps):
+ self.assertEquals(self.context, context)
+ self.assertEquals(self.instance, instance)
+ self.assertEquals(4, step)
+ self.assertEqual(vmops.RESIZE_TOTAL_STEPS, total_steps)
+
+ self.stubs.Set(self.conn._vmops, "power_on", fake_power_on)
+ self.stubs.Set(self.conn._vmops, "_update_instance_progress",
+ fake_vmops_update_instance_progress)
+
+ # setup the test instance in the database
+ self._create_vm()
+ # perform the migration on our stubbed methods
+ self.conn.finish_migration(context=self.context,
+ migration=None,
+ instance=self.instance,
+ disk_info=None,
+ network_info=None,
+ image_meta=None,
+ power_on=power_on)
+ # verify the results
+ self.assertEquals(power_on, self.power_on_called)
+
+ def test_finish_migration_power_on(self):
+ self._test_finish_migration(power_on=True)
+
+ def test_finish_migration_power_off(self):
+ self._test_finish_migration(power_on=False)
+
+ def _test_finish_revert_migration(self, power_on):
+ """
+ Tests the finish_revert_migration method on vmops via the
+ VMwareVCDriver. Results are checked against whether or not
+ the underlying instance should have been powered on.
+ """
+
+ # setup the test instance in the database
+ self._create_vm()
+
+ self.power_on_called = False
+ self.vm_name = str(self.instance['name']) + '-orig'
+
+ def fake_power_on(instance):
+ self.assertEquals(self.instance, instance)
+ self.power_on_called = True
+
+ def fake_get_orig_vm_name_label(instance):
+ self.assertEquals(self.instance, instance)
+ return self.vm_name
+
+ def fake_get_vm_ref_from_name(session, vm_name):
+ self.assertEquals(self.vm_name, vm_name)
+ return vmwareapi_fake._get_objects("VirtualMachine")[0]
+
+ def fake_call_method(*args, **kwargs):
+ pass
+
+ def fake_wait_for_task(*args, **kwargs):
+ pass
+
+ self.stubs.Set(self.conn._vmops, "power_on", fake_power_on)
+ self.stubs.Set(self.conn._vmops, "_get_orig_vm_name_label",
+ fake_get_orig_vm_name_label)
+ self.stubs.Set(vm_util, "get_vm_ref_from_name",
+ fake_get_vm_ref_from_name)
+ self.stubs.Set(self.conn._session, "_call_method", fake_call_method)
+ self.stubs.Set(self.conn._session, "_wait_for_task",
+ fake_wait_for_task)
+
+ # perform the revert on our stubbed methods
+ self.conn.finish_revert_migration(instance=self.instance,
+ network_info=None,
+ power_on=power_on)
+ # verify the results
+ self.assertEquals(power_on, self.power_on_called)
+
+ def test_finish_revert_migration_power_on(self):
+ self._test_finish_revert_migration(power_on=True)
+
+ def test_finish_revert_migration_power_off(self):
+ self._test_finish_revert_migration(power_on=False)
+
class VMwareAPIHostTestCase(test.TestCase):
"""Unit tests for Vmware API host calls."""
diff --git a/nova/tests/virt/xenapi/test_xenapi.py b/nova/tests/virt/xenapi/test_xenapi.py
index 538752cf2..bc166655d 100644
--- a/nova/tests/virt/xenapi/test_xenapi.py
+++ b/nova/tests/virt/xenapi/test_xenapi.py
@@ -308,6 +308,7 @@ class XenAPIVMTestCase(stubs.XenAPITestBase):
"""Unit tests for VM operations."""
def setUp(self):
super(XenAPIVMTestCase, self).setUp()
+ self.useFixture(test.SampleNetworks())
self.network = importutils.import_object(CONF.network_manager)
self.flags(disable_process_locking=True,
instance_name_template='%d',
@@ -1069,7 +1070,8 @@ class XenAPIVMTestCase(stubs.XenAPITestBase):
def __init__(self):
self.finish_revert_migration_called = False
- def finish_revert_migration(self, instance, block_info):
+ def finish_revert_migration(self, instance, block_info,
+ power_on):
self.finish_revert_migration_called = True
conn = xenapi_conn.XenAPIDriver(fake.FakeVirtAPI(), False)
@@ -1391,7 +1393,7 @@ class XenAPIMigrateInstance(stubs.XenAPITestBase):
self.context, instance,
'127.0.0.1', instance_type, None)
- def test_revert_migrate(self):
+ def _test_revert_migrate(self, power_on):
instance = create_instance_with_system_metadata(self.context,
self.instance_values)
self.called = False
@@ -1426,14 +1428,21 @@ class XenAPIMigrateInstance(stubs.XenAPITestBase):
cow_uuid = xenapi_fake.get_record('VDI', cow)['uuid']
conn.finish_migration(self.context, self.migration, instance,
dict(base_copy=base_uuid, cow=cow_uuid),
- network_info, image_meta, resize_instance=True)
+ network_info, image_meta, resize_instance=True,
+ block_device_info=None, power_on=power_on)
self.assertEqual(self.called, True)
- self.assertEqual(self.fake_vm_start_called, True)
+ self.assertEqual(self.fake_vm_start_called, power_on)
conn.finish_revert_migration(instance, network_info)
self.assertEqual(self.fake_finish_revert_migration_called, True)
- def test_finish_migrate(self):
+ def test_revert_migrate_power_on(self):
+ self._test_revert_migrate(True)
+
+ def test_revert_migrate_power_off(self):
+ self._test_revert_migrate(False)
+
+ def _test_finish_migrate(self, power_on):
instance = create_instance_with_system_metadata(self.context,
self.instance_values)
self.called = False
@@ -1458,9 +1467,16 @@ class XenAPIMigrateInstance(stubs.XenAPITestBase):
image_meta = {'id': instance['image_ref'], 'disk_format': 'vhd'}
conn.finish_migration(self.context, self.migration, instance,
dict(base_copy='hurr', cow='durr'),
- network_info, image_meta, resize_instance=True)
+ network_info, image_meta, resize_instance=True,
+ block_device_info=None, power_on=power_on)
self.assertEqual(self.called, True)
- self.assertEqual(self.fake_vm_start_called, True)
+ self.assertEqual(self.fake_vm_start_called, power_on)
+
+ def test_finish_migrate_power_on(self):
+ self._test_finish_migrate(True)
+
+ def test_finish_migrate_power_off(self):
+ self._test_finish_migrate(False)
def test_finish_migrate_no_local_storage(self):
tiny_type = flavors.get_instance_type_by_name('m1.tiny')
diff --git a/nova/utils.py b/nova/utils.py
index 97551e8eb..f54e72d63 100644
--- a/nova/utils.py
+++ b/nova/utils.py
@@ -37,6 +37,7 @@ import tempfile
import time
from xml.sax import saxutils
+import eventlet
import netaddr
from oslo.config import cfg
@@ -920,8 +921,10 @@ def temporary_chown(path, owner_uid=None):
@contextlib.contextmanager
def tempdir(**kwargs):
- tempfile.tempdir = CONF.tempdir
- tmpdir = tempfile.mkdtemp(**kwargs)
+ argdict = kwargs.copy()
+ if 'dir' not in argdict:
+ argdict['dir'] = CONF.tempdir
+ tmpdir = tempfile.mkdtemp(**argdict)
try:
yield tmpdir
finally:
@@ -1099,3 +1102,12 @@ def check_string_length(value, name, min_length=0, max_length=None):
msg = _("%(name)s has more than %(max_length)s "
"characters.") % locals()
raise exception.InvalidInput(message=msg)
+
+
+def spawn_n(func, *args, **kwargs):
+ """Passthrough method for eventlet.spawn_n.
+
+ This utility exists so that it can be stubbed for testing without
+ interfering with the service spawns.
+ """
+ eventlet.spawn_n(func, *args, **kwargs)
diff --git a/nova/virt/baremetal/ipmi.py b/nova/virt/baremetal/ipmi.py
index 5d4f2b0ed..73d871e42 100644
--- a/nova/virt/baremetal/ipmi.py
+++ b/nova/virt/baremetal/ipmi.py
@@ -184,7 +184,7 @@ class IPMI(base.PowerManager):
def _set_pxe_for_next_boot(self):
try:
- self._exec_ipmitool("chassis bootdev pxe")
+ self._exec_ipmitool("chassis bootdev pxe options=persistent")
except Exception:
LOG.exception(_("IPMI set next bootdev failed"))
diff --git a/nova/virt/driver.py b/nova/virt/driver.py
index 93bff1ff4..6f79de048 100755
--- a/nova/virt/driver.py
+++ b/nova/virt/driver.py
@@ -343,14 +343,23 @@ class ComputeDriver(object):
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info=None):
- """Completes a resize, turning on the migrated instance
+ block_device_info=None, power_on=True):
+ """Completes a resize.
+ :param context: the context for the migration/resize
+ :param migration: the migrate/resize information
+ :param instance: the instance being migrated/resized
+ :param disk_info: the newly transferred disk information
:param network_info:
:py:meth:`~nova.network.manager.NetworkManager.get_instance_nw_info`
:param image_meta: image object returned by nova.image.glance that
defines the image from which this instance
was created
+ :param resize_instance: True if the instance is being resized,
+ False otherwise
+ :param block_device_info: instance volume block device info
+ :param power_on: True if the instance should be powered on, False
+ otherwise
"""
raise NotImplementedError()
@@ -360,8 +369,17 @@ class ComputeDriver(object):
raise NotImplementedError()
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
- """Finish reverting a resize, powering back on the instance."""
+ block_device_info=None, power_on=True):
+ """
+ Finish reverting a resize.
+
+ :param instance: the instance being migrated/resized
+ :param network_info:
+ :py:meth:`~nova.network.manager.NetworkManager.get_instance_nw_info`
+ :param block_device_info: instance volume block device info
+ :param power_on: True if the instance should be powered on, False
+ otherwise
+ """
# TODO(Vek): Need to pass context in for access to auth_token
raise NotImplementedError()
diff --git a/nova/virt/fake.py b/nova/virt/fake.py
index c38dc9ed6..1b65571a5 100755
--- a/nova/virt/fake.py
+++ b/nova/virt/fake.py
@@ -170,7 +170,7 @@ class FakeDriver(driver.ComputeDriver):
pass
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
pass
def post_live_migration_at_destination(self, context, instance,
@@ -368,7 +368,7 @@ class FakeDriver(driver.ComputeDriver):
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info=None):
+ block_device_info=None, power_on=True):
return
def confirm_migration(self, migration, instance, network_info):
diff --git a/nova/virt/hyperv/driver.py b/nova/virt/hyperv/driver.py
index 477f8fa2a..675f36f54 100755
--- a/nova/virt/hyperv/driver.py
+++ b/nova/virt/hyperv/driver.py
@@ -172,17 +172,17 @@ class HyperVDriver(driver.ComputeDriver):
self._migrationops.confirm_migration(migration, instance, network_info)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
self._migrationops.finish_revert_migration(instance, network_info,
- block_device_info)
+ block_device_info, power_on)
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance=False,
- block_device_info=None):
+ block_device_info=None, power_on=True):
self._migrationops.finish_migration(context, migration, instance,
disk_info, network_info,
image_meta, resize_instance,
- block_device_info)
+ block_device_info, power_on)
def get_host_ip_addr(self):
return self._hostops.get_host_ip_addr()
diff --git a/nova/virt/hyperv/migrationops.py b/nova/virt/hyperv/migrationops.py
index ff8651efe..5ce092bf3 100644
--- a/nova/virt/hyperv/migrationops.py
+++ b/nova/virt/hyperv/migrationops.py
@@ -144,7 +144,7 @@ class MigrationOps(object):
self._pathutils.rename(revert_path, instance_path)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
LOG.debug(_("finish_revert_migration called"), instance=instance)
instance_name = instance['name']
@@ -157,7 +157,8 @@ class MigrationOps(object):
self._vmops.create_instance(instance, network_info, block_device_info,
root_vhd_path)
- self._vmops.power_on(instance)
+ if power_on:
+ self._vmops.power_on(instance)
def _merge_base_vhd(self, diff_vhd_path, base_vhd_path):
base_vhd_copy_path = os.path.join(os.path.dirname(diff_vhd_path),
@@ -209,7 +210,7 @@ class MigrationOps(object):
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance=False,
- block_device_info=None):
+ block_device_info=None, power_on=True):
LOG.debug(_("finish_migration called"), instance=instance)
instance_name = instance['name']
@@ -239,4 +240,5 @@ class MigrationOps(object):
self._vmops.create_instance(instance, network_info, block_device_info,
root_vhd_path)
- self._vmops.power_on(instance)
+ if power_on:
+ self._vmops.power_on(instance)
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index 7af7e4e2a..19613acd4 100755
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -289,6 +289,11 @@ MIN_LIBVIRT_LIVESNAPSHOT_VERSION = (1, 0, 0)
MIN_QEMU_LIVESNAPSHOT_VERSION = (1, 3, 0)
+def libvirt_error_handler(ctxt, err):
+ # Just ignore instead of default outputting to stderr.
+ pass
+
+
class LibvirtDriver(driver.ComputeDriver):
capabilities = {
@@ -543,6 +548,7 @@ class LibvirtDriver(driver.ComputeDriver):
dispatch_thread = eventlet.spawn(self._dispatch_thread)
def init_host(self, host):
+ libvirt.registerErrorHandler(libvirt_error_handler, None)
libvirt.virEventRegisterDefaultImpl()
if not self.has_min_version(MIN_LIBVIRT_VERSION):
@@ -2386,7 +2392,7 @@ class LibvirtDriver(driver.ComputeDriver):
'id': virt_dom.ID()}
def _create_domain(self, xml=None, domain=None,
- instance=None, launch_flags=0):
+ instance=None, launch_flags=0, power_on=True):
"""Create a domain.
Either domain or xml must be passed in. If both are passed, then
@@ -2409,7 +2415,8 @@ class LibvirtDriver(driver.ComputeDriver):
if xml:
domain = self._conn.defineXML(xml)
- domain.createWithFlags(launch_flags)
+ if power_on:
+ domain.createWithFlags(launch_flags)
self._enable_hairpin(domain.XMLDesc(0))
# NOTE(uni): Now the container is running with its own private mount
@@ -2426,7 +2433,7 @@ class LibvirtDriver(driver.ComputeDriver):
return domain
def _create_domain_and_network(self, xml, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
"""Do required network setup and create domain."""
block_device_mapping = driver.block_device_info_get_mapping(
@@ -2448,7 +2455,7 @@ class LibvirtDriver(driver.ComputeDriver):
self.plug_vifs(instance, network_info)
self.firewall_driver.setup_basic_filtering(instance, network_info)
self.firewall_driver.prepare_instance_filter(instance, network_info)
- domain = self._create_domain(xml, instance=instance)
+ domain = self._create_domain(xml, instance=instance, power_on=power_on)
self.firewall_driver.apply_instance_filter(instance, network_info)
return domain
@@ -3626,7 +3633,7 @@ class LibvirtDriver(driver.ComputeDriver):
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info=None):
+ block_device_info=None, power_on=True):
LOG.debug(_("Starting finish_migration"), instance=instance)
# resize disks. only "disk" and "disk.local" are necessary.
@@ -3677,10 +3684,12 @@ class LibvirtDriver(driver.ComputeDriver):
block_device_info=block_device_info,
write_to_disk=True)
self._create_domain_and_network(xml, instance, network_info,
- block_device_info)
- timer = loopingcall.FixedIntervalLoopingCall(self._wait_for_running,
- instance)
- timer.start(interval=0.5).wait()
+ block_device_info, power_on)
+ if power_on:
+ timer = loopingcall.FixedIntervalLoopingCall(
+ self._wait_for_running,
+ instance)
+ timer.start(interval=0.5).wait()
def _cleanup_failed_migration(self, inst_base):
"""Make sure that a failed migrate doesn't prevent us from rolling
@@ -3688,7 +3697,7 @@ class LibvirtDriver(driver.ComputeDriver):
shutil.rmtree(inst_base)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
LOG.debug(_("Starting finish_revert_migration"),
instance=instance)
@@ -3710,11 +3719,13 @@ class LibvirtDriver(driver.ComputeDriver):
xml = self.to_xml(instance, network_info, disk_info,
block_device_info=block_device_info)
self._create_domain_and_network(xml, instance, network_info,
- block_device_info)
+ block_device_info, power_on)
- timer = loopingcall.FixedIntervalLoopingCall(self._wait_for_running,
- instance)
- timer.start(interval=0.5).wait()
+ if power_on:
+ timer = loopingcall.FixedIntervalLoopingCall(
+ self._wait_for_running,
+ instance)
+ timer.start(interval=0.5).wait()
def confirm_migration(self, migration, instance, network_info):
"""Confirms a resize, destroying the source VM."""
diff --git a/nova/virt/powervm/driver.py b/nova/virt/powervm/driver.py
index 199b10704..5117bdf72 100755
--- a/nova/virt/powervm/driver.py
+++ b/nova/virt/powervm/driver.py
@@ -279,7 +279,7 @@ class PowerVMDriver(driver.ComputeDriver):
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info=None):
+ block_device_info=None, power_on=True):
"""Completes a resize, turning on the migrated instance
:param network_info:
@@ -297,7 +297,8 @@ class PowerVMDriver(driver.ComputeDriver):
disk_size = max(int(new_lv_size), int(old_lv_size))
disk_size_bytes = disk_size * 1024 * 1024 * 1024
self._powervm.deploy_from_migrated_file(
- lpar_obj, disk_info['root_disk_file'], disk_size_bytes)
+ lpar_obj, disk_info['root_disk_file'], disk_size_bytes,
+ power_on)
else:
# this shouldn't get hit unless someone forgot to handle
# a certain migration type
@@ -312,8 +313,8 @@ class PowerVMDriver(driver.ComputeDriver):
self._powervm.destroy(new_name)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
- """Finish reverting a resize, powering back on the instance."""
+ block_device_info=None, power_on=True):
+ """Finish reverting a resize."""
new_name = self._get_resize_name(instance['name'])
@@ -332,4 +333,6 @@ class PowerVMDriver(driver.ComputeDriver):
self._powervm.destroy(instance['name'])
# undo instance rename and start
self._powervm._operator.rename_lpar(new_name, instance['name'])
- self._powervm.power_on(instance['name'])
+
+ if power_on:
+ self._powervm.power_on(instance['name'])
diff --git a/nova/virt/powervm/operator.py b/nova/virt/powervm/operator.py
index f78aeb475..18cba0ba2 100644
--- a/nova/virt/powervm/operator.py
+++ b/nova/virt/powervm/operator.py
@@ -414,7 +414,8 @@ class PowerVMOperator(object):
disk_info['root_disk_file'] = dest_file_path
return disk_info
- def deploy_from_migrated_file(self, lpar, file_path, size):
+ def deploy_from_migrated_file(self, lpar, file_path, size,
+ power_on=True):
"""Deploy the logical volume and attach to new lpar.
:param lpar: lar instance
@@ -426,13 +427,14 @@ class PowerVMOperator(object):
try:
# deploy lpar from file
self._deploy_from_vios_file(lpar, file_path, size,
- decompress=need_decompress)
+ decompress=need_decompress,
+ power_on=power_on)
finally:
# cleanup migrated file
self._operator._remove_file(file_path)
def _deploy_from_vios_file(self, lpar, file_path, size,
- decompress=True):
+ decompress=True, power_on=True):
self._operator.create_lpar(lpar)
lpar = self._operator.get_lpar(lpar['name'])
instance_id = lpar['lpar_id']
@@ -447,7 +449,8 @@ class PowerVMOperator(object):
self._disk_adapter._copy_file_to_device(file_path, diskName,
decompress)
- self._operator.start_lpar(lpar['name'])
+ if power_on:
+ self._operator.start_lpar(lpar['name'])
class BaseOperator(object):
diff --git a/nova/virt/vmwareapi/driver.py b/nova/virt/vmwareapi/driver.py
index 4fa1614e0..916913187 100755
--- a/nova/virt/vmwareapi/driver.py
+++ b/nova/virt/vmwareapi/driver.py
@@ -383,16 +383,17 @@ class VMwareVCDriver(VMwareESXDriver):
self._vmops.confirm_migration(migration, instance, network_info)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
+ block_device_info=None, power_on=True):
"""Finish reverting a resize, powering back on the instance."""
- self._vmops.finish_revert_migration(instance)
+ self._vmops.finish_revert_migration(instance, power_on)
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance=False,
- block_device_info=None):
+ block_device_info=None, power_on=True):
"""Completes a resize, turning on the migrated instance."""
self._vmops.finish_migration(context, migration, instance, disk_info,
- network_info, image_meta, resize_instance)
+ network_info, image_meta, resize_instance,
+ power_on)
def live_migration(self, context, instance_ref, dest,
post_method, recover_method, block_migration=False,
diff --git a/nova/virt/vmwareapi/vmops.py b/nova/virt/vmwareapi/vmops.py
index cda2ce8e3..538b498b6 100644
--- a/nova/virt/vmwareapi/vmops.py
+++ b/nova/virt/vmwareapi/vmops.py
@@ -978,8 +978,8 @@ class VMwareVMOps(object):
if network_info:
self.unplug_vifs(instance, network_info)
- def finish_revert_migration(self, instance):
- """Finish reverting a resize, powering back on the instance."""
+ def finish_revert_migration(self, instance, power_on=True):
+ """Finish reverting a resize."""
# The original vm was suffixed with '-orig'; find it using
# the old suffix, remove the suffix, then power it back on.
name_label = self._get_orig_vm_name_label(instance)
@@ -995,13 +995,16 @@ class VMwareVMOps(object):
self._session._wait_for_task(instance['uuid'], rename_task)
LOG.debug(_("Renamed the VM from %s") % name_label,
instance=instance)
- self.power_on(instance)
+ if power_on:
+ self.power_on(instance)
def finish_migration(self, context, migration, instance, disk_info,
- network_info, image_meta, resize_instance=False):
+ network_info, image_meta, resize_instance=False,
+ power_on=True):
"""Completes a resize, turning on the migrated instance."""
# 4. Start VM
- self.power_on(instance)
+ if power_on:
+ self.power_on(instance)
self._update_instance_progress(context, instance,
step=4,
total_steps=RESIZE_TOTAL_STEPS)
diff --git a/nova/virt/xenapi/driver.py b/nova/virt/xenapi/driver.py
index 5bc1a3049..cd892bceb 100755
--- a/nova/virt/xenapi/driver.py
+++ b/nova/virt/xenapi/driver.py
@@ -182,18 +182,19 @@ class XenAPIDriver(driver.ComputeDriver):
self._vmops.confirm_migration(migration, instance, network_info)
def finish_revert_migration(self, instance, network_info,
- block_device_info=None):
- """Finish reverting a resize, powering back on the instance."""
+ block_device_info=None, power_on=True):
+ """Finish reverting a resize."""
# NOTE(vish): Xen currently does not use network info.
- self._vmops.finish_revert_migration(instance, block_device_info)
+ self._vmops.finish_revert_migration(instance, block_device_info,
+ power_on)
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance=False,
- block_device_info=None):
+ block_device_info=None, power_on=True):
"""Completes a resize, turning on the migrated instance."""
self._vmops.finish_migration(context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info)
+ block_device_info, power_on)
def snapshot(self, context, instance, image_id, update_task_state):
"""Create snapshot from a running VM instance."""
diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py
index 29e075655..332f3b88c 100644
--- a/nova/virt/xenapi/vmops.py
+++ b/nova/virt/xenapi/vmops.py
@@ -231,10 +231,13 @@ class VMOps(object):
mount_device,
hotplug=False)
- def finish_revert_migration(self, instance, block_device_info=None):
- self._restore_orig_vm_and_cleanup_orphan(instance, block_device_info)
+ def finish_revert_migration(self, instance, block_device_info=None,
+ power_on=True):
+ self._restore_orig_vm_and_cleanup_orphan(instance, block_device_info,
+ power_on)
- def _restore_orig_vm_and_cleanup_orphan(self, instance, block_device_info):
+ def _restore_orig_vm_and_cleanup_orphan(self, instance,
+ block_device_info, power_on=True):
# NOTE(sirp): the original vm was suffixed with '-orig'; find it using
# the old suffix, remove the suffix, then power it back on.
name_label = self._get_orig_vm_name_label(instance)
@@ -257,11 +260,12 @@ class VMOps(object):
# We crashed before the -orig backup was made
vm_ref = new_ref
- self._start(instance, vm_ref)
+ if power_on:
+ self._start(instance, vm_ref)
def finish_migration(self, context, migration, instance, disk_info,
network_info, image_meta, resize_instance,
- block_device_info=None):
+ block_device_info=None, power_on=True):
root_vdi = vm_utils.move_disks(self._session, instance, disk_info)
if resize_instance:
@@ -292,7 +296,8 @@ class VMOps(object):
self._attach_mapped_block_devices(instance, block_device_info)
# 5. Start VM
- self._start(instance, vm_ref=vm_ref)
+ if power_on:
+ self._start(instance, vm_ref=vm_ref)
self._update_instance_progress(context, instance,
step=5,
total_steps=RESIZE_TOTAL_STEPS)
diff --git a/setup.cfg b/setup.cfg
index 7890c02e1..8e6e77186 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -58,6 +58,8 @@ nova.api.v3.extensions =
extension_info = nova.api.openstack.compute.plugins.v3.extension_info:ExtensionInfo
servers = nova.api.openstack.compute.plugins.v3.servers:Servers
keypairs = nova.api.openstack.compute.plugins.v3.keypairs:Keypairs
+ ips = nova.api.openstack.compute.plugins.v3.ips:IPs
+ consoles = nova.api.openstack.compute.plugins.v3.consoles:Consoles
nova.api.v3.extensions.server.create =
keypairs_create = nova.api.openstack.compute.plugins.v3.keypairs:Keypairs
diff --git a/tox.ini b/tox.ini
index f787ccc05..96c5e9887 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py26,py27,pep8
+envlist = py26,py27,py33,pep8
[testenv]
sitepackages = True