From 55536a4ecb6c71e5451b8a9664d87e32146f071d Mon Sep 17 00:00:00 2001 From: Ihar Hrachyshka Date: Fri, 10 Apr 2015 15:07:33 +0200 Subject: [PATCH 01/16] Removed ml2_conf_odl.ini config file The file is already packaged into decomposed networking-odl repo [1]. [1]: https://git.openstack.org/cgit/stackforge/networking-odl/tree/etc/neutron/plugins/ml2/ml2_conf_odl.ini Closes-Bug: #1442615 Change-Id: Ic280454190aab4e3b881cde15a882808b652861e (cherry picked from commit b3334eca0ae9f9c64ccd646035e69081f669e3e4) --- etc/neutron/plugins/ml2/ml2_conf_odl.ini | 30 ------------------------ setup.cfg | 1 - 2 files changed, 31 deletions(-) delete mode 100644 etc/neutron/plugins/ml2/ml2_conf_odl.ini diff --git a/etc/neutron/plugins/ml2/ml2_conf_odl.ini b/etc/neutron/plugins/ml2/ml2_conf_odl.ini deleted file mode 100644 index 9e88c1bbfa5..00000000000 --- a/etc/neutron/plugins/ml2/ml2_conf_odl.ini +++ /dev/null @@ -1,30 +0,0 @@ -# Configuration for the OpenDaylight MechanismDriver - -[ml2_odl] -# (StrOpt) OpenDaylight REST URL -# If this is not set then no HTTP requests will be made. -# -# url = -# Example: url = http://192.168.56.1:8080/controller/nb/v2/neutron - -# (StrOpt) Username for HTTP basic authentication to ODL. -# -# username = -# Example: username = admin - -# (StrOpt) Password for HTTP basic authentication to ODL. -# -# password = -# Example: password = admin - -# (IntOpt) Timeout in seconds to wait for ODL HTTP request completion. -# This is an optional parameter, default value is 10 seconds. -# -# timeout = 10 -# Example: timeout = 15 - -# (IntOpt) Timeout in minutes to wait for a Tomcat session timeout. -# This is an optional parameter, default value is 30 minutes. -# -# session_timeout = 30 -# Example: session_timeout = 60 diff --git a/setup.cfg b/setup.cfg index e689f10e2d0..6fe838f178e 100644 --- a/setup.cfg +++ b/setup.cfg @@ -69,7 +69,6 @@ data_files = etc/neutron/plugins/ml2/ml2_conf_cisco.ini etc/neutron/plugins/ml2/ml2_conf_mlnx.ini etc/neutron/plugins/ml2/ml2_conf_ncs.ini - etc/neutron/plugins/ml2/ml2_conf_odl.ini etc/neutron/plugins/ml2/ml2_conf_ofa.ini etc/neutron/plugins/ml2/ml2_conf_fslsdn.ini etc/neutron/plugins/ml2/ml2_conf_sriov.ini From 1dc98e414f200a78a6b1dc78f222c588646e6935 Mon Sep 17 00:00:00 2001 From: Dane LeBlanc Date: Thu, 9 Apr 2015 10:32:33 -0400 Subject: [PATCH 02/16] IPv6 SLAAC subnet create should update ports on net If ports are first created on a network, and then an IPv6 SLAAC or DHCPv6-stateless subnet is created on that network, then the ports created prior to the subnet create are not getting automatically updated (associated) with addresses for the SLAAC/DHCPv6-stateless subnet, as required. Change-Id: I88d04a13ce5b8ed4c88eac734e589e8a90e986a0 Closes-Bug: 1427474 Closes-Bug: 1441382 Closes-Bug: 1440183 (cherry picked from commit bd1044ba0e9d7d0f4752c891ac340b115f0019c4) --- neutron/db/db_base_plugin_v2.py | 68 ++++++++++++++---- .../tests/unit/db/test_db_base_plugin_v2.py | 69 +++++++++++++++++++ 2 files changed, 125 insertions(+), 12 deletions(-) diff --git a/neutron/db/db_base_plugin_v2.py b/neutron/db/db_base_plugin_v2.py index f7bcf8db538..dcf7adc6f6f 100644 --- a/neutron/db/db_base_plugin_v2.py +++ b/neutron/db/db_base_plugin_v2.py @@ -472,9 +472,9 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2, # from subnet else: if is_auto_addr: - prefix = subnet['cidr'] - ip_address = ipv6_utils.get_ipv6_addr_by_EUI64( - prefix, mac_address) + ip_address = self._calculate_ipv6_eui64_addr(context, + subnet, + mac_address) ips.append({'ip_address': ip_address.format(), 'subnet_id': subnet['id']}) else: @@ -531,6 +531,17 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2, ips = self._allocate_fixed_ips(context, to_add, mac_address) return ips, prev_ips + def _calculate_ipv6_eui64_addr(self, context, subnet, mac_addr): + prefix = subnet['cidr'] + network_id = subnet['network_id'] + ip_address = ipv6_utils.get_ipv6_addr_by_EUI64( + prefix, mac_addr).format() + if not self._check_unique_ip(context, network_id, + subnet['id'], ip_address): + raise n_exc.IpAddressInUse(net_id=network_id, + ip_address=ip_address) + return ip_address + def _allocate_ips_for_port(self, context, port): """Allocate IP addresses for the port. @@ -585,13 +596,8 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2, for subnet in v6_stateless: # IP addresses for IPv6 SLAAC and DHCPv6-stateless subnets # are implicitly included. - prefix = subnet['cidr'] - ip_address = ipv6_utils.get_ipv6_addr_by_EUI64(prefix, - p['mac_address']) - if not self._check_unique_ip(context, p['network_id'], - subnet['id'], ip_address.format()): - raise n_exc.IpAddressInUse(net_id=p['network_id'], - ip_address=ip_address.format()) + ip_address = self._calculate_ipv6_eui64_addr(context, subnet, + p['mac_address']) ips.append({'ip_address': ip_address.format(), 'subnet_id': subnet['id']}) @@ -1343,8 +1349,46 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2, 'subnet pool') raise n_exc.BadRequest(resource='subnets', msg=msg) # Create subnet from the implicit(AKA null) pool - return self._create_subnet_from_implicit_pool(context, subnet) - return self._create_subnet_from_pool(context, subnet, subnetpool_id) + created_subnet = self._create_subnet_from_implicit_pool(context, + subnet) + else: + created_subnet = self._create_subnet_from_pool(context, subnet, + subnetpool_id) + + # If this subnet supports auto-addressing, then update any + # internal ports on the network with addresses for this subnet. + if ipv6_utils.is_auto_address_subnet(created_subnet): + self._add_auto_addrs_on_network_ports(context, created_subnet) + + return created_subnet + + def _add_auto_addrs_on_network_ports(self, context, subnet): + """For an auto-address subnet, add addrs for ports on the net.""" + with context.session.begin(subtransactions=True): + network_id = subnet['network_id'] + port_qry = context.session.query(models_v2.Port) + for port in port_qry.filter( + and_(models_v2.Port.network_id == network_id, + models_v2.Port.device_owner != + constants.DEVICE_OWNER_ROUTER_SNAT, + ~models_v2.Port.device_owner.in_( + constants.ROUTER_INTERFACE_OWNERS))): + ip_address = self._calculate_ipv6_eui64_addr( + context, subnet, port['mac_address']) + allocated = models_v2.IPAllocation(network_id=network_id, + port_id=port['id'], + ip_address=ip_address, + subnet_id=subnet['id']) + try: + # Do the insertion of each IP allocation entry within + # the context of a nested transaction, so that the entry + # is rolled back independently of other entries whenever + # the corresponding port has been deleted. + with context.session.begin_nested(): + context.session.add(allocated) + except db_exc.DBReferenceError: + LOG.debug("Port %s was deleted while updating it with an " + "IPv6 auto-address. Ignoring.", port['id']) def _update_subnet_dns_nameservers(self, context, id, s): old_dns_list = self._get_dns_by_subnet(context, id) diff --git a/neutron/tests/unit/db/test_db_base_plugin_v2.py b/neutron/tests/unit/db/test_db_base_plugin_v2.py index 0dc18001dd4..e8ef97e8fdb 100644 --- a/neutron/tests/unit/db/test_db_base_plugin_v2.py +++ b/neutron/tests/unit/db/test_db_base_plugin_v2.py @@ -20,7 +20,9 @@ import itertools import mock import netaddr from oslo_config import cfg +from oslo_db import exception as db_exc from oslo_utils import importutils +from sqlalchemy import orm from testtools import matchers import webob.exc @@ -3811,6 +3813,71 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase): self.assertEqual(ctx_manager.exception.code, webob.exc.HTTPClientError.code) + def _test_create_subnet_ipv6_auto_addr_with_port_on_network( + self, addr_mode, device_owner=DEVICE_OWNER_COMPUTE, + insert_db_reference_error=False): + # Create a network with one IPv4 subnet and one port + with self.network() as network,\ + self.subnet(network=network) as v4_subnet,\ + self.port(subnet=v4_subnet, device_owner=device_owner) as port: + if insert_db_reference_error: + def db_ref_err_for_ipalloc(instance): + if instance.__class__.__name__ == 'IPAllocation': + raise db_exc.DBReferenceError( + 'dummy_table', 'dummy_constraint', + 'dummy_key', 'dummy_key_table') + mock.patch.object(orm.Session, 'add', + side_effect=db_ref_err_for_ipalloc).start() + # Add an IPv6 auto-address subnet to the network + v6_subnet = self._make_subnet(self.fmt, network, 'fe80::1', + 'fe80::/64', ip_version=6, + ipv6_ra_mode=addr_mode, + ipv6_address_mode=addr_mode) + if (insert_db_reference_error + or device_owner == constants.DEVICE_OWNER_ROUTER_SNAT + or device_owner in constants.ROUTER_INTERFACE_OWNERS): + # DVR SNAT and router interfaces should not have been + # updated with addresses from the new auto-address subnet + self.assertEqual(1, len(port['port']['fixed_ips'])) + else: + # Confirm that the port has been updated with an address + # from the new auto-address subnet + req = self.new_show_request('ports', port['port']['id'], + self.fmt) + sport = self.deserialize(self.fmt, req.get_response(self.api)) + fixed_ips = sport['port']['fixed_ips'] + self.assertEqual(2, len(fixed_ips)) + self.assertIn(v6_subnet['subnet']['id'], + [fixed_ip['subnet_id'] for fixed_ip + in fixed_ips]) + + def test_create_subnet_ipv6_slaac_with_port_on_network(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.IPV6_SLAAC) + + def test_create_subnet_dhcpv6_stateless_with_port_on_network(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.DHCPV6_STATELESS) + + def test_create_subnet_ipv6_slaac_with_dhcp_port_on_network(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.IPV6_SLAAC, + device_owner=constants.DEVICE_OWNER_DHCP) + + def test_create_subnet_ipv6_slaac_with_router_intf_on_network(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.IPV6_SLAAC, + device_owner=constants.DEVICE_OWNER_ROUTER_INTF) + + def test_create_subnet_ipv6_slaac_with_snat_intf_on_network(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.IPV6_SLAAC, + device_owner=constants.DEVICE_OWNER_ROUTER_SNAT) + + def test_create_subnet_ipv6_slaac_with_db_reference_error(self): + self._test_create_subnet_ipv6_auto_addr_with_port_on_network( + constants.IPV6_SLAAC, insert_db_reference_error=True) + def test_update_subnet_no_gateway(self): with self.subnet() as subnet: data = {'subnet': {'gateway_ip': '10.0.0.1'}} @@ -5330,6 +5397,7 @@ class TestNeutronDbPluginV2(base.BaseTestCase): 'enable_dhcp': True, 'gateway_ip': u'2001:100::1', 'id': u'd1a28edd-bd83-480a-bd40-93d036c89f13', + 'network_id': 'fbb9b578-95eb-4b79-a116-78e5c4927176', 'ip_version': 6, 'ipv6_address_mode': None, 'ipv6_ra_mode': u'slaac'}, @@ -5338,6 +5406,7 @@ class TestNeutronDbPluginV2(base.BaseTestCase): 'enable_dhcp': True, 'gateway_ip': u'2001:200::1', 'id': u'dc813d3d-ed66-4184-8570-7325c8195e28', + 'network_id': 'fbb9b578-95eb-4b79-a116-78e5c4927176', 'ip_version': 6, 'ipv6_address_mode': None, 'ipv6_ra_mode': u'slaac'}] From ffc48f286e1756302d9259dc514dd562d3c251ba Mon Sep 17 00:00:00 2001 From: Henry Gessau Date: Thu, 16 Apr 2015 13:38:46 -0400 Subject: [PATCH 03/16] Add Kilo release milestone Change-Id: Id7d969c92b7c757b766760681357ac13c8079ca3 --- .../alembic_migrations/versions/HEAD | 2 +- .../versions/kilo_release.py | 29 +++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 neutron/db/migration/alembic_migrations/versions/kilo_release.py diff --git a/neutron/db/migration/alembic_migrations/versions/HEAD b/neutron/db/migration/alembic_migrations/versions/HEAD index d9e9459801f..062799591c1 100644 --- a/neutron/db/migration/alembic_migrations/versions/HEAD +++ b/neutron/db/migration/alembic_migrations/versions/HEAD @@ -1 +1 @@ -20c469a5f920 +kilo diff --git a/neutron/db/migration/alembic_migrations/versions/kilo_release.py b/neutron/db/migration/alembic_migrations/versions/kilo_release.py new file mode 100644 index 00000000000..fd0911d273a --- /dev/null +++ b/neutron/db/migration/alembic_migrations/versions/kilo_release.py @@ -0,0 +1,29 @@ +# 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. +# + +"""kilo + +Revision ID: kilo +Revises: 20c469a5f920 +Create Date: 2015-04-16 00:00:00.000000 + +""" + +# revision identifiers, used by Alembic. +revision = 'kilo' +down_revision = '20c469a5f920' + + +def upgrade(): + """A no-op migration for marking the Kilo release.""" + pass From 2add4e5ad4d12c817737d04ddb973b3aeeb25af3 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Thu, 16 Apr 2015 16:27:38 -0700 Subject: [PATCH 04/16] Update .gitreview to point to stable/kilo This is the stable/kilo branch. When people make changes here it's highly likely that they want to propose them to stable/kilo on gerrit. Change-Id: Ie61a9f0c0b0b4896da33a201e42b1c4bc4bae49b --- .gitreview | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitreview b/.gitreview index 184583f0d66..df092ef8a47 100644 --- a/.gitreview +++ b/.gitreview @@ -2,3 +2,4 @@ host=review.openstack.org port=29418 project=openstack/neutron.git +defaultbranch=stable/kilo From 8b8095e43a143426c501669167490d7867a55749 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Tue, 31 Mar 2015 08:53:56 -0700 Subject: [PATCH 05/16] Revert "Add ipset element and hashsize tunables" This reverts commit b5b919a7a3569ccb93c3d7d523c1edfaeddb7cb9. The current ipset manager code isn't robust enough to handle ipsets that already exist with different parameters. This reverts the ability to change the parameters so we don't break upgrades to Kilo. Conflicts: neutron/agent/linux/ipset_manager.py neutron/tests/unit/agent/linux/test_ipset_manager.py Change-Id: I538714df52424f0502cb75daea310517d1142c42 Closes-Bug: #1444201 (cherry picked from commit 03be14a569d240865dabff8b4c30385abf1dbe62) --- etc/neutron.conf | 9 ----- neutron/agent/common/config.py | 15 -------- neutron/agent/linux/ipset_manager.py | 20 +--------- .../unit/agent/linux/test_ipset_manager.py | 37 ++----------------- 4 files changed, 6 insertions(+), 75 deletions(-) diff --git a/etc/neutron.conf b/etc/neutron.conf index 5d8640f90ea..2983cc6c0ff 100644 --- a/etc/neutron.conf +++ b/etc/neutron.conf @@ -660,15 +660,6 @@ # each rule's purpose. (System must support the iptables comments module.) # comment_iptables_rules = True -# Maximum number of elements which can be stored in an IPset. -# If None is specified, the system default will be used. -# ipset_maxelem = 131072 - -# Initial hash size for an IPset. Must be a power of 2, -# else the kernel will round it up automatically. -# If None is specified, the system default will be used. -# ipset_hashsize = 2048 - # Root helper daemon application to use when possible. # root_helper_daemon = diff --git a/neutron/agent/common/config.py b/neutron/agent/common/config.py index efc1ca47602..7e63ea38789 100644 --- a/neutron/agent/common/config.py +++ b/neutron/agent/common/config.py @@ -63,17 +63,6 @@ IPTABLES_OPTS = [ help=_("Add comments to iptables rules.")), ] -IPSET_OPTS = [ - cfg.IntOpt('ipset_maxelem', default=131072, - help=_("Maximum number of elements which can be stored in " - "an IPset. If None is specified, the system default " - "will be used.")), - cfg.IntOpt('ipset_hashsize', default=2048, - help=_("Initial hash size for an IPset. Must be a power of 2, " - "else the kernel will round it up automatically. If " - "None is specified, the system default will be used.")), -] - PROCESS_MONITOR_OPTS = [ cfg.StrOpt('check_child_processes_action', default='respawn', choices=['respawn', 'exit'], @@ -133,10 +122,6 @@ def register_iptables_opts(conf): conf.register_opts(IPTABLES_OPTS, 'AGENT') -def register_ipset_opts(conf): - conf.register_opts(IPSET_OPTS, 'AGENT') - - def register_process_monitor_opts(conf): conf.register_opts(PROCESS_MONITOR_OPTS, 'AGENT') diff --git a/neutron/agent/linux/ipset_manager.py b/neutron/agent/linux/ipset_manager.py index 33b6379b586..e5ab7a01e9c 100644 --- a/neutron/agent/linux/ipset_manager.py +++ b/neutron/agent/linux/ipset_manager.py @@ -11,9 +11,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -from oslo_config import cfg - -from neutron.agent.common import config from neutron.agent.linux import utils as linux_utils from neutron.common import utils @@ -32,7 +29,6 @@ class IpsetManager(object): def __init__(self, execute=None, namespace=None): self.execute = execute or linux_utils.execute self.namespace = namespace - config.register_ipset_opts(cfg.CONF) self.ipset_sets = {} @staticmethod @@ -43,15 +39,6 @@ class IpsetManager(object): name = ethertype + id return name[:IPSET_NAME_MAX_LENGTH] - @staticmethod - def get_hashargs(): - args = [] - if cfg.CONF.AGENT.ipset_hashsize: - args.extend(['hashsize', str(cfg.CONF.AGENT.ipset_hashsize)]) - if cfg.CONF.AGENT.ipset_maxelem: - args.extend(['maxelem', str(cfg.CONF.AGENT.ipset_maxelem)]) - return args - def set_exists(self, id, ethertype): """Returns true if the id+ethertype pair is known to the manager.""" set_name = self.get_name(id, ethertype) @@ -98,10 +85,8 @@ class IpsetManager(object): def _refresh_set(self, set_name, member_ips, ethertype): new_set_name = set_name + SWAP_SUFFIX set_type = self._get_ipset_set_type(ethertype) - hash_args = ' '.join(self.get_hashargs()) - process_input = ["create %s hash:ip family %s %s" % (new_set_name, - set_type, - hash_args)] + process_input = ["create %s hash:ip family %s" % (new_set_name, + set_type)] for ip in member_ips: process_input.append("add %s %s" % (new_set_name, ip)) @@ -118,7 +103,6 @@ class IpsetManager(object): def _create_set(self, set_name, ethertype): cmd = ['ipset', 'create', '-exist', set_name, 'hash:ip', 'family', self._get_ipset_set_type(ethertype)] - cmd.extend(self.get_hashargs()) self._apply(cmd) self.ipset_sets[set_name] = [] diff --git a/neutron/tests/unit/agent/linux/test_ipset_manager.py b/neutron/tests/unit/agent/linux/test_ipset_manager.py index 19fbb7e20e6..cbd156218ff 100644 --- a/neutron/tests/unit/agent/linux/test_ipset_manager.py +++ b/neutron/tests/unit/agent/linux/test_ipset_manager.py @@ -12,9 +12,7 @@ # limitations under the License. import mock -from oslo_config import cfg -from neutron.agent.common import config as a_cfg from neutron.agent.linux import ipset_manager from neutron.tests import base @@ -27,13 +25,8 @@ FAKE_IPS = ['10.0.0.1', '10.0.0.2', '10.0.0.3', '10.0.0.4', class BaseIpsetManagerTest(base.BaseTestCase): - def setUp(self, maxelem=None, hashsize=None): + def setUp(self): super(BaseIpsetManagerTest, self).setUp() - cfg.CONF.register_opts(a_cfg.IPSET_OPTS, 'AGENT') - cfg.CONF.set_override('ipset_maxelem', maxelem, 'AGENT') - cfg.CONF.set_override('ipset_hashsize', hashsize, 'AGENT') - self.maxelem = maxelem - self.hashsize = hashsize self.ipset = ipset_manager.IpsetManager() self.execute = mock.patch.object(self.ipset, "execute").start() self.expected_calls = [] @@ -43,13 +36,7 @@ class BaseIpsetManagerTest(base.BaseTestCase): self.execute.assert_has_calls(self.expected_calls, any_order=False) def expect_set(self, addresses): - hash_args = [] - if self.hashsize: - hash_args.extend(['hashsize', str(self.hashsize)]) - if self.maxelem: - hash_args.extend(['maxelem', str(self.maxelem)]) - temp_input = ['create IPv4fake_sgid-new hash:ip family inet %s' % - ' '.join(hash_args)] + temp_input = ['create IPv4fake_sgid-new hash:ip family inet'] temp_input.extend('add IPv4fake_sgid-new %s' % ip for ip in addresses) input = '\n'.join(temp_input) self.expected_calls.extend([ @@ -76,14 +63,9 @@ class BaseIpsetManagerTest(base.BaseTestCase): run_as_root=True) for ip in addresses) def expect_create(self): - ipset_call = ['ipset', 'create', '-exist', TEST_SET_NAME, - 'hash:ip', 'family', 'inet'] - if self.hashsize: - ipset_call.extend(['hashsize', str(self.hashsize)]) - if self.maxelem: - ipset_call.extend(['maxelem', str(self.maxelem)]) self.expected_calls.append( - mock.call(ipset_call, + mock.call(['ipset', 'create', '-exist', TEST_SET_NAME, + 'hash:ip', 'family', 'inet'], process_input=None, run_as_root=True)) @@ -103,10 +85,6 @@ class BaseIpsetManagerTest(base.BaseTestCase): class IpsetManagerTestCase(BaseIpsetManagerTest): - """Run all tests, but with maxelem/hashsize values not configured - """ - def setUp(self): - super(IpsetManagerTestCase, self).setUp() def test_set_exists(self): self.add_first_ip() @@ -139,10 +117,3 @@ class IpsetManagerTestCase(BaseIpsetManagerTest): self.expect_destroy() self.ipset.destroy(TEST_SET_ID, ETHERTYPE) self.verify_mock_calls() - - -class IpsetManagerTestCaseHashArgs(IpsetManagerTestCase): - """Run all the above tests, but with maxelem/hashsize values configured - """ - def setUp(self): - super(IpsetManagerTestCase, self).setUp(maxelem=131072, hashsize=2048) From a6b2c22dcea73754dbfd0ef39c60ad28ab2dbb73 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Mon, 30 Mar 2015 23:52:56 -0700 Subject: [PATCH 06/16] Set IPset hash type to 'net' instead of 'ip' The previous hash type was 'ip' and this caused a major issue with the allowed address pairs extension since it results in CIDRs being passed to ipset. When the hash type is 'ip', a CIDR is completely enumerated into all of its addresses so 10.100.0.0/16 results in ~65k entries. This meant a single allowed_address_pairs entry could easily exhaust an entire set. This patch changes the hash type to 'net', which is designed to handle a CIDRs as a single entry. This patch also changes the names of the ipsets because creating an ipset with different parameters will cause an error and our ipset manager code isn't robust enough to handle that at this time. There is another ongoing patch to fix that but it won't be ready in time.[1] The related bug was closed by increasing the set limit, which did alleviate the problem. However, this change would also address the issue because the gate tests run an allowed address pairs extension test with the CIDR mentioned above. 1. I59e2e1c090cb95ee1bd14dbb53b6ff2c5e2713fd Related-Bug: #1439817 Closes-Bug: #1444397 Change-Id: I8177699b157cd3eac46e2f481f47b5d966c49b07 (cherry picked from commit a38b5df5cd3c47672705aad4c30e789ae11ec958) --- neutron/agent/linux/ipset_manager.py | 6 +++--- neutron/tests/unit/agent/linux/test_ipset_manager.py | 7 ++++--- neutron/tests/unit/agent/test_securitygroups_rpc.py | 10 +++++----- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/neutron/agent/linux/ipset_manager.py b/neutron/agent/linux/ipset_manager.py index e5ab7a01e9c..0f764185239 100644 --- a/neutron/agent/linux/ipset_manager.py +++ b/neutron/agent/linux/ipset_manager.py @@ -36,7 +36,7 @@ class IpsetManager(object): """Returns the given ipset name for an id+ethertype pair. This reference can be used from iptables. """ - name = ethertype + id + name = 'NET' + ethertype + id return name[:IPSET_NAME_MAX_LENGTH] def set_exists(self, id, ethertype): @@ -85,7 +85,7 @@ class IpsetManager(object): def _refresh_set(self, set_name, member_ips, ethertype): new_set_name = set_name + SWAP_SUFFIX set_type = self._get_ipset_set_type(ethertype) - process_input = ["create %s hash:ip family %s" % (new_set_name, + process_input = ["create %s hash:net family %s" % (new_set_name, set_type)] for ip in member_ips: process_input.append("add %s %s" % (new_set_name, ip)) @@ -101,7 +101,7 @@ class IpsetManager(object): self.ipset_sets[set_name].remove(member_ip) def _create_set(self, set_name, ethertype): - cmd = ['ipset', 'create', '-exist', set_name, 'hash:ip', 'family', + cmd = ['ipset', 'create', '-exist', set_name, 'hash:net', 'family', self._get_ipset_set_type(ethertype)] self._apply(cmd) self.ipset_sets[set_name] = [] diff --git a/neutron/tests/unit/agent/linux/test_ipset_manager.py b/neutron/tests/unit/agent/linux/test_ipset_manager.py index cbd156218ff..44840086f60 100644 --- a/neutron/tests/unit/agent/linux/test_ipset_manager.py +++ b/neutron/tests/unit/agent/linux/test_ipset_manager.py @@ -36,8 +36,9 @@ class BaseIpsetManagerTest(base.BaseTestCase): self.execute.assert_has_calls(self.expected_calls, any_order=False) def expect_set(self, addresses): - temp_input = ['create IPv4fake_sgid-new hash:ip family inet'] - temp_input.extend('add IPv4fake_sgid-new %s' % ip for ip in addresses) + temp_input = ['create NETIPv4fake_sgid-new hash:net family inet'] + temp_input.extend('add NETIPv4fake_sgid-new %s' % ip + for ip in addresses) input = '\n'.join(temp_input) self.expected_calls.extend([ mock.call(['ipset', 'restore', '-exist'], @@ -65,7 +66,7 @@ class BaseIpsetManagerTest(base.BaseTestCase): def expect_create(self): self.expected_calls.append( mock.call(['ipset', 'create', '-exist', TEST_SET_NAME, - 'hash:ip', 'family', 'inet'], + 'hash:net', 'family', 'inet'], process_input=None, run_as_root=True)) diff --git a/neutron/tests/unit/agent/test_securitygroups_rpc.py b/neutron/tests/unit/agent/test_securitygroups_rpc.py index feabbcbfdbd..6a4e2990f41 100644 --- a/neutron/tests/unit/agent/test_securitygroups_rpc.py +++ b/neutron/tests/unit/agent/test_securitygroups_rpc.py @@ -1776,7 +1776,7 @@ IPSET_FILTER_1 = """# Generated by iptables_manager [0:0] -A %(bn)s-i_port1 -s 10.0.0.2/32 -p udp -m udp --sport 67 --dport 68 \ -j RETURN [0:0] -A %(bn)s-i_port1 -p tcp -m tcp --dport 22 -j RETURN -[0:0] -A %(bn)s-i_port1 -m set --match-set IPv4security_group1 src -j \ +[0:0] -A %(bn)s-i_port1 -m set --match-set NETIPv4security_group1 src -j \ RETURN [0:0] -A %(bn)s-i_port1 -j %(bn)s-sg-fallback [0:0] -A %(bn)s-FORWARD %(physdev_mod)s --physdev-EGRESS tap_port1 \ @@ -1935,7 +1935,7 @@ IPSET_FILTER_2 = """# Generated by iptables_manager [0:0] -A %(bn)s-i_%(port1)s -s 10.0.0.2/32 -p udp -m udp --sport 67 \ --dport 68 -j RETURN [0:0] -A %(bn)s-i_%(port1)s -p tcp -m tcp --dport 22 -j RETURN -[0:0] -A %(bn)s-i_%(port1)s -m set --match-set IPv4security_group1 src -j \ +[0:0] -A %(bn)s-i_%(port1)s -m set --match-set NETIPv4security_group1 src -j \ RETURN [0:0] -A %(bn)s-i_%(port1)s -j %(bn)s-sg-fallback [0:0] -A %(bn)s-FORWARD %(physdev_mod)s --physdev-EGRESS tap_%(port1)s \ @@ -1963,7 +1963,7 @@ RETURN [0:0] -A %(bn)s-i_%(port2)s -s 10.0.0.2/32 -p udp -m udp --sport 67 \ --dport 68 -j RETURN [0:0] -A %(bn)s-i_%(port2)s -p tcp -m tcp --dport 22 -j RETURN -[0:0] -A %(bn)s-i_%(port2)s -m set --match-set IPv4security_group1 src -j \ +[0:0] -A %(bn)s-i_%(port2)s -m set --match-set NETIPv4security_group1 src -j \ RETURN [0:0] -A %(bn)s-i_%(port2)s -j %(bn)s-sg-fallback [0:0] -A %(bn)s-FORWARD %(physdev_mod)s --physdev-EGRESS tap_%(port2)s \ @@ -2018,7 +2018,7 @@ IPSET_FILTER_2_3 = """# Generated by iptables_manager [0:0] -A %(bn)s-i_%(port1)s -s 10.0.0.2/32 -p udp -m udp --sport 67 \ --dport 68 -j RETURN [0:0] -A %(bn)s-i_%(port1)s -p tcp -m tcp --dport 22 -j RETURN -[0:0] -A %(bn)s-i_%(port1)s -m set --match-set IPv4security_group1 src -j \ +[0:0] -A %(bn)s-i_%(port1)s -m set --match-set NETIPv4security_group1 src -j \ RETURN [0:0] -A %(bn)s-i_%(port1)s -p icmp -j RETURN [0:0] -A %(bn)s-i_%(port1)s -j %(bn)s-sg-fallback @@ -2047,7 +2047,7 @@ RETURN [0:0] -A %(bn)s-i_%(port2)s -s 10.0.0.2/32 -p udp -m udp --sport 67 \ --dport 68 -j RETURN [0:0] -A %(bn)s-i_%(port2)s -p tcp -m tcp --dport 22 -j RETURN -[0:0] -A %(bn)s-i_%(port2)s -m set --match-set IPv4security_group1 src -j \ +[0:0] -A %(bn)s-i_%(port2)s -m set --match-set NETIPv4security_group1 src -j \ RETURN [0:0] -A %(bn)s-i_%(port2)s -p icmp -j RETURN [0:0] -A %(bn)s-i_%(port2)s -j %(bn)s-sg-fallback From e2f6902315de76a1020aa87ea161c8fdc6697ed7 Mon Sep 17 00:00:00 2001 From: Swaminathan Vasudevan Date: Tue, 14 Apr 2015 21:34:33 -0700 Subject: [PATCH 07/16] Fixes race condition and boosts the scheduling performance This patch fixes a race-condition that occurs when the scheduler tries to check for dvr serviceable ports before it schedules a router when a subnet is associated with a router. Sometimes the dhcp port creation is delayed and so the router is not scheduled to the l3-agent. Also it boosts the scheduling performance on dvr-snat node for scheduling a router. This patch will provide a work around to fix this race condition and to boost the scheduling performance by scheduling a router on a dvr-snat when dhcp is enabled on the provided subnet, instead of checking all the available ports on the subnet. Closes-Bug: #1442494 Change-Id: I089fefdd8535bdc9ed90b3230438ab0bfb6aab4f (cherry picked from commit c65d3ab6ad4589e6e4a6b488d2eb5d1e4cfee138) --- neutron/db/l3_agentschedulers_db.py | 19 ++++++++++++++ .../unit/scheduler/test_l3_agent_scheduler.py | 26 +++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/neutron/db/l3_agentschedulers_db.py b/neutron/db/l3_agentschedulers_db.py index 931436bddcb..f661dcc6221 100644 --- a/neutron/db/l3_agentschedulers_db.py +++ b/neutron/db/l3_agentschedulers_db.py @@ -379,6 +379,25 @@ class L3AgentSchedulerDbMixin(l3agentscheduler.L3AgentSchedulerPluginBase, return False core_plugin = manager.NeutronManager.get_plugin() + # NOTE(swami):Before checking for existence of dvr + # serviceable ports on the host managed by the l3 + # agent, let's verify if at least one subnet has + # dhcp enabled. If so, then the host will have a + # dvr serviceable port, which is in fact the DHCP + # port. + # This optimization is valid assuming that the L3 + # DVR_SNAT node will be the one hosting the DHCP + # Agent. + agent_conf = self.get_configuration_dict(l3_agent) + agent_mode = agent_conf.get(constants.L3_AGENT_MODE, + constants.L3_AGENT_MODE_LEGACY) + + for subnet_id in subnet_ids: + subnet_dict = core_plugin.get_subnet(context, subnet_id) + if (subnet_dict['enable_dhcp'] and ( + agent_mode == constants.L3_AGENT_MODE_DVR_SNAT)): + return True + filter = {'fixed_ips': {'subnet_id': subnet_ids}} ports = core_plugin.get_ports(context, filters=filter) for port in ports: diff --git a/neutron/tests/unit/scheduler/test_l3_agent_scheduler.py b/neutron/tests/unit/scheduler/test_l3_agent_scheduler.py index a68d2e70874..58b53471ed3 100644 --- a/neutron/tests/unit/scheduler/test_l3_agent_scheduler.py +++ b/neutron/tests/unit/scheduler/test_l3_agent_scheduler.py @@ -671,6 +671,29 @@ class L3SchedulerTestBaseMixin(object): l3_agent, router['id']) self.assertFalse(val) + def test_check_ports_exist_on_l3agent_with_dhcp_enabled_subnets(self): + self._register_l3_dvr_agents() + router = self._make_router(self.fmt, + tenant_id=str(uuid.uuid4()), + name='r2') + router['external_gateway_info'] = None + router['id'] = str(uuid.uuid4()) + router['distributed'] = True + + agent_list = [self.l3_dvr_snat_agent] + subnet = {'id': str(uuid.uuid4()), + 'enable_dhcp': True} + + self.get_subnet_ids_on_router = mock.Mock( + return_value=[subnet['id']]) + + self.plugin.get_subnet = mock.Mock(return_value=subnet) + self.plugin.get_ports = mock.Mock() + val = self.check_ports_exist_on_l3agent( + self.adminContext, agent_list[0], router['id']) + self.assertTrue(val) + self.assertFalse(self.plugin.get_ports.called) + def test_check_ports_exist_on_l3agent_if_no_subnets_then_return(self): l3_agent, router = self._prepare_check_ports_exist_tests() with mock.patch.object(manager.NeutronManager, @@ -698,9 +721,12 @@ class L3SchedulerTestBaseMixin(object): 'binding:host_id': 'host_1', 'device_owner': 'compute:', 'id': 1234} + subnet = {'id': str(uuid.uuid4()), + 'enable_dhcp': False} self.plugin.get_ports.return_value = [port] self.get_subnet_ids_on_router = mock.Mock( return_value=[port['subnet_id']]) + self.plugin.get_subnet = mock.Mock(return_value=subnet) val = self.check_ports_exist_on_l3agent(self.adminContext, l3_agent, router['id']) self.assertTrue(val) From f7ae3a04b541767c638fc4c8ff1e0db78ab94996 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Mon, 20 Apr 2015 11:07:37 +0200 Subject: [PATCH 08/16] Release Import of Translations from Transifex Manual import of Translations from Transifex. This change also removes all po files that are less than 66 per cent translated since such partially translated files will not help users. This updates also recreates all pot (translation source files) to reflect the state of the repository. This change needs to be done manually since the automatic import does not handle the proposed branches and we need to sync with latest translations. Change-Id: I1b7bd1773bcd12ab282e77ee0dc41c27846fb66b --- .../locale/de/LC_MESSAGES/neutron-log-info.po | 947 ----------------- .../locale/es/LC_MESSAGES/neutron-log-info.po | 948 ----------------- .../locale/fr/LC_MESSAGES/neutron-log-info.po | 954 ------------------ .../locale/it/LC_MESSAGES/neutron-log-info.po | 942 ----------------- .../locale/ja/LC_MESSAGES/neutron-log-info.po | 944 ----------------- .../ko_KR/LC_MESSAGES/neutron-log-info.po | 937 ----------------- neutron/locale/neutron-log-error.pot | 172 ++-- neutron/locale/neutron-log-info.pot | 107 +- neutron/locale/neutron.pot | 369 ++++--- .../pt_BR/LC_MESSAGES/neutron-log-info.po | 943 ----------------- .../zh_CN/LC_MESSAGES/neutron-log-info.po | 936 ----------------- .../zh_TW/LC_MESSAGES/neutron-log-info.po | 934 ----------------- 12 files changed, 359 insertions(+), 8774 deletions(-) delete mode 100644 neutron/locale/de/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/es/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/fr/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/it/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/ja/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/ko_KR/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/pt_BR/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/zh_CN/LC_MESSAGES/neutron-log-info.po delete mode 100644 neutron/locale/zh_TW/LC_MESSAGES/neutron-log-info.po diff --git a/neutron/locale/de/LC_MESSAGES/neutron-log-info.po b/neutron/locale/de/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index 7f268a3acd5..00000000000 --- a/neutron/locale/de/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,947 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -# Carsten Duch , 2014 -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: German (http://www.transifex.com/projects/p/neutron/language/" -"de/)\n" -"Language: de\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "Laden von Plug-in: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "Ausgelöste HTTP-Ausnahme: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s mit HTTP %(status)d zurückgegeben" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s hat einen Fehler zurückgegeben: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "Sicherheitsgruppenerweiterung wurde inaktiviert." - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "Vorbereiten von Filtern für Geräte %s" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "Sicherheitsgruppenregel aktualisiert %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "Sicherheitsgruppenmitglied aktualisiert %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "Provider-Regel aktualisiert" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "Gerätefilter für %r entfernen" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "Firewallregeln aktualisieren" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "DHCP-Agent gestartet" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "Synchronisation von Status" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "'agent_updated' (Agent aktualisiert) durch Serverseite %s!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "Agent der Ebene 3 gestartet" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "Gerät %s ist bereits vorhanden" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "Versuch, ungefilterten Portfilter %s zu aktualisieren" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "Versuch, ungefilterten Portfilter %r zu entfernen" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "Erweiterungsmanager wird initialisiert." - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "Geladene Erweiterung: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"Das Zulassen der Sortierung ist aktiviert, da die native Paginierung die " -"native Sortierung erfordert" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "OVS-Bereinigungsprozedur erfolgreich abgeschlossen" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "Agent erfolgreich initialisiert, läuft jetzt... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "Protokollfunktion aktiviert!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "Konfigurations-Paste-Datei: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"Überprüfung für CIDR: %(new_cidr)s fehlgeschlagen - Überschneidung mit " -"Teilnetz %(subnet_id)s (CIDR: %(cidr)s)" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "Ungültige IP-Adresse in Pool gefunden: %(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "" -"Angegebene IP-Adressen stimmen nicht mit der Teilnetz-IP-Version überein" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "" -"Anfangs-IP-Adresse (%(start)s) ist größer als Ende-IP-Adresse (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "Pool gefunden, der größer ist als Teilnetz-CIDR:%(start)s - %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "Überschneidungen bei Bereichen gefunden: %(l_range)s und %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "" -"Port %s wird übersprungen, da keine IP-Adresse auf ihm konfiguriert ist" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoor hört auf %(port)s für Prozess %(pid)d" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "" -"Überspringe periodische Aufgabe %(task)s weil der Intervall negativ ist" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "Überspringe periodische Aufgabe %(task)s weil sie deaktiviert ist" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s abgefangen. Vorgang wird beendet" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "" -"Übergeordneter Prozess wurde unerwartet abgebrochen. Vorgang wird beendet" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Untergeordnetes Element %s abgefangen; Vorgang wird beendet" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Verzweigung zu schnell; im Ruhemodus" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Untergeordnetes Element %d gestartet" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Starten von %d Workers" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Untergeordnetes Element %(pid)d durch Signal %(sig)d abgebrochen" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Untergeordnete %(pid)s mit Status %(code)d beendet" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s abgefangen, untergeordnete Elemente werden gestoppt" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "Warten auf Beenden von %d untergeordneten Elementen" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "Zugeordnetes VLAN (%d) aus dem Pool" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "Kein %s-Plug-in geladen" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s: %(function_name)s mit Argumenten %(args)s ignoriert" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"Schleifeniteration hat Intervall (%(polling_interval)s contra %(elapsed)s) " -"überschritten!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "RPC-'agent_id': %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "Port %(device)s aktualisiert. Details: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "Gerät %s nicht für Plug-in definiert" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "Zusatzeinheit %s entfernt" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "Port %s aktualisiert." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "RPC-Dämon für Linux-Brückenagent gestartet!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "Agent nicht synchron mit Plug-in!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "Schnittstellenzuordnungen: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "Bereiche für Netz-VLAN: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "" -"Zuweisung von %(vlan_id)s als lokale VLAN-Adresse für net-id=%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "Zurückfordern von vlan = %(vlan_id)s von net-id = %(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "" -"Zuordnung von physischem Netz %(physical_network)s zu Brücke %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "Agententunnel nicht synchron mit Plug-in!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/es/LC_MESSAGES/neutron-log-info.po b/neutron/locale/es/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index a8ef8fe790b..00000000000 --- a/neutron/locale/es/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,948 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/neutron/language/" -"es/)\n" -"Language: es\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "Cargando complementos: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "Excepción de HTTP emitida: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "Se ha devuelto %(url)s con HTTP %(status)d" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s ha devuelto un error: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "La extensión security-group se ha inhabilitado." - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "Preparando filtros para dispositivos %s" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "Se ha actualizado la regla de grupo de seguridad %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "Se ha actualizado el miembro de grupo de seguridad %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "Se ha actualizado regla de proveedor" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "Eliminar filtro de dispositivo para %r" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "Renovar reglas de cortafuegos" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "Se ha iniciado al agente DHCP" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "Sincronizando estado" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "agent_updated por el lado del servidor %s!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "Se ha iniciado al agente L3" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "El dispositivo %s ya existe" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "Se ha intentado actualizar el filtro de puerto que no está filtrado %s" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "Se ha intentado eliminar el filtro de puerto que no está filtrado %r" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "Inicializando gestor de ampliación." - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "Ampliación cargada: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"Permitir ordenación está habilitado porque la paginación nativa requiere " -"ordenación nativa" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "La limpieza de OVS se ha completado satisfactoriamente" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "" -"El agente se ha inicializado satisfactoriamente, ahora se está ejecutando... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "Registro habilitado." - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "Archivo de configuración de pegar: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"Se ha encontrado un error en validación para CIDR: %(new_cidr)s; se solapa " -"con la subred %(subnet_id)s (CIDR: %(cidr)s)" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "" -"Se ha encontrado una dirección IP no válida en la agrupación: %(start)s - " -"%(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "" -"Las direcciones IP especificadas no coinciden con la versión de IP de subred " - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "" -"La IP de inicio (%(start)s) es mayor que la IP de finalización (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "" -"Se ha encontrado una agrupación mayor que el CIDR de subred: %(start)s - " -"%(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "Rangos de solapamiento encontrados: %(l_range)s y %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "Saltando el puerto %s, ya que no hay ninguna IP configurada en él" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet oculto escuchando en %(port)s para el proceso %(pid)d" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "Omitiendo la tarea periódica %(task)s porque el intervalo es negativo" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "Omitiendo la tarea periódica %(task)s porque está inhabilitada" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "Se ha captado %s, saliendo" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "El proceso padre se ha detenido inesperadamente, saliendo" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Hijo captado %s, saliendo" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Bifurcación demasiado rápida, en reposo" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Se ha iniciado el hijo %d" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Iniciando %d trabajadores" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Hijo %(pid)d matado por señal %(sig)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "El hijo %(pid)s ha salido con el estado %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "Se ha captado %s, deteniendo hijos" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "En espera de %d hijos para salir" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "Vlan asignada (%d) de la agrupación" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "No se ha cargado ningún plug-in de %s" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "" -"Se ha ignorado %(plugin_key)s: %(function_name)s con los argumentos %(args)s " - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"La iteración de bucle ha superado el intervalo (%(polling_interval)s frente " -"a %(elapsed)s)." - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "agent_id de RPC: %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "Se ha actualizado el puerto %(device)s. Detalles: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "El dispositivo %s no está definido en el plug-in" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "Se ha eliminado el adjunto %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "El puerto %s se ha actualizado." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "Se ha iniciado el daemon RPC de agente de LinuxBridge." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "El agente está fuera de sincronización con el plug-in." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "Correlaciones de interfaz: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "Rangos de VLAN de red: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "Asignando %(vlan_id)s como vlan local para net-id=%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "Reclamando vlan = %(vlan_id)s de net-id = %(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "" -"Correlacionando la red física %(physical_network)s con el puente %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "Túnel de agente fuera de sincronización con el plug-in. " - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/fr/LC_MESSAGES/neutron-log-info.po b/neutron/locale/fr/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index 51ecece6d0f..00000000000 --- a/neutron/locale/fr/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,954 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -# Maxime COQUEREL , 2014 -# Patte D , 2015 -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-04-01 13:11+0000\n" -"Last-Translator: Patte D \n" -"Language-Team: French (http://www.transifex.com/projects/p/neutron/language/" -"fr/)\n" -"Language: fr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "Chargement du plugin core: %s" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "Le service %s est supporté par le core plugin" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "Chargement du plug-in : %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "Chargement quota_driver: %s." - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "Service Neutron démarré, en écoute sur %(host)s:%(port)s" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "Exception HTTP générée : %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s retourné avec HTTP %(status)d" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s a retourné une erreur : %(exception)s." - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "Extension du groupe de sécurité désactivée." - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "Préparation des filtres pour les unités %s" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "Règle de groupe de sécurité mise à jour %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "Membre de groupe de sécurité mis à jour %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "Règle de fournisseur mise à jour" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "Suppression du filtre d'unités pour %r" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "Régénération des règles de pare-feu" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "Port %(port_id)s n'est pas présent dans le pont %(br_name)s" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "Agent DHCP démarré" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "Etat de synchronisation" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "Etat de synchronisation complet" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "agent_updated au niveau du serveur %s !" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "Agent de niveau 3 démarré" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "Le processus est exécuté avec uid/gid: %(uid)s/%(gid)s" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "L'unité %s existe déjà" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "" -"Tentative effectuée de mise à jour du filtre de ports (sans filtrage %s)" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "" -"Tentative effectuée de suppression du filtre de ports (sans filtrage %r)" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "Initialisation du gestionnaire d'extension." - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "Extension chargée : %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"Autorisation de tri activée car la mise en page native nécessite le tri natif" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "Échec %(action)s (Erreur client): %(exc)s" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "Le nettoyage d'OVS s'est terminé avec succès." - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "Agent initialisé avec succès, en cours d'exécution... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "Consignation activée !" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "Config du fichier de collage : %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "IPv6 n'est pas activé sur le système." - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"La validation du routage CIDR %(new_cidr)s a échoué : il chevauche le sous-" -"réseau %(subnet_id)s (CIDR : %(cidr)s) " - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "Adresse IP non valide trouvée dans le pool : %(start)s - %(end)s :" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "" -"Les adresses IP spécifiées ne correspondent à la version IP du sous-réseau" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "" -"L'adresse IP de début (%(start)s) est supérieure à l'adresse IP de fin " -"(%(end)s)." - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "" -"Un pool plus volumineux que le routage CIDR de sous-réseau %(start)s - " -"%(end)s a été trouvé." - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "Chevauchement d'intervalles trouvés : %(l_range)s et %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "Ignorer le port %s car aucune adresse IP n'est configurée" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoor en écoute sur le port %(port)s for process %(pid)d" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "Tâche périodique %(task)s ignorée car son intervalle est négatif" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "Tâche périodique %(task)s car elle est désactivée" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s interceptée, sortie" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Processus parent arrêté de manière inattendue, sortie" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "L'enfant a reçu %s, sortie" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Bifurcation trop rapide, pause" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Enfant démarré %d" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Démarrage des travailleurs %d" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Enfant %(pid)d arrêté par le signal %(sig)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Processus fils %(pid)s terminé avec le status %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s interceptée, arrêt de l'enfant" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "Pause demandée après suppression de thread. Nettoyage." - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "En attente %d enfants pour sortie" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "Réseau VLAN alloué (%d) depuis le pool" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "Aucun plug-in %s chargé" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s : %(function_name)s avec les arguments %(args)s ignoré" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"L'itération de boucle a dépassé l'intervalle (%(polling_interval)s contre " -"%(elapsed)s) !" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "agent_id RPC : %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "Port %(device)s mis à jour. Détails : %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "Unité %s non définie sur le plug-in" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "Connexion %s retirée" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "Port %s mis à jour." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "Serveur démon RPC de l'agent LinuxBridge démarré !" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "Agent non synchronisé avec le plug-in !" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "Mappages d'interface : %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "Tentative %(count)s de liaison port %(port)s" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "Le port %s a été effacé en même temps" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "Le sous-réseau %s a été effacé en même temps" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" -"L'information de liaison pour le port %s n'a pas été trouvée, elle peut déjà " -"avoir été effacée." - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "Plages de réseau local virtuel de réseau : %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "Nom du réseau changé en %s" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "Nom de port changé en %s" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "Démarrage du service de l'agent APIC" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "service de l'agent APIC démarré" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "Agent initialisé avec succès, en cours d'exécution..." - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "" -"Affectation de %(vlan_id)s comme réseau local virtuel pour net-id = " -"%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "" -"Récupération du réseau local virtuel = %(vlan_id)s à partir de net-id = " -"%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "Ajout %s à la liste de ponts." - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "Mappage du réseau physique %(physical_network)s sur le pont %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "Configuration complète de l'équipement %s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "Port auxiliaire %s ajouté" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "Tunnel d'agent désynchronisé avec le plug-in !" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "Aucun équipement avec MAC %s défini sur l'agent." - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "Appareil avec adresse MAC %s non-défini dans le plugin" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "Retrait de l'appareil ayant pour mac_address %s" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "Mappages d'Équipements Physiques: %s" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "Equipements exclus: %s" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "Agent %s déjà présent" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "Le plugin avait déjà lancé les RPC dans le processus parent." - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" -"Le fournisseur par défaut n'est pas spécifié pour le type de service %s" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "Chargement du pilote de Mesures %s" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "Chargement de pilote d'interface %s" diff --git a/neutron/locale/it/LC_MESSAGES/neutron-log-info.po b/neutron/locale/it/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index 1f2fd145644..00000000000 --- a/neutron/locale/it/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,942 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -# PierAlberto , 2014 -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Italian (http://www.transifex.com/projects/p/neutron/language/" -"it/)\n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "Caricamento plugin: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "Generata eccezione HTTP: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s restituito con HTTP %(status)d" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s ha restituito un errore: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "Estensione di security-group disabilitata." - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "Preparazione filtri per i dispositivi %s" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "Regola gruppo di sicurezza aggiornata %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "Membro gruppo di sicurezza aggiornato %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "Provider regola aggiornato" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "Rimuovi filtro dispositivo per %r" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "Aggiorna regole firewall" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "Agent DHCP avviato" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "Stato sincronizzazione" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "agent_updated dal lato server %s!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "Agent L3 avviato" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "L'unità %s già esiste" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "Tentativo di aggiornare il filtro della porta che non è filtrata %s" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "Tentativo di rimuovere il filtro della porta che non è filtrata %r" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "Inizializzazione gestore estensioni." - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "Estensione caricata: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"Consenti ordinamento è abilitato in quanto la paginaziona nativa richiede " -"l'ordinamento nativo" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "Ripulitura di OVS completata correttamente" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "Agent inizializzato correttamente, ora in esecuzione... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "Accesso abilitato!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "Configurazione file paste: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"Convalida per CIDR: %(new_cidr)s non riuscita - si sovrappone con la " -"sottorete %(subnet_id)s (CIDR: %(cidr)s)" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "Trovato un indirizzo IP invalido nel pool: %(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "" -"Gli indirizzi IP specificati non corrispondono alla versione IP della " -"sottorete" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "L'IP iniziale (%(start)s) è superiore all'IP finale (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "Trovato un pool più grande della sottorete CIDR:%(start)s - %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "Trovati gli intervalli di sovrapposizione: %(l_range)s e %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "La porta %s viene ignorata in quanto non ha nessun IP configurato" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Ascolto di eventlet backdoor su %(port)s per il processo %(pid)d" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "" -"Abbadono dell'attività periodica %(task)s perché l'intervalo è negativo" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "Abbadono dell'attività periodica %(task)s perché è disabilitata" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "Rilevato %s, esistente" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Il processo principale è stato interrotto inaspettatamente, uscire" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Cogliere Child %s, uscendo" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Sblocco troppo veloce, attendere" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Child avviato %d" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Avvio %d operatori" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "Child %(pid)d interrotto dal segnale %(sig)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Child %(pid)s terminato con stato %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "Intercettato %s, arresto in corso dei children" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "In attesa %d degli elementi secondari per uscire" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "vlan (%d) allocata dal pool" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "Nessun plugin %s caricato" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s: %(function_name)s con argomenti %(args)s ignorato" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"L'iterazione loop supera l'intervallo (%(polling_interval)s vs. %(elapsed)s)!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "agent-id RPC: %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "Porta %(device)s aggiornata. Dettagli: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "Unità %s non definita nel plugin" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "Collegamento %s rimosso" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "Porta %s aggiornata." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "LinuxBridge Agent RPC Daemon avviato!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "Agent non sincronizzato con il plugin!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "Associazioni interfaccia: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "Intervalli di rete VLAN: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "Assegnazione %(vlan_id)s come vlan locale per net-id=%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "Recupero vlan = %(vlan_id)s da net-id = %(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "Associazione rete fisica %(physical_network)s al bridge %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "Il tunnel agent non è sincronizzato con il plugin!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/ja/LC_MESSAGES/neutron-log-info.po b/neutron/locale/ja/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index dd818e5b59e..00000000000 --- a/neutron/locale/ja/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,944 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -# Sasuke(Kyohei MORIYAMA) <>, 2014 -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Japanese (http://www.transifex.com/projects/p/neutron/" -"language/ja/)\n" -"Language: ja\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "プラグインの読み込み中: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "HTTP 例外がスローされました: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "HTTP %(status)d の %(url)s が返されました" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s が障害を返しました: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "security-group 拡張を無効にしました。" - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "デバイス %s のフィルターを準備中" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "セキュリティー・グループ・ルールが %r を更新しました" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "セキュリティー・グループ・メンバーが %r を更新しました" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "プロバイダー・ルールが更新されました" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "%r のデバイス・フィルターを削除" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "ファイアウォール・ルールの最新表示" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "DHCP エージェントが始動しました" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "状態の同期中" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "サーバー・サイド %s による agent_updated!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "L3 エージェントが始動しました" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "デバイス %s は既に存在します" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "フィルター処理されていないポート・フィルター %s を更新しようとしました" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "フィルター処理されていないポート・フィルター %r を削除しようとしました" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "拡張マネージャーを初期化しています。" - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "拡張をロードしました: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"ネイティブ・ページ編集にはネイティブ・ソートが必要なため、ソートの許可が有効" -"になっています" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "OVS のクリーンアップが正常に完了しました" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "エージェントが正常に初期化されました。現在実行中です... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "ロギングは有効です" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "構成貼り付けファイル: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr " このシステムでは、 IPv6が有効ではありません。" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"CIDR %(new_cidr)s の検証が失敗しました。サブネット %(subnet_id)s (CIDR: " -"%(cidr)s) とオーバーラップしています" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "プールで無効な IP アドレスが見つかりました: %(start)s から %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "指定された IP アドレスが、サブネット IP バージョンと一致しません" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "開始 IP (%(start)s) が終了 IP (%(end)s) より大きくなっています" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "" -"サブネット CIDR より大きいプールが見つかりました: %(start)s から %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "オーバーラップする範囲が見つかりました: %(l_range)s から %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "ポート %s には IP が構成されていないため、このポートをスキップします" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet backdoorは、プロセス%(pid)dの%(port)sをリスニングしています。" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "タスクの間隔が負であるため、定期タスク %(task)s をスキップしています" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "タスクが使用不可であるため、定期タスク %(task)s をスキップしています" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s が見つかりました。終了しています" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "親プロセスが予期せずに停止しました。終了しています" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "fork が早すぎます。スリープ状態にしています" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "子 %d を開始しました" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "%d ワーカーを開始しています" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "子 %(pid)d がシグナル %(sig)d によって強制終了されました" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "子 %(pid)s が状況 %(code)d で終了しました" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s が見つかりました。子を停止しています" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "%d 個の子で終了を待機しています" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "プールからの割り振り済み VLAN (%d)" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "%s プラグインはロードされませんでした" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "" -"%(plugin_key)s: 引数 %(args)s が指定された %(function_name)s は無視されます" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"ループ反復が間隔を超えました (%(polling_interval)s に対して %(elapsed)s)。" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "RPC agent_id: %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "ポート %(device)s が更新されました。詳細: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "デバイス %s がプラグインで定義されていません" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "接続機構 %s が削除されました" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "ポート %s が更新されました。" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "LinuxBridge Agent RPC デーモンが開始しました。" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "エージェントがプラグインと非同期です。" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "インターフェース・マッピング: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "ネットワーク VLAN の範囲: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "" -"%(vlan_id)s を net-id=%(net_uuid)s のローカル VLAN として割り当てています" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "VLAN = %(vlan_id)s を net-id = %(net_uuid)s から再利用中" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "" -"物理ネットワーク %(physical_network)s をブリッジ %(bridge)s にマップしていま" -"す" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "エージェント・トンネルがプラグインと非同期です" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/ko_KR/LC_MESSAGES/neutron-log-info.po b/neutron/locale/ko_KR/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index ca98207a36c..00000000000 --- a/neutron/locale/ko_KR/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,937 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Korean (Korea) (http://www.transifex.com/projects/p/neutron/" -"language/ko_KR/)\n" -"Language: ko_KR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "로딩 플러그인: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "HTTP 예외 처리: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s이(가) HTTP %(status)d(으)로 리턴되었음" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s이(가) 결함을 리턴함: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "보안 그룹 확장을 사용하지 않습니다. " - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "%s 디바이스에 대한 필터 준비" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "보안 그룹 규칙이 %r을(를) 업데이트함" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "보안 그룹 멤버가 %r을(를) 업데이트함" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "제공자 규칙이 업데이트됨" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "%r의 디바이스 필터 제거" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "방화벽 규칙 새로 고치기" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "DHCP 에이전트가 시작됨" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "상태 동기화 중" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "서버측 %s!에 의한 agent_updated" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "L3 에이전트가 시작됨" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "%s 디바이스가 이미 존재함" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "필터링된 %s이(가) 아닌 포트 필터를 업데이트하려고 시도함" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "필터링된 %r이(가) 아닌 포트 필터를 제거하려고 시도함" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "확장기능 관리자를 초기화 중입니다. " - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "로드된 확장: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"네이티브 페이지 번호 매기기에 네이티브 정렬이 필요하므로 정렬을 사용할 수 있" -"음" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "OVS 정리가 완료됨" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "에이전트가 초기화되었으며, 지금 실행 중... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "로깅 사용!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "구성 붙여넣기 파일: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"CIDR %(new_cidr)s 유효성 검증 실패 - 서브넷 %(subnet_id)s(CIDR: %(cidr)s)과" -"(와) 겹침" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "풀에서 올바르지 않은 IP 주소 발견: %(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "지정된 IP 주소가 서브넷 IP 버전과 일치하지 않음" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "시작 IP(%(start)s)가 끝 IP(%(end)s)보다 큼" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "서브넷 CIDR보다 큰 풀 발견: %(start)s - %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "겹치는 범위 발견: %(l_range)s 및 %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "구성된 IP가 없어서 포트 %s을(를) 건너뜀" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet 백도어는 프로세스 %(pid)d 일 동안 %(port)s에서 수신" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "간격이 음수이기 때문에 주기적 태스크 %(task)s을(를) 건너뜀" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "사용 안하기 때문에 주기적 태스크 %(task)s을(를) 건너뜀" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s 발견, 종료 중" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "상위 프로세스가 예기치 않게 정지했습니다. 종료 중" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "자식으로 된 %s가 존재함." - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "포크가 너무 빠름. 정지 중" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "%d 하위를 시작했음" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "%d 작업자 시작 중" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "%(pid)d 하위가 %(sig)d 신호에 의해 강제 종료됨" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "%(pid)s 하위가 %(code)d 상태와 함께 종료했음" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s 발견, 하위 중지 중" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "%d 하위에서 종료하기를 대기 중임" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "풀에서 할당된 vlan(%d)" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "로드된 %s 플러그인이 없음" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s: %(args)s 인수를 갖는 %(function_name)s이(가) 무시됨" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "루프 반복이 간격을 초과했습니다(%(polling_interval)s 대 %(elapsed)s)!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "RPC agent_id: %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "%(device)s 포트가 업데이트되었습니다. 세부사항: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "%s 디바이스가 플러그인에서 정의되지 않음" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "첨부 %s이(가) 제거됨" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "%s 포트가 업데이트되었습니다. " - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "LinuxBridge 에이전트 RPC 디먼이 시작되었습니다!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "에이전트가 플러그인과 동기화되지 않았습니다!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "인터페이스 맵핑: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "형식 드라이버 이름을 설정했습니다: %s" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "형식 드라이버 이름을 불러왔습니다: %s" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "등록된 형식: %s" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "network_types를 임대합니다: %s" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "'%s' 형식 드라이버 초기화중" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "매커니즘 드라이버 이름을 설정했습니다: %s" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "매커니즘 드라이버 이름을 불러왔습니다: %s" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "모듈러 L2 플러그인 초기화를 완료했습니다" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "네트워크 VLAN 범위: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "%(vlan_id)s을(를) net-id=%(net_uuid)s에 대한 로컬 vlan으로 지정 중" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "net-id = %(net_uuid)s에서 vlan = %(vlan_id)s 재확보 중" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "실제 네트워크 %(physical_network)s을(를) 브릿지 %(bridge)s에 맵핑 중" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "에이전트 터널이 플러그인과 동기화되지 않았습니다!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/neutron-log-error.pot b/neutron/locale/neutron-log-error.pot index e3d529db988..fbef98f6c96 100644 --- a/neutron/locale/neutron-log-error.pot +++ b/neutron/locale/neutron-log-error.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: neutron 2015.1.dev240\n" +"Project-Id-Version: neutron 2015.1.dev1.g2add4e5\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" +"POT-Creation-Date: 2015-04-20 11:03+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -89,7 +89,7 @@ msgstr "" msgid "Timed out retrieving ofport on port %(pname)s. Exception: %(exception)s" msgstr "" -#: neutron/agent/common/ovs_lib.py:489 +#: neutron/agent/common/ovs_lib.py:506 #, python-format msgid "OVS flows could not be applied on bridge %s" msgstr "" @@ -113,56 +113,56 @@ msgstr "" msgid "Network %s info call failed." msgstr "" -#: neutron/agent/dhcp/agent.py:577 neutron/agent/l3/agent.py:617 -#: neutron/agent/metadata/agent.py:304 +#: neutron/agent/dhcp/agent.py:577 neutron/agent/l3/agent.py:606 +#: neutron/agent/metadata/agent.py:311 #: neutron/plugins/hyperv/agent/l2_agent.py:94 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:108 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:779 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:276 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:284 #: neutron/plugins/sriovnicagent/sriov_nic_agent.py:129 #: neutron/services/metering/agents/metering_agent.py:283 msgid "Failed reporting state!" msgstr "" -#: neutron/agent/l3/agent.py:173 neutron/tests/unit/test_l3_agent.py:1914 +#: neutron/agent/l3/agent.py:172 neutron/tests/unit/agent/l3/test_agent.py:2084 #, python-format msgid "Error importing interface driver '%s'" msgstr "" -#: neutron/agent/l3/agent.py:234 neutron/agent/linux/dhcp.py:786 +#: neutron/agent/l3/agent.py:232 neutron/agent/linux/dhcp.py:787 msgid "An interface driver must be specified" msgstr "" -#: neutron/agent/l3/agent.py:239 +#: neutron/agent/l3/agent.py:237 msgid "Router id is required if not using namespaces." msgstr "" -#: neutron/agent/l3/agent.py:246 +#: neutron/agent/l3/agent.py:244 #, python-format msgid "%s used in config as ipv6_gateway is not a valid IPv6 link-local address." msgstr "" -#: neutron/agent/l3/agent.py:387 +#: neutron/agent/l3/agent.py:379 #, python-format msgid "The external network bridge '%s' does not exist" msgstr "" -#: neutron/agent/l3/agent.py:447 +#: neutron/agent/l3/agent.py:433 #, python-format msgid "Failed to fetch router information for '%s'" msgstr "" -#: neutron/agent/l3/agent.py:471 +#: neutron/agent/l3/agent.py:457 #, python-format msgid "Removing incompatible router '%s'" msgstr "" -#: neutron/agent/l3/agent.py:475 +#: neutron/agent/l3/agent.py:461 #, python-format msgid "Failed to process compatible router '%s'" msgstr "" -#: neutron/agent/l3/agent.py:524 +#: neutron/agent/l3/agent.py:513 msgid "Failed synchronizing routers due to RPC error" msgstr "" @@ -182,7 +182,7 @@ msgstr "" msgid "DVR: removed snat failed" msgstr "" -#: neutron/agent/l3/dvr_router.py:500 +#: neutron/agent/l3/dvr_router.py:505 msgid "Missing subnet/agent_gateway_port" msgstr "" @@ -239,28 +239,28 @@ msgstr "" msgid "Pidfile %s already exist. Daemon already running?" msgstr "" -#: neutron/agent/linux/dhcp.py:792 +#: neutron/agent/linux/dhcp.py:793 #, python-format msgid "Error importing interface driver '%(driver)s': %(inner)s" msgstr "" -#: neutron/agent/linux/external_process.py:222 +#: neutron/agent/linux/external_process.py:224 #, python-format msgid "" "%(service)s for %(resource_type)s with uuid %(uuid)s not found. The " "process should not have died" msgstr "" -#: neutron/agent/linux/external_process.py:242 +#: neutron/agent/linux/external_process.py:244 #, python-format msgid "respawning %(service)s for uuid %(uuid)s" msgstr "" -#: neutron/agent/linux/external_process.py:248 +#: neutron/agent/linux/external_process.py:250 msgid "Exiting agent as programmed in check_child_processes_actions" msgstr "" -#: neutron/agent/linux/external_process.py:259 +#: neutron/agent/linux/external_process.py:261 #, python-format msgid "" "Exiting agent because of a malfunction with the %(service)s process " @@ -283,7 +283,7 @@ msgstr "" msgid "Failed unplugging interface '%s'" msgstr "" -#: neutron/agent/linux/ip_lib.py:673 +#: neutron/agent/linux/ip_lib.py:678 #, python-format msgid "Failed sending gratuitous ARP to %(addr)s on %(iface)s in namespace %(ns)s" msgstr "" @@ -317,17 +317,17 @@ msgstr "" msgid "Error received from ovsdb monitor: %s" msgstr "" -#: neutron/agent/linux/utils.py:219 +#: neutron/agent/linux/utils.py:220 #, python-format msgid "Unable to convert value in %s" msgstr "" -#: neutron/agent/metadata/agent.py:109 +#: neutron/agent/metadata/agent.py:116 #: neutron/agent/metadata/namespace_proxy.py:56 msgid "Unexpected error." msgstr "" -#: neutron/agent/ovsdb/impl_idl.py:103 +#: neutron/agent/ovsdb/impl_idl.py:106 #, python-format msgid "OVSDB Error: %s" msgstr "" @@ -470,11 +470,17 @@ msgstr "" #: neutron/cmd/sanity_check.py:126 msgid "" +"Check for Open vSwitch support of ARP header matching failed. ARP " +"spoofing suppression will not work. A newer version of OVS is required." +msgstr "" + +#: neutron/cmd/sanity_check.py:135 +msgid "" "Check for VF management support failed. Please ensure that the version of" " ip link being used has VF support." msgstr "" -#: neutron/cmd/sanity_check.py:136 +#: neutron/cmd/sanity_check.py:145 msgid "Check for native OVSDB support failed." msgstr "" @@ -483,11 +489,11 @@ msgstr "" msgid "Unexpected exception while checking supported feature via command: %s" msgstr "" -#: neutron/cmd/sanity/checks.py:119 +#: neutron/cmd/sanity/checks.py:129 msgid "Unexpected exception while checking supported ip link command" msgstr "" -#: neutron/cmd/sanity/checks.py:165 +#: neutron/cmd/sanity/checks.py:175 #, python-format msgid "" "Failed to import required modules. Ensure that the python-openvswitch " @@ -506,12 +512,12 @@ msgid "" "%(agent)s" msgstr "" -#: neutron/db/db_base_plugin_v2.py:926 neutron/plugins/ml2/plugin.py:552 +#: neutron/db/db_base_plugin_v2.py:931 neutron/plugins/ml2/plugin.py:559 #, python-format msgid "An exception occurred while creating the %(resource)s:%(item)s" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1689 +#: neutron/db/db_base_plugin_v2.py:1699 #, python-format msgid "Unable to generate mac address after %s attempts" msgstr "" @@ -535,6 +541,10 @@ msgstr "" msgid "Exception encountered during router rescheduling." msgstr "" +#: neutron/db/l3_db.py:539 +msgid "Cannot have multiple IPv4 subnets on router port" +msgstr "" + #: neutron/db/metering/metering_rpc.py:47 #, python-format msgid "Unable to find agent %s." @@ -660,7 +670,7 @@ msgid "" "the roll back. of a remove_router_interface operation" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:661 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:679 #: neutron/services/l3_router/l3_sdnve.py:203 #, python-format msgid "Delete floatingip failed in SDN-VE: %s" @@ -674,8 +684,8 @@ msgid "" msgstr "" #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:255 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1617 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1629 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1712 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1724 #, python-format msgid "%s Agent terminated!" msgstr "" @@ -730,152 +740,152 @@ msgstr "" msgid "Parsing physical_interface_mappings failed: %s. Agent terminated!" msgstr "" -#: neutron/plugins/ml2/db.py:242 neutron/plugins/ml2/db.py:328 -#: neutron/plugins/ml2/plugin.py:1303 +#: neutron/plugins/ml2/db.py:242 neutron/plugins/ml2/db.py:327 +#: neutron/plugins/ml2/plugin.py:1310 #, python-format msgid "Multiple ports have port_id starting with %s" msgstr "" -#: neutron/plugins/ml2/managers.py:56 +#: neutron/plugins/ml2/managers.py:57 #, python-format msgid "" "Type driver '%(new_driver)s' ignored because type driver '%(old_driver)s'" " is already registered for type '%(type)s'" msgstr "" -#: neutron/plugins/ml2/managers.py:72 +#: neutron/plugins/ml2/managers.py:73 #, python-format msgid "No type driver for tenant network_type: %s. Service terminated!" msgstr "" -#: neutron/plugins/ml2/managers.py:144 +#: neutron/plugins/ml2/managers.py:145 #, python-format msgid "Network %s has no segments" msgstr "" -#: neutron/plugins/ml2/managers.py:227 neutron/plugins/ml2/managers.py:254 +#: neutron/plugins/ml2/managers.py:228 neutron/plugins/ml2/managers.py:255 #, python-format msgid "Failed to release segment '%s' because network type is not supported." msgstr "" -#: neutron/plugins/ml2/managers.py:326 +#: neutron/plugins/ml2/managers.py:330 #, python-format msgid "Mechanism driver '%(name)s' failed in %(method)s" msgstr "" -#: neutron/plugins/ml2/managers.py:612 neutron/plugins/ml2/managers.py:674 +#: neutron/plugins/ml2/managers.py:616 neutron/plugins/ml2/managers.py:678 #, python-format msgid "Failed to bind port %(port)s on host %(host)s" msgstr "" -#: neutron/plugins/ml2/managers.py:627 +#: neutron/plugins/ml2/managers.py:631 #, python-format msgid "" "Exceeded maximum binding levels attempting to bind port %(port)s on host " "%(host)s" msgstr "" -#: neutron/plugins/ml2/managers.py:670 +#: neutron/plugins/ml2/managers.py:674 #, python-format msgid "Mechanism driver %s failed in bind_port" msgstr "" -#: neutron/plugins/ml2/managers.py:741 +#: neutron/plugins/ml2/managers.py:745 #, python-format msgid "Extension driver '%(name)s' failed in %(method)s" msgstr "" -#: neutron/plugins/ml2/plugin.py:275 +#: neutron/plugins/ml2/plugin.py:282 #, python-format msgid "Failed to commit binding results for %(port)s after %(max)s tries" msgstr "" -#: neutron/plugins/ml2/plugin.py:432 +#: neutron/plugins/ml2/plugin.py:439 #, python-format msgid "Serialized vif_details DB value '%(value)s' for port %(port)s is invalid" msgstr "" -#: neutron/plugins/ml2/plugin.py:443 +#: neutron/plugins/ml2/plugin.py:450 #, python-format msgid "Serialized profile DB value '%(value)s' for port %(port)s is invalid" msgstr "" -#: neutron/plugins/ml2/plugin.py:529 +#: neutron/plugins/ml2/plugin.py:536 #, python-format msgid "Could not find %s to delete." msgstr "" -#: neutron/plugins/ml2/plugin.py:532 +#: neutron/plugins/ml2/plugin.py:539 #, python-format msgid "Could not delete %(res)s %(id)s." msgstr "" -#: neutron/plugins/ml2/plugin.py:565 +#: neutron/plugins/ml2/plugin.py:572 #, python-format msgid "" "mechanism_manager.create_%(res)s_postcommit failed for %(res)s: " "'%(failed_id)s'. Deleting %(res)ss %(resource_ids)s" msgstr "" -#: neutron/plugins/ml2/plugin.py:611 +#: neutron/plugins/ml2/plugin.py:618 #, python-format msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:681 +#: neutron/plugins/ml2/plugin.py:688 #, python-format msgid "Exception auto-deleting port %s" msgstr "" -#: neutron/plugins/ml2/plugin.py:693 +#: neutron/plugins/ml2/plugin.py:700 #, python-format msgid "Exception auto-deleting subnet %s" msgstr "" -#: neutron/plugins/ml2/plugin.py:775 +#: neutron/plugins/ml2/plugin.py:782 msgid "mechanism_manager.delete_network_postcommit failed" msgstr "" -#: neutron/plugins/ml2/plugin.py:796 +#: neutron/plugins/ml2/plugin.py:803 #, python-format msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:901 +#: neutron/plugins/ml2/plugin.py:908 #, python-format msgid "Exception deleting fixed_ip from port %s" msgstr "" -#: neutron/plugins/ml2/plugin.py:910 +#: neutron/plugins/ml2/plugin.py:917 msgid "mechanism_manager.delete_subnet_postcommit failed" msgstr "" -#: neutron/plugins/ml2/plugin.py:975 +#: neutron/plugins/ml2/plugin.py:982 #, python-format msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:987 +#: neutron/plugins/ml2/plugin.py:994 #, python-format msgid "_bind_port_if_needed failed, deleting port '%s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:1017 +#: neutron/plugins/ml2/plugin.py:1024 #, python-format msgid "_bind_port_if_needed failed. Deleting all ports from create bulk '%s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:1162 +#: neutron/plugins/ml2/plugin.py:1169 #, python-format msgid "No Host supplied to bind DVR Port %s" msgstr "" -#: neutron/plugins/ml2/plugin.py:1284 +#: neutron/plugins/ml2/plugin.py:1291 #, python-format msgid "mechanism_manager.delete_port_postcommit failed for port %s" msgstr "" -#: neutron/plugins/ml2/plugin.py:1316 +#: neutron/plugins/ml2/plugin.py:1323 #, python-format msgid "Binding info for DVR port %s not found" msgstr "" @@ -1045,102 +1055,102 @@ msgstr "" msgid "a different subnet %s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:348 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:356 msgid "No tunnel_type specified, cannot create tunnels" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:351 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:374 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:359 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:382 #, python-format msgid "tunnel_type %s not supported by agent" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:367 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:375 msgid "No tunnel_ip specified, cannot delete tunnels" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:371 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:379 msgid "No tunnel_type specified, cannot delete tunnels" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:509 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:517 #, python-format msgid "No local VLAN available for net-id=%s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:548 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:556 #, python-format msgid "" "Cannot provision %(network_type)s network for net-id=%(net_uuid)s - " "tunneling disabled" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:567 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:575 #, python-format msgid "" "Cannot provision flat network for net-id=%(net_uuid)s - no bridge for " "physical_network %(physical_network)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:595 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:603 #, python-format msgid "" "Cannot provision VLAN network for net-id=%(net_uuid)s - no bridge for " "physical_network %(physical_network)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:604 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:612 #, python-format msgid "" "Cannot provision unknown network type %(network_type)s for net-" "id=%(net_uuid)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:660 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:668 #, python-format msgid "" "Cannot reclaim unknown network type %(network_type)s for net-" "id=%(net_uuid)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:805 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:855 msgid "" "Failed to create OVS patch port. Cannot have tunneling enabled on this " "agent, since this version of OVS does not support tunnels or patch ports." " Agent terminated!" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:932 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982 #, python-format msgid "" "Bridge %(bridge)s for physical network %(physical_network)s does not " "exist. Agent terminated!" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1084 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1174 #, python-format msgid "Failed to set-up %(type)s tunnel port to %(ip)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1286 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1379 #, python-format msgid "" "process_network_ports - iteration:%d - failure while retrieving port " "details from server" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1315 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1408 #, python-format msgid "" "process_ancillary_network_ports - iteration:%d - failure while retrieving" " port details from server" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1461 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1554 msgid "Error while synchronizing tunnels" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1531 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1625 msgid "Error while processing VIF ports" msgstr "" diff --git a/neutron/locale/neutron-log-info.pot b/neutron/locale/neutron-log-info.pot index 6a23a3540be..12dacb5febd 100644 --- a/neutron/locale/neutron-log-info.pot +++ b/neutron/locale/neutron-log-info.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: neutron 2015.1.dev240\n" +"Project-Id-Version: neutron 2015.1.dev1.g2add4e5\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" +"POT-Creation-Date: 2015-04-20 11:03+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -122,7 +122,7 @@ msgstr "" msgid "No ports here to refresh firewall" msgstr "" -#: neutron/agent/common/ovs_lib.py:393 +#: neutron/agent/common/ovs_lib.py:410 #, python-format msgid "Port %(port_id)s not present in bridge %(br_name)s" msgstr "" @@ -139,13 +139,13 @@ msgstr "" msgid "Synchronizing state complete" msgstr "" -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 +#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:611 #: neutron/services/metering/agents/metering_agent.py:286 #, python-format msgid "agent_updated by server side %s!" msgstr "" -#: neutron/agent/l3/agent.py:551 +#: neutron/agent/l3/agent.py:540 msgid "L3 agent started" msgstr "" @@ -166,7 +166,7 @@ msgstr "" msgid "Process runs with uid/gid: %(uid)s/%(gid)s" msgstr "" -#: neutron/agent/linux/dhcp.py:656 +#: neutron/agent/linux/dhcp.py:657 #, python-format msgid "" "Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is " @@ -234,7 +234,7 @@ msgstr "" #: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 #: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1729 #: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 msgid "Agent initialized successfully, now running... " msgstr "" @@ -311,7 +311,7 @@ msgstr "" msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1507 +#: neutron/db/db_base_plugin_v2.py:1517 #, python-format msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" msgstr "" @@ -322,7 +322,7 @@ msgid "" "rescheduling is disabled." msgstr "" -#: neutron/db/l3_db.py:1114 +#: neutron/db/l3_db.py:1178 #, python-format msgid "Skipping port %s as no IP is configure on it" msgstr "" @@ -332,12 +332,12 @@ msgstr "" msgid "Centralizing distributed router %s is not supported" msgstr "" -#: neutron/db/l3_dvr_db.py:535 +#: neutron/db/l3_dvr_db.py:539 #, python-format msgid "Agent Gateway port does not exist, so create one: %s" msgstr "" -#: neutron/db/l3_dvr_db.py:619 +#: neutron/db/l3_dvr_db.py:623 #, python-format msgid "SNAT interface port list does not exist, so create one: %s" msgstr "" @@ -370,6 +370,10 @@ msgstr "" msgid "%d probe(s) deleted" msgstr "" +#: neutron/extensions/vlantransparent.py:45 +msgid "Disabled vlantransparent extension." +msgstr "" + #: neutron/notifiers/nova.py:266 #, python-format msgid "Nova event response: %s" @@ -564,7 +568,7 @@ msgid "RPC agent_id: %s" msgstr "" #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1245 #: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 #, python-format msgid "Port %(device)s updated. Details: %(details)s" @@ -576,14 +580,14 @@ msgid "Device %s not defined on plugin" msgstr "" #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1320 #, python-format msgid "Attachment %s removed" msgstr "" #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1332 #: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 #, python-format msgid "Port %s updated." @@ -594,7 +598,7 @@ msgid "LinuxBridge Agent RPC Daemon Started!" msgstr "" #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1522 #: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 msgid "Agent out of sync with plugin!" msgstr "" @@ -610,111 +614,111 @@ msgstr "" msgid "Added segment %(id)s of type %(network_type)s for network %(network_id)s" msgstr "" -#: neutron/plugins/ml2/managers.py:43 +#: neutron/plugins/ml2/managers.py:44 #, python-format msgid "Configured type driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:48 +#: neutron/plugins/ml2/managers.py:49 #, python-format msgid "Loaded type driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:64 +#: neutron/plugins/ml2/managers.py:65 #, python-format msgid "Registered types: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:75 +#: neutron/plugins/ml2/managers.py:76 #, python-format msgid "Tenant network_types: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:161 +#: neutron/plugins/ml2/managers.py:162 #, python-format msgid "Initializing driver for type '%s'" msgstr "" -#: neutron/plugins/ml2/managers.py:270 +#: neutron/plugins/ml2/managers.py:271 #, python-format msgid "Configured mechanism driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:276 +#: neutron/plugins/ml2/managers.py:277 #, python-format msgid "Loaded mechanism driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:288 +#: neutron/plugins/ml2/managers.py:289 #, python-format msgid "Registered mechanism drivers: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:293 +#: neutron/plugins/ml2/managers.py:294 #, python-format msgid "Initializing mechanism driver '%s'" msgstr "" -#: neutron/plugins/ml2/managers.py:699 +#: neutron/plugins/ml2/managers.py:703 #, python-format msgid "Configured extension driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:705 +#: neutron/plugins/ml2/managers.py:709 #, python-format msgid "Loaded extension driver names: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:716 +#: neutron/plugins/ml2/managers.py:720 #, python-format msgid "Registered extension drivers: %s" msgstr "" -#: neutron/plugins/ml2/managers.py:722 +#: neutron/plugins/ml2/managers.py:726 #, python-format msgid "Initializing extension driver '%s'" msgstr "" -#: neutron/plugins/ml2/managers.py:730 +#: neutron/plugins/ml2/managers.py:734 #, python-format msgid "Got %(alias)s extension from driver '%(drv)s'" msgstr "" -#: neutron/plugins/ml2/managers.py:779 +#: neutron/plugins/ml2/managers.py:783 #, python-format msgid "Extended network dict for driver '%(drv)s'" msgstr "" -#: neutron/plugins/ml2/managers.py:786 +#: neutron/plugins/ml2/managers.py:790 #, python-format msgid "Extended subnet dict for driver '%(drv)s'" msgstr "" -#: neutron/plugins/ml2/managers.py:793 +#: neutron/plugins/ml2/managers.py:797 #, python-format msgid "Extended port dict for driver '%(drv)s'" msgstr "" -#: neutron/plugins/ml2/plugin.py:144 +#: neutron/plugins/ml2/plugin.py:151 msgid "Modular L2 Plugin initialization complete" msgstr "" -#: neutron/plugins/ml2/plugin.py:281 +#: neutron/plugins/ml2/plugin.py:288 #, python-format msgid "Attempt %(count)s to bind port %(port)s" msgstr "" -#: neutron/plugins/ml2/plugin.py:678 +#: neutron/plugins/ml2/plugin.py:685 #, python-format msgid "Port %s was deleted concurrently" msgstr "" -#: neutron/plugins/ml2/plugin.py:689 +#: neutron/plugins/ml2/plugin.py:696 #, python-format msgid "Subnet %s was deleted concurrently" msgstr "" -#: neutron/plugins/ml2/plugin.py:1329 +#: neutron/plugins/ml2/plugin.py:1336 #, python-format msgid "" "Binding info for port %s was not found, it might have been deleted " @@ -821,54 +825,61 @@ msgstr "" msgid "L2 Agent operating in DVR Mode with MAC %s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:526 #, python-format msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:627 #, python-format msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:717 +#, python-format +msgid "" +"Skipping ARP spoofing rules for port '%s' because it has port security " +"disabled" +msgstr "" + +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:764 #, python-format msgid "port_unbound(): net_uuid %s not in local_vlan_map" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:833 #, python-format msgid "Adding %s to list of bridges." msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:976 #, python-format msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1125 #, python-format msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 #, python-format msgid "" "Port %s was not found on the integration bridge and will therefore not be" " processed" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1272 #, python-format msgid "Configuration for device %s completed." msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1291 #, python-format msgid "Ancillary Port %s added" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1550 msgid "Agent tunnel out of sync with plugin!" msgstr "" diff --git a/neutron/locale/neutron.pot b/neutron/locale/neutron.pot index 1ef546fa12e..724742ef327 100644 --- a/neutron/locale/neutron.pot +++ b/neutron/locale/neutron.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: neutron 2015.1.dev240\n" +"Project-Id-Version: neutron 2015.1.dev1.g2add4e5\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" +"POT-Creation-Date: 2015-04-20 11:03+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -255,17 +255,30 @@ msgstr "" msgid "Add comments to iptables rules." msgstr "" -#: neutron/agent/common/config.py:69 +#: neutron/agent/common/config.py:68 +msgid "" +"Maximum number of elements which can be stored in an IPset. If None is " +"specified, the system default will be used." +msgstr "" + +#: neutron/agent/common/config.py:72 +msgid "" +"Initial hash size for an IPset. Must be a power of 2, else the kernel " +"will round it up automatically. If None is specified, the system default " +"will be used." +msgstr "" + +#: neutron/agent/common/config.py:80 msgid "Action to be executed when a child process dies" msgstr "" -#: neutron/agent/common/config.py:71 +#: neutron/agent/common/config.py:82 msgid "" "Interval between checks of child process liveness (seconds), use 0 to " "disable" msgstr "" -#: neutron/agent/common/config.py:137 +#: neutron/agent/common/config.py:152 msgid "Top-level directory for maintaining dhcp state" msgstr "" @@ -273,16 +286,16 @@ msgstr "" msgid "Timeout in seconds for ovs-vsctl commands" msgstr "" -#: neutron/agent/common/ovs_lib.py:411 +#: neutron/agent/common/ovs_lib.py:428 #, python-format msgid "Unable to determine mac address for %s" msgstr "" -#: neutron/agent/common/ovs_lib.py:505 +#: neutron/agent/common/ovs_lib.py:522 msgid "Cannot match priority on flow deletion or modification" msgstr "" -#: neutron/agent/common/ovs_lib.py:510 +#: neutron/agent/common/ovs_lib.py:527 msgid "Must specify one or more actions on flow addition or modification" msgstr "" @@ -341,7 +354,7 @@ msgstr "" msgid "Use broadcast in DHCP replies" msgstr "" -#: neutron/agent/l3/agent.py:278 +#: neutron/agent/l3/agent.py:276 msgid "" "The 'gateway_external_network_id' option must be configured for this " "agent as Neutron has more than one external network." @@ -472,7 +485,6 @@ msgid "Group (gid or name) running this process after its initialization" msgstr "" #: neutron/agent/l3/keepalived_state_change.py:122 -#: neutron/agent/metadata/driver.py:43 #: neutron/agent/metadata/namespace_proxy.py:153 #: neutron/tests/functional/agent/l3/test_keepalived_state_change.py:31 msgid "Location of Metadata Proxy UNIX domain socket" @@ -516,17 +528,17 @@ msgstr "" msgid "Unable to unlock pid file" msgstr "" -#: neutron/agent/linux/dhcp.py:239 +#: neutron/agent/linux/dhcp.py:240 #, python-format msgid "Error while reading %s" msgstr "" -#: neutron/agent/linux/dhcp.py:246 +#: neutron/agent/linux/dhcp.py:247 #, python-format msgid "Unable to convert value in %s" msgstr "" -#: neutron/agent/linux/dhcp.py:248 +#: neutron/agent/linux/dhcp.py:249 #, python-format msgid "Unable to access %s" msgstr "" @@ -559,32 +571,32 @@ msgstr "" msgid "Admin username" msgstr "" -#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/config.py:24 +#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/config.py:56 #: neutron/plugins/metaplugin/common/config.py:65 msgid "Admin password" msgstr "" -#: neutron/agent/linux/interface.py:56 neutron/agent/metadata/config.py:27 +#: neutron/agent/linux/interface.py:56 neutron/agent/metadata/config.py:59 #: neutron/plugins/metaplugin/common/config.py:68 msgid "Admin tenant name" msgstr "" -#: neutron/agent/linux/interface.py:58 neutron/agent/metadata/config.py:29 +#: neutron/agent/linux/interface.py:58 neutron/agent/metadata/config.py:61 #: neutron/plugins/metaplugin/common/config.py:70 msgid "Authentication URL" msgstr "" -#: neutron/agent/linux/interface.py:60 neutron/agent/metadata/config.py:31 +#: neutron/agent/linux/interface.py:60 neutron/agent/metadata/config.py:63 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:72 msgid "The type of authentication to use" msgstr "" -#: neutron/agent/linux/interface.py:62 neutron/agent/metadata/config.py:33 +#: neutron/agent/linux/interface.py:62 neutron/agent/metadata/config.py:65 #: neutron/plugins/metaplugin/common/config.py:74 msgid "Authentication region" msgstr "" -#: neutron/agent/linux/interface.py:65 neutron/agent/metadata/config.py:43 +#: neutron/agent/linux/interface.py:65 neutron/agent/metadata/config.py:75 msgid "Network service endpoint type to pull from the keystone catalog" msgstr "" @@ -630,7 +642,7 @@ msgstr "" msgid "Location to store IPv6 RA config files" msgstr "" -#: neutron/agent/linux/utils.py:118 +#: neutron/agent/linux/utils.py:119 msgid "" "\n" "Command: {cmd}\n" @@ -640,94 +652,45 @@ msgid "" "Stderr: {stderr}" msgstr "" -#: neutron/agent/metadata/agent.py:110 +#: neutron/agent/metadata/agent.py:117 #: neutron/agent/metadata/namespace_proxy.py:57 msgid "An unknown error has occurred. Please try your request again." msgstr "" -#: neutron/agent/metadata/agent.py:187 +#: neutron/agent/metadata/agent.py:194 msgid "" "Either one of parameter network_id or router_id must be passed to " "_get_ports method." msgstr "" -#: neutron/agent/metadata/agent.py:249 +#: neutron/agent/metadata/agent.py:256 #: neutron/agent/metadata/namespace_proxy.py:102 msgid "Remote metadata server experienced an internal server error." msgstr "" -#: neutron/agent/metadata/agent.py:255 +#: neutron/agent/metadata/agent.py:262 #: neutron/agent/metadata/namespace_proxy.py:108 #, python-format msgid "Unexpected response code: %s" msgstr "" -#: neutron/agent/metadata/config.py:22 -#: neutron/plugins/metaplugin/common/config.py:63 -msgid "Admin user" +#: neutron/agent/metadata/config.py:23 +msgid "Location for Metadata Proxy UNIX domain socket." msgstr "" -#: neutron/agent/metadata/config.py:36 -msgid "Turn off verification of the certificate for ssl" -msgstr "" - -#: neutron/agent/metadata/config.py:39 -msgid "Certificate Authority public key (CA cert) file for ssl" -msgstr "" - -#: neutron/agent/metadata/config.py:46 -msgid "IP address used by Nova metadata server." -msgstr "" - -#: neutron/agent/metadata/config.py:49 -msgid "TCP Port used by Nova metadata server." -msgstr "" - -#: neutron/agent/metadata/config.py:52 -msgid "Shared secret to sign instance-id request" -msgstr "" - -#: neutron/agent/metadata/config.py:57 -msgid "Protocol to access nova metadata, http or https" -msgstr "" - -#: neutron/agent/metadata/config.py:59 -msgid "Allow to perform insecure SSL (https) requests to nova metadata" -msgstr "" - -#: neutron/agent/metadata/config.py:63 -msgid "Client certificate for nova metadata api server." -msgstr "" - -#: neutron/agent/metadata/config.py:66 -msgid "Private key of client certificate." -msgstr "" - -#: neutron/agent/metadata/config.py:73 -msgid "Location for Metadata Proxy UNIX domain socket" -msgstr "" - -#: neutron/agent/metadata/config.py:76 -msgid "Number of separate worker processes for metadata server" -msgstr "" - -#: neutron/agent/metadata/config.py:80 -msgid "Number of backlog requests to configure the metadata server socket with" -msgstr "" - -#: neutron/agent/metadata/driver.py:47 +#: neutron/agent/metadata/config.py:26 msgid "" "User (uid or name) running metadata proxy after its initialization (if " -"empty: agent effective user)" +"empty: agent effective user)." msgstr "" -#: neutron/agent/metadata/driver.py:52 +#: neutron/agent/metadata/config.py:31 msgid "" "Group (gid or name) running metadata proxy after its initialization (if " -"empty: agent effective group)" +"empty: agent effective group)." msgstr "" -#: neutron/agent/metadata/driver.py:57 +#: neutron/agent/metadata/config.py:40 msgid "" "Enable/Disable log watch by metadata proxy. It should be disabled when " "metadata_proxy_user/group is not allowed to read/write its log file and " @@ -737,6 +700,65 @@ msgid "" " effective user id/name." msgstr "" +#: neutron/agent/metadata/config.py:54 +#: neutron/plugins/metaplugin/common/config.py:63 +msgid "Admin user" +msgstr "" + +#: neutron/agent/metadata/config.py:68 +msgid "Turn off verification of the certificate for ssl" +msgstr "" + +#: neutron/agent/metadata/config.py:71 +msgid "Certificate Authority public key (CA cert) file for ssl" +msgstr "" + +#: neutron/agent/metadata/config.py:78 +msgid "IP address used by Nova metadata server." +msgstr "" + +#: neutron/agent/metadata/config.py:81 +msgid "TCP Port used by Nova metadata server." +msgstr "" + +#: neutron/agent/metadata/config.py:84 +msgid "Shared secret to sign instance-id request" +msgstr "" + +#: neutron/agent/metadata/config.py:89 +msgid "Protocol to access nova metadata, http or https" +msgstr "" + +#: neutron/agent/metadata/config.py:91 +msgid "Allow to perform insecure SSL (https) requests to nova metadata" +msgstr "" + +#: neutron/agent/metadata/config.py:95 +msgid "Client certificate for nova metadata api server." +msgstr "" + +#: neutron/agent/metadata/config.py:98 +msgid "Private key of client certificate." +msgstr "" + +#: neutron/agent/metadata/config.py:112 +msgid "" +"Metadata Proxy UNIX domain socket mode, 3 values allowed: 'deduce': " +"deduce mode from metadata_proxy_user/group values, 'user': set metadata " +"proxy socket mode to 0o644, to use when metadata_proxy_user is agent " +"effective user or root, 'group': set metadata proxy socket mode to 0o664," +" to use when metadata_proxy_group is agent effective group or root, " +"'all': set metadata proxy socket mode to 0o666, to use otherwise." +msgstr "" + +#: neutron/agent/metadata/config.py:126 +msgid "Number of separate worker processes for metadata server" +msgstr "" + +#: neutron/agent/metadata/config.py:130 +msgid "Number of backlog requests to configure the metadata server socket with" +msgstr "" + #: neutron/agent/metadata/namespace_proxy.py:137 msgid "Network that will have instance metadata proxied." msgstr "" @@ -959,9 +981,10 @@ msgstr "" msgid "Duplicate hostroute '%s'" msgstr "" -#: neutron/api/v2/attributes.py:334 neutron/tests/unit/test_attributes.py:515 -#: neutron/tests/unit/test_attributes.py:529 -#: neutron/tests/unit/test_attributes.py:537 +#: neutron/api/v2/attributes.py:334 +#: neutron/tests/unit/api/v2/test_attributes.py:515 +#: neutron/tests/unit/api/v2/test_attributes.py:529 +#: neutron/tests/unit/api/v2/test_attributes.py:537 #, python-format msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended" msgstr "" @@ -1117,7 +1140,7 @@ msgid "Tenant %(tenant_id)s not allowed to create %(resource)s on this network" msgstr "" #: neutron/api/v2/resource.py:127 -#: neutron/tests/unit/test_api_v2_resource.py:248 +#: neutron/tests/unit/api/v2/test_resource.py:248 msgid "Request Failed: internal server error while processing your request." msgstr "" @@ -1136,39 +1159,43 @@ msgid "" "ports created by Neutron on integration and external network bridges." msgstr "" -#: neutron/cmd/sanity_check.py:143 +#: neutron/cmd/sanity_check.py:152 msgid "Check for OVS vxlan support" msgstr "" -#: neutron/cmd/sanity_check.py:145 +#: neutron/cmd/sanity_check.py:154 msgid "Check for iproute2 vxlan support" msgstr "" -#: neutron/cmd/sanity_check.py:147 +#: neutron/cmd/sanity_check.py:156 msgid "Check for patch port support" msgstr "" -#: neutron/cmd/sanity_check.py:149 +#: neutron/cmd/sanity_check.py:158 msgid "Check for nova notification support" msgstr "" -#: neutron/cmd/sanity_check.py:151 +#: neutron/cmd/sanity_check.py:160 msgid "Check for ARP responder support" msgstr "" -#: neutron/cmd/sanity_check.py:153 +#: neutron/cmd/sanity_check.py:162 +msgid "Check for ARP header match support" +msgstr "" + +#: neutron/cmd/sanity_check.py:164 msgid "Check for VF management support" msgstr "" -#: neutron/cmd/sanity_check.py:155 +#: neutron/cmd/sanity_check.py:166 msgid "Check netns permission settings" msgstr "" -#: neutron/cmd/sanity_check.py:157 +#: neutron/cmd/sanity_check.py:168 msgid "Check minimal dnsmasq version" msgstr "" -#: neutron/cmd/sanity_check.py:159 +#: neutron/cmd/sanity_check.py:170 msgid "Check ovsdb native interface support" msgstr "" @@ -1946,58 +1973,58 @@ msgstr "" msgid "Cannot disable enable_dhcp with ipv6 attributes set" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1020 +#: neutron/db/db_base_plugin_v2.py:1030 #, python-format msgid "%(name)s '%(addr)s' does not match the ip_version '%(ip_version)s'" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1044 +#: neutron/db/db_base_plugin_v2.py:1054 msgid "Gateway is not valid on subnet" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1064 neutron/db/db_base_plugin_v2.py:1078 +#: neutron/db/db_base_plugin_v2.py:1074 neutron/db/db_base_plugin_v2.py:1088 #: neutron/plugins/opencontrail/contrail_plugin.py:312 msgid "new subnet" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1071 +#: neutron/db/db_base_plugin_v2.py:1081 #, python-format msgid "Error parsing dns address %s" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1087 +#: neutron/db/db_base_plugin_v2.py:1097 msgid "ipv6_ra_mode is not valid when ip_version is 4" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1091 +#: neutron/db/db_base_plugin_v2.py:1101 msgid "ipv6_address_mode is not valid when ip_version is 4" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1224 +#: neutron/db/db_base_plugin_v2.py:1234 msgid "allocation_pools allowed only for specific subnet requests." msgstr "" -#: neutron/db/db_base_plugin_v2.py:1304 +#: neutron/db/db_base_plugin_v2.py:1314 msgid "ip_version must be specified in the absence of cidr and subnetpool_id" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1321 +#: neutron/db/db_base_plugin_v2.py:1331 msgid "cidr and prefixlen must not be supplied together" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1332 +#: neutron/db/db_base_plugin_v2.py:1342 msgid "A cidr must be specified in the absence of a subnet pool" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1583 +#: neutron/db/db_base_plugin_v2.py:1593 msgid "Existing prefixes must be a subset of the new prefixes" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1650 +#: neutron/db/db_base_plugin_v2.py:1660 msgid "Subnet pool has existing allocations" msgstr "" -#: neutron/db/db_base_plugin_v2.py:1657 +#: neutron/db/db_base_plugin_v2.py:1667 msgid "mac address update" msgstr "" @@ -2066,67 +2093,71 @@ msgstr "" msgid "Cannot specify both subnet-id and port-id" msgstr "" -#: neutron/db/l3_db.py:514 -msgid "Router port must have exactly one fixed IP" +#: neutron/db/l3_db.py:518 +#, python-format +msgid "" +"Cannot have multiple router ports with the same network id if both " +"contain IPv6 subnets. Existing port %(p)s has IPv6 subnet(s) and network " +"id %(nid)s" msgstr "" -#: neutron/db/l3_db.py:528 +#: neutron/db/l3_db.py:560 msgid "Subnet for router interface must have a gateway IP" msgstr "" -#: neutron/db/l3_db.py:532 +#: neutron/db/l3_db.py:564 #, python-format msgid "" "IPv6 subnet %s configured to receive RAs from an external router cannot " "be added to Neutron Router." msgstr "" -#: neutron/db/l3_db.py:712 +#: neutron/db/l3_db.py:776 #, python-format msgid "Cannot add floating IP to port on subnet %s which has no gateway_ip" msgstr "" -#: neutron/db/l3_db.py:753 +#: neutron/db/l3_db.py:817 #, python-format msgid "" "Port %(port_id)s is associated with a different tenant than Floating IP " "%(floatingip_id)s and therefore cannot be bound." msgstr "" -#: neutron/db/l3_db.py:757 +#: neutron/db/l3_db.py:821 #, python-format msgid "" "Cannot create floating IP and bind it to Port %s, since that port is " "owned by a different tenant." msgstr "" -#: neutron/db/l3_db.py:769 +#: neutron/db/l3_db.py:833 #, python-format msgid "Port %(id)s does not have fixed ip %(address)s" msgstr "" -#: neutron/db/l3_db.py:776 +#: neutron/db/l3_db.py:840 #, python-format msgid "Cannot add floating IP to port %s that has no fixed IP addresses" msgstr "" -#: neutron/db/l3_db.py:780 +#: neutron/db/l3_db.py:844 #, python-format msgid "" "Port %s has multiple fixed IPs. Must provide a specific IP when " "assigning a floating IP" msgstr "" -#: neutron/db/l3_db.py:809 +#: neutron/db/l3_db.py:873 msgid "fixed_ip_address cannot be specified without a port_id" msgstr "" -#: neutron/db/l3_db.py:849 +#: neutron/db/l3_db.py:913 #, python-format msgid "Network %s is not a valid external network" msgstr "" -#: neutron/db/l3_db.py:993 +#: neutron/db/l3_db.py:1057 #, python-format msgid "has device owner %s" msgstr "" @@ -2137,11 +2168,11 @@ msgid "" " Only admin can override." msgstr "" -#: neutron/db/l3_dvr_db.py:551 +#: neutron/db/l3_dvr_db.py:555 msgid "Unable to create the Agent Gateway Port" msgstr "" -#: neutron/db/l3_dvr_db.py:584 +#: neutron/db/l3_dvr_db.py:588 msgid "Unable to create the SNAT Interface Port" msgstr "" @@ -2793,6 +2824,10 @@ msgstr "" msgid "API for retrieving service providers for Neutron advanced services" msgstr "" +#: neutron/extensions/vlantransparent.py:27 +msgid "Backend does not support VLAN Transparency." +msgstr "" + #: neutron/ipam/subnet_alloc.py:106 #, python-format msgid "Insufficient prefix space to allocate subnet size /%s" @@ -3676,27 +3711,34 @@ msgstr "" msgid "Update router-add-interface failed in SDN-VE: %s" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:556 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:562 #: neutron/services/l3_router/l3_sdnve.py:128 msgid "No port ID" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:562 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:568 #: neutron/services/l3_router/l3_sdnve.py:134 msgid "No fixed IP" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:590 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:588 +#, python-format +msgid "" +"Update router-remove-interface failed SDN-VE: subnet %(sid) is not " +"associated with any ports on router %(rid)" +msgstr "" + +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:603 #, python-format msgid "Update router-remove-interface failed SDN-VE: %s" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:622 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:640 #, python-format msgid "Creating floating ip operation failed in SDN-VE controller: %s" msgstr "" -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:650 +#: neutron/plugins/ibm/sdnve_neutron_plugin.py:668 #, python-format msgid "Update floating ip failed in SDN-VE: %s" msgstr "" @@ -3927,16 +3969,16 @@ msgid "" " network MTU value that differs from the default segment_mtu value." msgstr "" -#: neutron/plugins/ml2/managers.py:89 +#: neutron/plugins/ml2/managers.py:90 msgid "network_type required" msgstr "" -#: neutron/plugins/ml2/managers.py:192 neutron/plugins/ml2/managers.py:201 +#: neutron/plugins/ml2/managers.py:193 neutron/plugins/ml2/managers.py:202 #, python-format msgid "network_type value '%s' not supported" msgstr "" -#: neutron/plugins/ml2/plugin.py:219 +#: neutron/plugins/ml2/plugin.py:226 msgid "binding:profile value too large" msgstr "" @@ -3945,10 +3987,6 @@ msgstr "" msgid "%(method)s failed." msgstr "" -#: neutron/plugins/ml2/common/exceptions.py:28 -msgid "Backend does not support VLAN Transparency." -msgstr "" - #: neutron/plugins/ml2/drivers/type_flat.py:33 msgid "" "List of physical_network names with which flat networks can be created. " @@ -4568,23 +4606,23 @@ msgid "" "error: %(error)s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1559 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1653 msgid "" "DVR deployments for VXLAN/GRE underlays require L2-pop to be enabled, in " "both the Agent and Server side." msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1577 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1671 #, python-format msgid "Parsing bridge_mappings failed: %s." msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1598 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1693 #, python-format msgid "Invalid tunnel type specified: %s" msgstr "" -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1601 +#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1696 msgid "Tunneling cannot be enabled without a valid local_ip." msgstr "" @@ -4648,15 +4686,26 @@ msgstr "" #: neutron/plugins/openvswitch/common/config.py:78 msgid "" +"Enable suppression of ARP responses that don't match an IP address that " +"belongs to the port from which they originate. Note: This prevents the " +"VMs attached to this agent from spoofing, it doesn't protect them from " +"other devices which have the capability to spoof (e.g. bare metal or VMs " +"attached to agents without this flag set to True). Spoofing rules will " +"not be added to any ports that have port security disabled. This requires" +" a version of OVS that supports matching ARP headers." +msgstr "" + +#: neutron/plugins/openvswitch/common/config.py:89 +msgid "" "Set or un-set the don't fragment (DF) bit on outgoing IP packet carrying " "GRE/VXLAN tunnel." msgstr "" -#: neutron/plugins/openvswitch/common/config.py:81 +#: neutron/plugins/openvswitch/common/config.py:92 msgid "Make the l2 agent run in DVR mode." msgstr "" -#: neutron/plugins/openvswitch/common/config.py:83 +#: neutron/plugins/openvswitch/common/config.py:94 msgid "" "Set new timeout in seconds for new rpc calls after agent receives " "SIGTERM. If value is set to 0, rpc timeout won't be changed" @@ -4978,19 +5027,8 @@ msgstr "" msgid "Keepalived didn't respawn" msgstr "" -#: neutron/tests/unit/test_api_v2_resource.py:157 -#: neutron/tests/unit/test_api_v2_resource.py:202 -msgid "Unmapped error" -msgstr "" - -#: neutron/tests/unit/test_api_v2_resource.py:261 -msgid "" -"The server has either erred or is incapable of performing the requested " -"operation." -msgstr "" - -#: neutron/tests/unit/test_iptables_manager.py:842 -#: neutron/tests/unit/test_iptables_manager.py:876 +#: neutron/tests/unit/agent/linux/test_iptables_manager.py:842 +#: neutron/tests/unit/agent/linux/test_iptables_manager.py:876 #, python-format msgid "" "IPTablesManager.apply failed to apply the following set of iptables " @@ -4998,31 +5036,42 @@ msgid "" "%s" msgstr "" -#: neutron/tests/unit/ml2/test_ml2_plugin.py:309 +#: neutron/tests/unit/api/v2/test_resource.py:157 +#: neutron/tests/unit/api/v2/test_resource.py:202 +msgid "Unmapped error" +msgstr "" + +#: neutron/tests/unit/api/v2/test_resource.py:261 +msgid "" +"The server has either erred or is incapable of performing the requested " +"operation." +msgstr "" + +#: neutron/tests/unit/plugins/ml2/test_plugin.py:310 #, python-format msgid "Deleting port %s" msgstr "" -#: neutron/tests/unit/ml2/test_ml2_plugin.py:310 +#: neutron/tests/unit/plugins/ml2/test_plugin.py:311 #, python-format msgid "The port '%s' was deleted" msgstr "" -#: neutron/tests/unit/ml2/drivers/mechanism_logger.py:33 +#: neutron/tests/unit/plugins/ml2/drivers/mechanism_logger.py:33 #, python-format msgid "" "%(method)s called with network settings %(current)s (original settings " "%(original)s) and network segments %(segments)s" msgstr "" -#: neutron/tests/unit/ml2/drivers/mechanism_logger.py:60 +#: neutron/tests/unit/plugins/ml2/drivers/mechanism_logger.py:60 #, python-format msgid "" "%(method)s called with subnet settings %(current)s (original settings " "%(original)s)" msgstr "" -#: neutron/tests/unit/ml2/drivers/mechanism_logger.py:86 +#: neutron/tests/unit/plugins/ml2/drivers/mechanism_logger.py:86 #, python-format msgid "" "%(method)s called with port settings %(current)s (original settings " @@ -5031,12 +5080,12 @@ msgid "" "%(segments_to_bind)s" msgstr "" -#: neutron/tests/unit/ml2/extensions/test_extension.py:54 +#: neutron/tests/unit/plugins/ml2/extensions/fake_extension.py:54 msgid "Adds test attributes to core resources." msgstr "" -#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:955 -#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:972 +#: neutron/tests/unit/plugins/openvswitch/agent/test_ovs_neutron_agent.py:961 +#: neutron/tests/unit/plugins/openvswitch/agent/test_ovs_neutron_agent.py:978 #, python-format msgid "Failed to set-up %(type)s tunnel port to %(ip)s" msgstr "" diff --git a/neutron/locale/pt_BR/LC_MESSAGES/neutron-log-info.po b/neutron/locale/pt_BR/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index 321c8452d31..00000000000 --- a/neutron/locale/pt_BR/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,943 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/" -"neutron/language/pt_BR/)\n" -"Language: pt_BR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "Serviço %s é suportado pelo plugin núcleo" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "Carregando Plug-in: %s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" -"Inserindo política: %(new_policy)s no lugar de política deprecada: " -"%(old_policy)s" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "Serviço Neutron iniciado, escutando em %(host)s:%(port)s" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "Exceção de HTTP lançada: %s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s retornado com HTTP %(status)d" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s retornou uma falha: %(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "Extensão de grupo de segurança desativada." - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "Preparando filtros para dispositivos %s" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "Regra do grupo de segurança atualizada %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "Membro do grupo de segurança atualizado %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "Regra do provedor atualizada" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "Remover filtro de dispositivo para %r" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "Atualizar regras de firewall" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "Nenhuma porta aqui para atualizar firewall" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "Agente DHCP iniciado" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "Sincronizando estado" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "agent_updated por lado do servidor %s!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "Agente L3 iniciado" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "O dispositivo %s já existe" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "Tentou atualizar o filtro de porta que não foi filtrado %s" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "Tentou remover o filtro de porta que não foi filtrado %r" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "Inicializando o Extension Manager." - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "Extensão carregada: %s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "" -"Permitir que a classificação seja ativada porque a paginação nativa requer " -"classificação nativa" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "Limpeza de OVS concluída com êxito" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "Agente inicializado com êxito; em execução agora... " - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "Criação de log ativada!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "Arquivo de colagem configurado: %s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"A validação para CIDR: %(new_cidr)s falhou - se sobrepõe com a sub-rede " -"%(subnet_id)s (CIDR: %(cidr)s)" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "Localizado endereço IP inválido no pool: %(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "Endereços IP especificado não correspondem à versão do IP da sub-rede" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "IP inicial (%(start)s) é maior que IP final (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "Localizado pool maior que a sub-rede CIDR:%(start)s - %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "Localizados intervalos de sobreposição: %(l_range)s e %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "Ignorando a porta %s porque nenhum IP está configurado nela" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Backdoor de Eventlet escutando na porta %(port)s pelo processo %(pid)d" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "Ignorando tarefa periódica %(task)s porque seu intervalo é negativo" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "Ignorando tarefa periódica %(task)s porque ela está desativada" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "%s capturadas, saindo" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "Processo pai saiu inesperadamente, saindo" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "Filho capturado %s, terminando" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "Bifurcação muito rápida, suspendendo" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "Filho %d iniciado" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "Iniciando %d trabalhadores" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "%(pid)d filho eliminado pelo sinal %(sig)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "Filho %(pid)s encerrando com status %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "%s capturado, parando filhos" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "Aguardando em %d filhos para sair" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "alocada VLAN (%d) do pool" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "Nenhum %s Plug-in carregado" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s: %(function_name)s com args %(args)s ignorado" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "" -"A iteração do loop excedeu o intervalo (%(polling_interval)s vs. " -"%(elapsed)s)!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "agent_id de RPC: %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "Porta %(device)s atualizada. Detalhes: %(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "Dispositivo %s não definido no plug-in" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "Anexo %s removido" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "Porta %s atualizada." - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "Daemon RPC do Agente LinuxBridge Iniciado!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "Agente fora de sincronização com o plug-in!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "Mapeamentos da interface: %s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" -"Adicionado segmento %(id)s de tipo %(network_type)s para a rede " -"%(network_id)s" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "Configurado nomes para o driver de tipo: %s" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "Carregados nomes do driver de tipo: %s" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "Tipos registrados: %s" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "Tipos de network_types: %s" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "inicializando driver para o tipo '%s'" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "Configurados nomes para o driver de mecanismo: %s" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "Carregados nomes do driver de mecanismo: %s" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "Registrados drivers de mecanismo : %s" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "Inicializando driver de mecanismo '%s'" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "Inicialização de plug-in L2 modular concluída" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "Nomes arbitrários de rede flat physical_network permitidos" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "Nomes permitidos de rede flat physical_network : %s" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "Inicialização do ML2 FlatTypeDriver concluída" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "Inicialização do ML2 LocalTypeDriver concluída" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "%(type)s faixas de ID: %(range)s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "Intervalos de VLAN de rede: %s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "Inicialização do VlanTypeDriver concluída" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "Nome da rede alterado para %s" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "Designando %(vlan_id)s como vlan local para net-id=%(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "Recuperando vlan = %(vlan_id)s a partir de net-id = %(net_uuid)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "Adicionando %s na lista de pontes." - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "Mapeamento de rede física %(physical_network)s para a ponte %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "Porta auxiliar %s adicionada" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "Túnel do agente fora de sincronização com o plug-in!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "Provedor padrão não foi especificado para o tipo de serviço %s" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "Carregando driver de medição %s" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" diff --git a/neutron/locale/zh_CN/LC_MESSAGES/neutron-log-info.po b/neutron/locale/zh_CN/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index 0b950ac7dc2..00000000000 --- a/neutron/locale/zh_CN/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,936 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -# 汪军 , 2015 -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/neutron/" -"language/zh_CN/)\n" -"Language: zh_CN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "加载核心插件: %s" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "服务%s由核心插件支持" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "正在装入插件:%s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "在被废弃的策略:%(old_policy)s位置上插入策略:%(new_policy)s " - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "Neutron服务启动,正在%(host)s:%(port)s上监听" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "HTTP 异常抛出:%s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s 随HTTP %(status)d返回" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s 返回了故障:%(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "已禁用安全组扩展。" - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "正在为设备 %s 准备过滤器" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "已更新安全组规则 %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "已更新安全组成员 %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "已更新提供程序规则" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "请为 %r 除去设备过滤器" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "请刷新防火墙规则" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "已启动 DHCP 代理" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "正在使状态同步" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "同步状态完成" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "服务器端 %s 已更新代理!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "已启动 L3 代理" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "路由器%(router_id)s 转换为%(state)s" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "进程运行uid/gid: %(uid)s/%(gid)s" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "设备 %s 已存在" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "已尝试更新未过滤的端口过滤器 %s" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "已尝试除去未过滤的端口过滤器 %r" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "正在初始化扩展管理员。" - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "加载的扩展:%s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "已启用允许排序,因为本机分页需要本机排序" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "%(action)s 失败 (客户端错误): %(exc)s" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "正在删除端口: %s" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "OVS 清除已成功完成" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "代理已成功初始化,现在正在运行..." - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "已启用日志记录!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "%(prog)s 版本 %(version)s" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "配置粘贴文件:%s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "IPv6在本系统上未使能。" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "在主机 %(host)s上添加网络%(net)s到代理%(agent)%s" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"针对 CIDR %(new_cidr)s 的验证失败 - 与子网 %(subnet_id)s(CIDR 为 %(cidr)s)" -"重叠" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "在池中找到无效 IP 地址:%(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "指定的 IP 地址与子网 IP 版本不匹配" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "起始 IP (%(start)s) 大于结束 IP (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "找到超过子网 CIDR (%(start)s - %(end)s) 的池" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "找到重叠范围:%(l_range)s 和 %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "正在跳过端口 %s,因为没有在该端口上配置任何 IP" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "SNAT 已经绑定到服务节点。" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "表 %(old_t)r 已经更名为 %(new_t)r" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "Eventlet为进程 %(pid)d 在后台监听 %(port)s " - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "正在跳过周期性任务 %(task)s,因为其时间间隔为负" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "正在跳过周期性任务 %(task)s,因为它已禁用" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "捕获到 %s,正在退出" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "父进程已意外终止,正在退出" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "子代捕获 %s,正在退出" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "派生速度太快,正在休眠" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "已启动子代 %d" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "正在启动 %d 工作程序" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "信号 %(sig)d 已终止子代 %(pid)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "子代 %(pid)s 已退出,状态为 %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "捕获到 %s,正在停止子代" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "线程结束,正在清理" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "正在等待 %d 个子代退出" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "已从池分配 vlan (%d)" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "未装入任何 %s 插件" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s:已忽略具有自变量 %(args)s 的 %(function_name)s" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "SDN-VE 控制器 IP 地址: %s" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "循环迭代超过时间间隔(%(polling_interval)s 对 %(elapsed)s)!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "RPC agent_id:%s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "端口 %(device)s 已更新。详细信息:%(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "未在插件上定义设备 %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "已除去附件 %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "端口 %s 已更新。" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "LinuxBridge 代理 RPC 守护程序已启动!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "代理与插件不同步!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "接口映射:%s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "增添segment%(id)s种类%(network_type)s在网络%(network_id)s" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "配置类型驱动名字: %s" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "已加载驱动程序: %s" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "已注册类型: %s" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "项目网络类型: %s" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "为类型 '%s'初始化驱动" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "配置装置驱动名称: %s" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "已加载的装置驱动名称: %s" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "初始化扩展驱动 '%s'" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "L2插件模块初始化完成" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "端口 %s 被同时删除" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "子网 %s 同时被删除 " - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "允许平面物理网络使用任意名字" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "可以使用的平面物理网络名字: %s" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "完成ML2 FlatTypeDriver的初始化" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "完成L2插件模块初始化" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "%(type)s ID 范围: %(range)s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "网络 VLAN 范围:%s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "Vlan类型驱动初始化完成" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "网络名改变为 %s" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "端口名改变为 %s" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "APIC 服务代理启动中 ..." - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "APIC 服务代理已启动" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "APIC 主机代理: 代理正启动在 %s" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "APIC 主机代理: 已启动在 %s" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "正在初始化CRD客户端 ..." - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "对于网络标识 %(net_uuid)s,正在将 %(vlan_id)s 分配为本地 vlan" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "正在从网络标识 %(net_uuid)s 恢复 vlan %(vlan_id)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "正在将物理网络 %(physical_network)s 映射至网桥 %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "设备 %s 的配置已完成。" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "代理隧道与插件不同步!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "物理设备映射:%s" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "正在加载接口驱动 %s" diff --git a/neutron/locale/zh_TW/LC_MESSAGES/neutron-log-info.po b/neutron/locale/zh_TW/LC_MESSAGES/neutron-log-info.po deleted file mode 100644 index a42231de67d..00000000000 --- a/neutron/locale/zh_TW/LC_MESSAGES/neutron-log-info.po +++ /dev/null @@ -1,934 +0,0 @@ -# Translations template for neutron. -# Copyright (C) 2015 ORGANIZATION -# This file is distributed under the same license as the neutron project. -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: Neutron\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2015-04-03 06:13+0000\n" -"PO-Revision-Date: 2015-03-31 22:26+0000\n" -"Last-Translator: openstackjenkins \n" -"Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/neutron/" -"language/zh_TW/)\n" -"Language: zh_TW\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 1.3\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: neutron/manager.py:115 -#, python-format -msgid "Loading core plugin: %s" -msgstr "" - -#: neutron/manager.py:155 -#, python-format -msgid "Service %s is supported by the core plugin" -msgstr "" - -#: neutron/manager.py:173 -#, python-format -msgid "Loading Plugin: %s" -msgstr "正在載入外掛程式:%s" - -#: neutron/policy.py:114 -#, python-format -msgid "" -"Inserting policy:%(new_policy)s in place of deprecated policy:%(old_policy)s" -msgstr "" - -#: neutron/quota.py:215 -msgid "" -"ConfDriver is used as quota_driver because the loaded plugin does not " -"support 'quotas' table." -msgstr "" - -#: neutron/quota.py:220 -#, python-format -msgid "Loaded quota_driver: %s." -msgstr "" - -#: neutron/service.py:178 -#, python-format -msgid "Neutron service started, listening on %(host)s:%(port)s" -msgstr "" - -#: neutron/wsgi.py:779 -#, python-format -msgid "%(method)s %(url)s" -msgstr "%(method)s %(url)s" - -#: neutron/wsgi.py:796 -#, python-format -msgid "HTTP exception thrown: %s" -msgstr "已擲出 HTTP 異常狀況:%s" - -#: neutron/wsgi.py:812 -#, python-format -msgid "%(url)s returned with HTTP %(status)d" -msgstr "%(url)s 傳回了 HTTP %(status)d" - -#: neutron/wsgi.py:815 -#, python-format -msgid "%(url)s returned a fault: %(exception)s" -msgstr "%(url)s 傳回了錯誤:%(exception)s" - -#: neutron/agent/securitygroups_rpc.py:82 -msgid "Disabled security-group extension." -msgstr "已停用安全群組延伸。" - -#: neutron/agent/securitygroups_rpc.py:84 -msgid "Disabled allowed-address-pairs extension." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:214 -#, python-format -msgid "" -"Skipping method %s as firewall is disabled or configured as " -"NoopFirewallDriver." -msgstr "" - -#: neutron/agent/securitygroups_rpc.py:226 -#, python-format -msgid "Preparing filters for devices %s" -msgstr "正在準備裝置 %s 的過濾器" - -#: neutron/agent/securitygroups_rpc.py:256 -#, python-format -msgid "Security group rule updated %r" -msgstr "安全群組規則已更新 %r" - -#: neutron/agent/securitygroups_rpc.py:263 -#, python-format -msgid "Security group member updated %r" -msgstr "安全群組成員已更新 %r" - -#: neutron/agent/securitygroups_rpc.py:285 -msgid "Provider rule updated" -msgstr "已更新提供者規則" - -#: neutron/agent/securitygroups_rpc.py:297 -#, python-format -msgid "Remove device filter for %r" -msgstr "移除 %r 的裝置過濾器" - -#: neutron/agent/securitygroups_rpc.py:307 -msgid "Refresh firewall rules" -msgstr "重新整理防火牆規則" - -#: neutron/agent/securitygroups_rpc.py:311 -msgid "No ports here to refresh firewall" -msgstr "" - -#: neutron/agent/common/ovs_lib.py:393 -#, python-format -msgid "Port %(port_id)s not present in bridge %(br_name)s" -msgstr "" - -#: neutron/agent/dhcp/agent.py:93 neutron/agent/dhcp/agent.py:589 -msgid "DHCP agent started" -msgstr "已啟動 DHCP 代理程式" - -#: neutron/agent/dhcp/agent.py:144 -msgid "Synchronizing state" -msgstr "正在同步化狀態" - -#: neutron/agent/dhcp/agent.py:165 -msgid "Synchronizing state complete" -msgstr "" - -#: neutron/agent/dhcp/agent.py:586 neutron/agent/l3/agent.py:622 -#: neutron/services/metering/agents/metering_agent.py:286 -#, python-format -msgid "agent_updated by server side %s!" -msgstr "agent_updated 是由伺服器端 %s 執行!" - -#: neutron/agent/l3/agent.py:551 -msgid "L3 agent started" -msgstr "已啟動 L3 代理程式" - -#: neutron/agent/l3/ha.py:114 -#, python-format -msgid "Router %(router_id)s transitioned to %(state)s" -msgstr "" - -#: neutron/agent/l3/ha.py:124 -#, python-format -msgid "" -"Router %s is not managed by this agent. It was possibly deleted concurrently." -msgstr "" - -#: neutron/agent/linux/daemon.py:102 -#, python-format -msgid "Process runs with uid/gid: %(uid)s/%(gid)s" -msgstr "" - -#: neutron/agent/linux/dhcp.py:656 -#, python-format -msgid "" -"Cannot apply dhcp option %(opt)s because it's ip_version %(version)d is not " -"in port's address IP versions" -msgstr "" - -#: neutron/agent/linux/interface.py:268 neutron/agent/linux/interface.py:319 -#: neutron/agent/linux/interface.py:377 neutron/agent/linux/interface.py:420 -#, python-format -msgid "Device %s already exists" -msgstr "裝置 %s 已存在" - -#: neutron/agent/linux/iptables_firewall.py:114 -#, python-format -msgid "Attempted to update port filter which is not filtered %s" -msgstr "已嘗試更新未過濾的埠過濾器 %s" - -#: neutron/agent/linux/iptables_firewall.py:125 -#, python-format -msgid "Attempted to remove port filter which is not filtered %r" -msgstr "已嘗試移除未過濾的埠過濾器 %r" - -#: neutron/api/extensions.py:404 -msgid "Initializing extension manager." -msgstr "正在起始設定延伸管理程式。" - -#: neutron/api/extensions.py:562 -#, python-format -msgid "Loaded extension: %s" -msgstr "已載入延伸:%s" - -#: neutron/api/v2/base.py:93 -msgid "" -"Allow sorting is enabled because native pagination requires native sorting" -msgstr "已啟用容許排序,因為原生分頁需要原生排序" - -#: neutron/api/v2/resource.py:94 -#, python-format -msgid "%(action)s failed (client error): %(exc)s" -msgstr "" - -#: neutron/callbacks/manager.py:135 -#, python-format -msgid "Notify callbacks for %(resource)s, %(event)s" -msgstr "" - -#: neutron/callbacks/manager.py:142 -#, python-format -msgid "Calling callback %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:73 -#, python-format -msgid "Deleting port: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:103 -#, python-format -msgid "Cleaning bridge: %s" -msgstr "" - -#: neutron/cmd/ovs_cleanup.py:110 -msgid "OVS cleanup completed successfully" -msgstr "已順利完成 OVS 清理" - -#: neutron/cmd/eventlet/plugins/hyperv_neutron_agent.py:43 -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:261 -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1017 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1634 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:345 -msgid "Agent initialized successfully, now running... " -msgstr "已順利地起始設定代理程式,現正在執行中..." - -#: neutron/common/config.py:204 -msgid "Logging enabled!" -msgstr "已啟用記載!" - -#: neutron/common/config.py:205 -#, python-format -msgid "%(prog)s version %(version)s" -msgstr "" - -#: neutron/common/config.py:224 -#, python-format -msgid "Config paste file: %s" -msgstr "配置貼上檔案:%s" - -#: neutron/common/ipv6_utils.py:63 -msgid "IPv6 is not enabled on this system." -msgstr "" - -#: neutron/db/agentschedulers_db.py:161 -msgid "" -"Skipping periodic DHCP agent status check because automatic network " -"rescheduling is disabled." -msgstr "" - -#: neutron/db/agentschedulers_db.py:196 -#, python-format -msgid "Scheduling unhosted network %s" -msgstr "" - -#: neutron/db/agentschedulers_db.py:203 -#, python-format -msgid "" -"Failed to schedule network %s, no eligible agents or it might be already " -"scheduled by another server" -msgstr "" - -#: neutron/db/agentschedulers_db.py:211 -#, python-format -msgid "Adding network %(net)s to agent %(agent)%s on host %(host)s" -msgstr "" - -#: neutron/db/db_base_plugin_v2.py:630 -#, python-format -msgid "" -"Validation for CIDR: %(new_cidr)s failed - overlaps with subnet " -"%(subnet_id)s (CIDR: %(cidr)s)" -msgstr "" -"驗證 CIDR %(new_cidr)s 失敗 - 與子網路 %(subnet_id)s (CIDR %(cidr)s) 重疊" - -#: neutron/db/db_base_plugin_v2.py:657 -#, python-format -msgid "Found invalid IP address in pool: %(start)s - %(end)s:" -msgstr "在儲存區中發現無效的 IP 位址:%(start)s - %(end)s:" - -#: neutron/db/db_base_plugin_v2.py:664 -msgid "Specified IP addresses do not match the subnet IP version" -msgstr "指定的 IP 位址與子網路 IP 版本不符" - -#: neutron/db/db_base_plugin_v2.py:668 -#, python-format -msgid "Start IP (%(start)s) is greater than end IP (%(end)s)" -msgstr "起始 IP (%(start)s) 大於結尾 IP (%(end)s)" - -#: neutron/db/db_base_plugin_v2.py:673 -#, python-format -msgid "Found pool larger than subnet CIDR:%(start)s - %(end)s" -msgstr "找到的儲存區大於子網路 CIDR:%(start)s - %(end)s" - -#: neutron/db/db_base_plugin_v2.py:697 -#, python-format -msgid "Found overlapping ranges: %(l_range)s and %(r_range)s" -msgstr "發現重疊的範圍:%(l_range)s 及 %(r_range)s" - -#: neutron/db/db_base_plugin_v2.py:1507 -#, python-format -msgid "Found IP allocation %(alloc)s on subnet %(subnet)s, cannot delete" -msgstr "" - -#: neutron/db/l3_agentschedulers_db.py:78 -msgid "" -"Skipping period L3 agent status check because automatic router rescheduling " -"is disabled." -msgstr "" - -#: neutron/db/l3_db.py:1114 -#, python-format -msgid "Skipping port %s as no IP is configure on it" -msgstr "正在跳過埠 %s,因為其上沒有配置 IP" - -#: neutron/db/l3_dvr_db.py:86 -#, python-format -msgid "Centralizing distributed router %s is not supported" -msgstr "" - -#: neutron/db/l3_dvr_db.py:535 -#, python-format -msgid "Agent Gateway port does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvr_db.py:619 -#, python-format -msgid "SNAT interface port list does not exist, so create one: %s" -msgstr "" - -#: neutron/db/l3_dvrscheduler_db.py:312 -msgid "SNAT already bound to a service node." -msgstr "" - -#: neutron/db/l3_hamode_db.py:188 -#, python-format -msgid "" -"Attempt %(count)s to allocate a VRID in the network %(network)s for the " -"router %(router)s" -msgstr "" - -#: neutron/db/l3_hamode_db.py:271 -#, python-format -msgid "" -"Number of available agents lower than max_l3_agents_per_router. L3 agents " -"available: %s" -msgstr "" - -#: neutron/db/migration/alembic_migrations/heal_script.py:221 -#, python-format -msgid "Table %(old_t)r was renamed to %(new_t)r" -msgstr "" - -#: neutron/debug/commands.py:107 -#, python-format -msgid "%d probe(s) deleted" -msgstr "" - -#: neutron/notifiers/nova.py:266 -#, python-format -msgid "Nova event response: %s" -msgstr "" - -#: neutron/openstack/common/eventlet_backdoor.py:146 -#, python-format -msgid "Eventlet backdoor listening on %(port)s for process %(pid)d" -msgstr "" - -#: neutron/openstack/common/periodic_task.py:120 -#, python-format -msgid "Skipping periodic task %(task)s because its interval is negative" -msgstr "正在跳過定期作業 %(task)s,因為其間隔為負數" - -#: neutron/openstack/common/periodic_task.py:125 -#, python-format -msgid "Skipping periodic task %(task)s because it is disabled" -msgstr "正在跳過定期作業 %(task)s,因為它已停用" - -#: neutron/openstack/common/service.py:173 -#, python-format -msgid "Caught %s, exiting" -msgstr "已捕捉到 %s,正在結束" - -#: neutron/openstack/common/service.py:231 -msgid "Parent process has died unexpectedly, exiting" -msgstr "母程序已非預期地當掉,正在結束" - -#: neutron/openstack/common/service.py:262 -#, python-format -msgid "Child caught %s, exiting" -msgstr "" - -#: neutron/openstack/common/service.py:301 -msgid "Forking too fast, sleeping" -msgstr "分岔太快,正在休眠" - -#: neutron/openstack/common/service.py:320 -#, python-format -msgid "Started child %d" -msgstr "已開始子行程 %d" - -#: neutron/openstack/common/service.py:330 -#, python-format -msgid "Starting %d workers" -msgstr "正在啟動 %d 個工作程式" - -#: neutron/openstack/common/service.py:347 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "信號 %(sig)d 結束了子項 %(pid)d" - -#: neutron/openstack/common/service.py:351 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "子項 %(pid)s 已結束,狀態為 %(code)d" - -#: neutron/openstack/common/service.py:390 -#, python-format -msgid "Caught %s, stopping children" -msgstr "已捕捉到 %s,正在停止子項" - -#: neutron/openstack/common/service.py:399 -msgid "Wait called after thread killed. Cleaning up." -msgstr "" - -#: neutron/openstack/common/service.py:415 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "正在等待 %d 個子項結束" - -#: neutron/plugins/brocade/NeutronPlugin.py:307 -#, python-format -msgid "Allocated vlan (%d) from the pool" -msgstr "已從儲存區配置 VLAN (%d)" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:117 -#, python-format -msgid "No %s Plugin loaded" -msgstr "未載入 %s 外掛程式" - -#: neutron/plugins/cisco/models/virt_phy_sw_v2.py:118 -#, python-format -msgid "%(plugin_key)s: %(function_name)s with args %(args)s ignored" -msgstr "%(plugin_key)s:已忽略帶有引數 %(args)s 的 %(function_name)s" - -#: neutron/plugins/embrane/common/utils.py:44 -msgid "No ip allocation set" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:77 -#, python-format -msgid "The IP addr of available SDN-VE controllers: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:80 -#, python-format -msgid "The SDN-VE controller IP address: %s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:236 -msgid "Bad resource for forming a list request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:246 -msgid "Bad resource for forming a show request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:256 -msgid "Bad resource for forming a create request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:268 -msgid "Bad resource for forming a update request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:279 -msgid "Bad resource for forming a delete request" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api.py:307 -#, python-format -msgid "Non matching tenant and network types: %(ttype)s %(ntype)s" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:32 -msgid "Fake SDNVE controller initialized" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:35 -msgid "Fake SDNVE controller: list" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:39 -msgid "Fake SDNVE controller: show" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:43 -msgid "Fake SDNVE controller: create" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:47 -msgid "Fake SDNVE controller: update" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:51 -msgid "Fake SDNVE controller: delete" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:55 -msgid "Fake SDNVE controller: get tenant by id" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:59 -msgid "Fake SDNVE controller: check and create tenant" -msgstr "" - -#: neutron/plugins/ibm/sdnve_api_fake.py:63 -msgid "Fake SDNVE controller: get controller" -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:147 -msgid "Set a new controller if needed." -msgstr "" - -#: neutron/plugins/ibm/sdnve_neutron_plugin.py:153 -#, python-format -msgid "Set the controller to a new controller: %s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:189 -#, python-format -msgid "" -"Mapping physical network %(physical_network)s to interface %(interface)s" -msgstr "" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:220 -#, python-format -msgid "" -"Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!" -msgstr "迴圈反覆運算已超出間隔(%(polling_interval)s 與 %(elapsed)s)!" - -#: neutron/plugins/ibm/agent/sdnve_neutron_agent.py:234 -#, python-format -msgid "Controller IPs: %s" -msgstr "" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:793 -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:89 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:99 -#, python-format -msgid "RPC agent_id: %s" -msgstr "RPC agent_id:%s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:863 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:209 -#, python-format -msgid "Port %(device)s updated. Details: %(details)s" -msgstr "已更新埠 %(device)s。詳細資料:%(details)s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:896 -#, python-format -msgid "Device %s not defined on plugin" -msgstr "外掛程式上未定義裝置 %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:903 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1227 -#, python-format -msgid "Attachment %s removed" -msgstr "已移除連接裝置 %s" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:915 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1239 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:235 -#, python-format -msgid "Port %s updated." -msgstr "已更新埠 %s。" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:968 -msgid "LinuxBridge Agent RPC Daemon Started!" -msgstr "已啟動「LinuxBridge 代理程式 RPC 常駐程式」!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:978 -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1429 -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:251 -msgid "Agent out of sync with plugin!" -msgstr "代理程式與外掛程式不同步!" - -#: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:1012 -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:43 -#, python-format -msgid "Interface mappings: %s" -msgstr "介面對映:%s" - -#: neutron/plugins/ml2/db.py:60 -#, python-format -msgid "" -"Added segment %(id)s of type %(network_type)s for network %(network_id)s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:43 -#, python-format -msgid "Configured type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:48 -#, python-format -msgid "Loaded type driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:64 -#, python-format -msgid "Registered types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:75 -#, python-format -msgid "Tenant network_types: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:161 -#, python-format -msgid "Initializing driver for type '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:270 -#, python-format -msgid "Configured mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:276 -#, python-format -msgid "Loaded mechanism driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:288 -#, python-format -msgid "Registered mechanism drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:293 -#, python-format -msgid "Initializing mechanism driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:699 -#, python-format -msgid "Configured extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:705 -#, python-format -msgid "Loaded extension driver names: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:716 -#, python-format -msgid "Registered extension drivers: %s" -msgstr "" - -#: neutron/plugins/ml2/managers.py:722 -#, python-format -msgid "Initializing extension driver '%s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:730 -#, python-format -msgid "Got %(alias)s extension from driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:779 -#, python-format -msgid "Extended network dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:786 -#, python-format -msgid "Extended subnet dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/managers.py:793 -#, python-format -msgid "Extended port dict for driver '%(drv)s'" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:144 -msgid "Modular L2 Plugin initialization complete" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:281 -#, python-format -msgid "Attempt %(count)s to bind port %(port)s" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:678 -#, python-format -msgid "Port %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:689 -#, python-format -msgid "Subnet %s was deleted concurrently" -msgstr "" - -#: neutron/plugins/ml2/plugin.py:1329 -#, python-format -msgid "" -"Binding info for port %s was not found, it might have been deleted already." -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:72 -msgid "Arbitrary flat physical_network names allowed" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:78 -#, python-format -msgid "Allowable flat physical_network names: %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_flat.py:85 -msgid "ML2 FlatTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_local.py:37 -msgid "ML2 LocalTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_tunnel.py:116 -#, python-format -msgid "%(type)s ID ranges: %(range)s" -msgstr "" - -#: neutron/plugins/ml2/drivers/type_vlan.py:99 -#, python-format -msgid "Network VLAN ranges: %s" -msgstr "網路 VLAN 範圍:%s" - -#: neutron/plugins/ml2/drivers/type_vlan.py:166 -msgid "VlanTypeDriver initialization complete" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:104 -#, python-format -msgid "Network %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:117 -#, python-format -msgid "Network name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:147 -#, python-format -msgid "Network %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:243 -#, python-format -msgid "VM %s is not created as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:257 -#, python-format -msgid "Port name changed to %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/arista/mechanism_arista.py:310 -#, python-format -msgid "VM %s is not updated as it is not found in Arista DB" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:78 -msgid "APIC service agent starting ..." -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:95 -msgid "APIC service agent started" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:179 -#, python-format -msgid "APIC host agent: agent starting on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/cisco/apic/apic_topology.py:199 -#, python-format -msgid "APIC host agent: started on %s" -msgstr "" - -#: neutron/plugins/ml2/drivers/freescale/mechanism_fslsdn.py:40 -msgid "Initializing CRD client... " -msgstr "" - -#: neutron/plugins/ml2/drivers/mlnx/agent/eswitch_neutron_agent.py:54 -msgid "Agent initialised successfully, now running... " -msgstr "" - -#: neutron/plugins/ml2/extensions/port_security.py:33 -msgid "PortSecurityExtensionDriver initialization complete" -msgstr "" - -#: neutron/plugins/oneconvergence/agent/nvsd_neutron_agent.py:153 -msgid "NVSD Agent initialized successfully, now running... " -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_dvr_neutron_agent.py:204 -#, python-format -msgid "L2 Agent operating in DVR Mode with MAC %s" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:518 -#, python-format -msgid "Assigning %(vlan_id)s as local vlan for net-id=%(net_uuid)s" -msgstr "正在將 %(vlan_id)s 指派為 net-id = %(net_uuid)s 的本端 VLAN" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:619 -#, python-format -msgid "Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s" -msgstr "正在從 net-id = %(net_uuid)s 收回 VLAN = %(vlan_id)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:714 -#, python-format -msgid "port_unbound(): net_uuid %s not in local_vlan_map" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:783 -#, python-format -msgid "Adding %s to list of bridges." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:926 -#, python-format -msgid "Mapping physical network %(physical_network)s to bridge %(bridge)s" -msgstr "正在將實體網路 %(physical_network)s 對映到橋接器 %(bridge)s" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1035 -#, python-format -msgid "Port '%(port_name)s' has lost its vlan tag '%(vlan_tag)d'!" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1149 -#, python-format -msgid "" -"Port %s was not found on the integration bridge and will therefore not be " -"processed" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1179 -#, python-format -msgid "Configuration for device %s completed." -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1198 -#, python-format -msgid "Ancillary Port %s added" -msgstr "" - -#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1457 -msgid "Agent tunnel out of sync with plugin!" -msgstr "代理程式通道與外掛程式不同步!" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:191 -#, python-format -msgid "No device with MAC %s defined on agent." -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:216 -#, python-format -msgid "Device with MAC %s not defined on plugin" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:223 -#, python-format -msgid "Removing device with mac_address %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:244 -msgid "SRIOV NIC Agent RPC Daemon Started!" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:333 -#, python-format -msgid "Physical Devices mappings: %s" -msgstr "" - -#: neutron/plugins/sriovnicagent/sriov_nic_agent.py:334 -#, python-format -msgid "Exclude Devices: %s" -msgstr "" - -#: neutron/scheduler/dhcp_agent_scheduler.py:110 -#, python-format -msgid "Agent %s already present" -msgstr "" - -#: neutron/server/__init__.py:50 -msgid "RPC was already started in parent process by plugin." -msgstr "" - -#: neutron/services/service_base.py:99 -#, python-format -msgid "Default provider is not specified for service type %s" -msgstr "" - -#: neutron/services/l3_router/l3_arista.py:247 -msgid "Syncing Neutron Router DB <-> EOS" -msgstr "" - -#: neutron/services/metering/agents/metering_agent.py:96 -#, python-format -msgid "Loading Metering driver %s" -msgstr "" - -#: neutron/services/metering/drivers/iptables/iptables_driver.py:89 -#, python-format -msgid "Loading interface driver %s" -msgstr "" From b339391bcb223c0f03d30f36dea47d13adb12c71 Mon Sep 17 00:00:00 2001 From: mathieu-rohon Date: Sat, 7 Mar 2015 13:30:49 +0100 Subject: [PATCH 09/16] ML2: Change port status only when it's bound to the host Currently, nothing prevents the port status to be changed to BUILD state when get_device_details() is sent by a host that doesn't own the port. In some cases the port might stay in BUILD state. This could happen during a live-migration, or for multi-hosted ports such as HA ports. This commit allows the port status modification only if the port is bound to the host that is asking for it. Closes-Bug: #1439857 Closes-Bug: #1438040 Closes-Bug: #1416933 Change-Id: I9b3673f453abbafaaa4f78542fcfebe8dc93f2bb (cherry picked from commit 9b53b82ce7dad551ebc0f02ff667d5345fb7e139) --- neutron/plugins/ml2/rpc.py | 15 ++++++++------- neutron/tests/unit/plugins/ml2/test_rpc.py | 22 ++++++++++++++++++++-- 2 files changed, 28 insertions(+), 9 deletions(-) diff --git a/neutron/plugins/ml2/rpc.py b/neutron/plugins/ml2/rpc.py index af4b6747e5a..1764cdf367a 100644 --- a/neutron/plugins/ml2/rpc.py +++ b/neutron/plugins/ml2/rpc.py @@ -96,13 +96,14 @@ class RpcCallbacks(type_tunnel.TunnelRpcCallbackMixin): 'vif_type': port[portbindings.VIF_TYPE]}) return {'device': device} - new_status = (q_const.PORT_STATUS_BUILD if port['admin_state_up'] - else q_const.PORT_STATUS_DOWN) - if port['status'] != new_status: - plugin.update_port_status(rpc_context, - port_id, - new_status, - host) + if (not host or host == port_context.host): + new_status = (q_const.PORT_STATUS_BUILD if port['admin_state_up'] + else q_const.PORT_STATUS_DOWN) + if port['status'] != new_status: + plugin.update_port_status(rpc_context, + port_id, + new_status, + host) entry = {'device': device, 'network_id': port['network_id'], diff --git a/neutron/tests/unit/plugins/ml2/test_rpc.py b/neutron/tests/unit/plugins/ml2/test_rpc.py index facc9f9b56a..56cbdbcb979 100644 --- a/neutron/tests/unit/plugins/ml2/test_rpc.py +++ b/neutron/tests/unit/plugins/ml2/test_rpc.py @@ -88,6 +88,7 @@ class RpcCallbacksTestCase(base.BaseTestCase): def test_get_device_details_port_status_equal_new_status(self): port = collections.defaultdict(lambda: 'fake') self.plugin.get_bound_port_context().current = port + self.plugin.port_bound_to_host = mock.MagicMock(return_value=True) for admin_state_up in (True, False): new_status = (constants.PORT_STATUS_BUILD if admin_state_up else constants.PORT_STATUS_DOWN) @@ -98,8 +99,7 @@ class RpcCallbacksTestCase(base.BaseTestCase): port['admin_state_up'] = admin_state_up port['status'] = status self.plugin.update_port_status.reset_mock() - self.callbacks.get_device_details('fake_context', - host='fake_host') + self.callbacks.get_device_details('fake_context') self.assertEqual(status == new_status, not self.plugin.update_port_status.called) @@ -113,6 +113,24 @@ class RpcCallbacksTestCase(base.BaseTestCase): cached_networks=cached_networks) self.assertTrue('fake_port' in cached_networks) + def test_get_device_details_wrong_host(self): + port = collections.defaultdict(lambda: 'fake') + port_context = self.plugin.get_bound_port_context() + port_context.current = port + port_context.host = 'fake' + self.plugin.update_port_status.reset_mock() + self.callbacks.get_device_details('fake_context', + host='fake_host') + self.assertFalse(self.plugin.update_port_status.called) + + def test_get_device_details_port_no_host(self): + port = collections.defaultdict(lambda: 'fake') + port_context = self.plugin.get_bound_port_context() + port_context.current = port + self.plugin.update_port_status.reset_mock() + self.callbacks.get_device_details('fake_context') + self.assertTrue(self.plugin.update_port_status.called) + def test_get_devices_details_list(self): devices = [1, 2, 3, 4, 5] kwargs = {'host': 'fake_host', 'agent_id': 'fake_agent_id'} From 9bc812e92fb27b297ccfe960267dcab173aea6c9 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Thu, 23 Apr 2015 02:15:06 +0000 Subject: [PATCH 10/16] Updated from global requirements Change-Id: I514c65fac38ef0e534e7401a5f3643b1906adea7 --- requirements.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements.txt b/requirements.txt index 47172ff25a9..de23f381f59 100644 --- a/requirements.txt +++ b/requirements.txt @@ -12,13 +12,13 @@ httplib2>=0.7.5 requests>=2.2.0,!=2.4.0 jsonrpclib Jinja2>=2.6 # BSD License (3 clause) -keystonemiddleware>=1.5.0 +keystonemiddleware>=1.5.0,<1.6.0 netaddr>=0.7.12 -python-neutronclient>=2.3.11,<3 +python-neutronclient>=2.3.11,<2.5.0 retrying>=1.2.3,!=1.3.0 # Apache-2.0 SQLAlchemy>=0.9.7,<=0.9.99 WebOb>=1.2.3 -python-keystoneclient>=1.1.0 +python-keystoneclient>=1.1.0,<1.4.0 alembic>=0.7.2 six>=1.9.0 stevedore>=1.3.0,<1.4.0 # Apache-2.0 @@ -34,4 +34,4 @@ oslo.rootwrap>=1.6.0,<1.7.0 # Apache-2.0 oslo.serialization>=1.4.0,<1.5.0 # Apache-2.0 oslo.utils>=1.4.0,<1.5.0 # Apache-2.0 -python-novaclient>=2.22.0 +python-novaclient>=2.22.0,<2.24.0 From cbfb3e487d97998ec49d7faa751bc26202da7d0e Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Mon, 20 Apr 2015 22:26:22 -0700 Subject: [PATCH 11/16] Only update MTU in update code for MTU The ML2 create_network_db was re-passing in the entire network with extensions like vlan_transparency present that was causing issues in the base update function it was calling. This corrects the behavior by having it only update the MTU, which is the only thing it was intending to update in the first place. Change-Id: I723c5c138e0830de98f6024c7635ec65065e9346 Closes-Bug: #1446784 (cherry picked from commit f85de393c469d1e649a1c1e5ee1b683246442351) --- neutron/plugins/ml2/plugin.py | 2 +- neutron/tests/unit/plugins/ml2/test_plugin.py | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/neutron/plugins/ml2/plugin.py b/neutron/plugins/ml2/plugin.py index 3f734d9e315..a1caff03576 100644 --- a/neutron/plugins/ml2/plugin.py +++ b/neutron/plugins/ml2/plugin.py @@ -598,7 +598,7 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2, if net_data.get(api.MTU, 0) > 0: res = super(Ml2Plugin, self).update_network(context, - result['id'], network) + result['id'], {'network': {api.MTU: net_data[api.MTU]}}) result[api.MTU] = res.get(api.MTU, 0) return result, mech_context diff --git a/neutron/tests/unit/plugins/ml2/test_plugin.py b/neutron/tests/unit/plugins/ml2/test_plugin.py index e9cd744064d..96817683af6 100644 --- a/neutron/tests/unit/plugins/ml2/test_plugin.py +++ b/neutron/tests/unit/plugins/ml2/test_plugin.py @@ -266,6 +266,28 @@ class TestMl2NetworksV2(test_plugin.TestNetworksV2, self.assertEqual(db_api.MAX_RETRIES + 1, f.call_count) +class TestMl2NetworksWithVlanTransparencyAndMTU(TestMl2NetworksV2): + def setUp(self, plugin=None): + config.cfg.CONF.set_override('path_mtu', 1000, group='ml2') + config.cfg.CONF.set_override('segment_mtu', 1000, group='ml2') + config.cfg.CONF.set_override('advertise_mtu', True) + config.cfg.CONF.set_override('vlan_transparent', True) + super(TestMl2NetworksWithVlanTransparencyAndMTU, self).setUp(plugin) + + def test_create_network_vlan_transparent_and_mtu(self): + data = {'network': {'name': 'net1', + mpnet.SEGMENTS: + [{pnet.NETWORK_TYPE: 'vlan', + pnet.PHYSICAL_NETWORK: 'physnet1'}], + 'tenant_id': 'tenant_one'}} + network_req = self.new_create_request('networks', data) + res = network_req.get_response(self.api) + self.assertEqual(201, res.status_int) + network = self.deserialize(self.fmt, res)['network'] + self.assertEqual(network['mtu'], 1000) + self.assertIn('vlan_transparent', network) + + class TestMl2SubnetsV2(test_plugin.TestSubnetsV2, Ml2PluginV2TestCase): pass From 0536ec113bc438265ba547bb8a8006aa96e646e3 Mon Sep 17 00:00:00 2001 From: "watanabe.isao" Date: Wed, 15 Apr 2015 15:48:08 +0900 Subject: [PATCH 12/16] Restrict subnet create/update to avoid DHCP resync As we know, IPs in subnet CIDR are used for 1) Broadcast port 2) Gateway port 3) DHCP port if enable_dhcp is True, or update to True 4) Others go into allocation_pools Above 1) to 3) are created by default, which means if CIDR doesn't have that much of IPs, subnet create/update will cause a DHCP resync. This fix is to add some restricts to the issue: A) When subnet create, if enable_dhcp is True, /31 and /32 cidrs are forbidden for IPv4 subnets while /127 and /128 cidrs are forbidden for IPv6 subnets. B) When subnet update, if enable_dhcp is changing to True and there are no more IPs in allocation_pools, the request should be denied. Change-Id: I2e4a4d5841b9ad908f02b7d0795cba07596c023d Co-authored-by: Andrew Boik Closes-Bug: #1443798 (cherry picked from commit 0c1f96ad5a6606c1205bd50ea944c3a383892cde) --- neutron/db/db_base_plugin_v2.py | 24 +++++++++ .../tests/unit/db/test_db_base_plugin_v2.py | 52 ++++++++++++++++++- 2 files changed, 74 insertions(+), 2 deletions(-) diff --git a/neutron/db/db_base_plugin_v2.py b/neutron/db/db_base_plugin_v2.py index dcf7adc6f6f..24c251340b7 100644 --- a/neutron/db/db_base_plugin_v2.py +++ b/neutron/db/db_base_plugin_v2.py @@ -1052,6 +1052,30 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2, if attributes.is_attr_set(s.get('cidr')): self._validate_ip_version(ip_ver, s['cidr'], 'cidr') + # TODO(watanabe.isao): After we found a way to avoid the re-sync + # from the agent side, this restriction could be removed. + if cur_subnet: + dhcp_was_enabled = cur_subnet.enable_dhcp + else: + dhcp_was_enabled = False + if s.get('enable_dhcp') and not dhcp_was_enabled: + subnet_prefixlen = netaddr.IPNetwork(s['cidr']).prefixlen + error_message = _("Subnet has a prefix length that is " + "incompatible with DHCP service enabled.") + if ((ip_ver == 4 and subnet_prefixlen > 30) or + (ip_ver == 6 and subnet_prefixlen > 126)): + raise n_exc.InvalidInput(error_message=error_message) + else: + # NOTE(watanabe.isao): The following restriction is necessary + # only when updating subnet. + if cur_subnet: + range_qry = context.session.query(models_v2. + IPAvailabilityRange).join(models_v2.IPAllocationPool) + ip_range = range_qry.filter_by(subnet_id=s['id']).first() + if not ip_range: + raise n_exc.IpAddressGenerationFailure( + net_id=cur_subnet.network_id) + if attributes.is_attr_set(s.get('gateway_ip')): self._validate_ip_version(ip_ver, s['gateway_ip'], 'gateway_ip') if (cfg.CONF.force_gateway_on_subnet and diff --git a/neutron/tests/unit/db/test_db_base_plugin_v2.py b/neutron/tests/unit/db/test_db_base_plugin_v2.py index e8ef97e8fdb..0804e9047d9 100644 --- a/neutron/tests/unit/db/test_db_base_plugin_v2.py +++ b/neutron/tests/unit/db/test_db_base_plugin_v2.py @@ -1339,7 +1339,7 @@ fixed_ips=ip_address%%3D%s&fixed_ips=ip_address%%3D%s&fixed_ips=subnet_id%%3D%s data['port']['fixed_ips']) def test_no_more_port_exception(self): - with self.subnet(cidr='10.0.0.0/32', gateway_ip=None) as subnet: + with self.subnet(cidr='10.0.0.0/32', enable_dhcp=False) as subnet: id = subnet['subnet']['network_id'] res = self._create_port(self.fmt, id) data = self.deserialize(self.fmt, res) @@ -3223,7 +3223,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase): self.subnet(cidr='14.129.122.5/22'), self.subnet(cidr='15.129.122.5/24'), self.subnet(cidr='16.129.122.5/28'), - self.subnet(cidr='17.129.122.5/32', gateway_ip=None) + self.subnet(cidr='17.129.122.5/32', enable_dhcp=False) ) as subs: # the API should accept and correct these for users self.assertEqual(subs[0]['subnet']['cidr'], '10.0.0.0/8') @@ -3235,6 +3235,24 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase): self.assertEqual(subs[6]['subnet']['cidr'], '16.129.122.0/28') self.assertEqual(subs[7]['subnet']['cidr'], '17.129.122.5/32') + def _test_create_subnet_with_invalid_netmask_returns_400(self, *args): + with self.network() as network: + for cidr in args: + ip_version = netaddr.IPNetwork(cidr).version + self._create_subnet(self.fmt, + network['network']['id'], + cidr, + webob.exc.HTTPClientError.code, + ip_version=ip_version) + + def test_create_subnet_with_invalid_netmask_returns_400_ipv4(self): + self._test_create_subnet_with_invalid_netmask_returns_400( + '10.0.0.0/31', '10.0.0.0/32') + + def test_create_subnet_with_invalid_netmask_returns_400_ipv6(self): + self._test_create_subnet_with_invalid_netmask_returns_400( + 'cafe:cafe::/127', 'cafe:cafe::/128') + def test_create_subnet_bad_ip_version(self): with self.network() as network: # Check bad IP version @@ -4153,6 +4171,36 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase): self.assertEqual(res.status_int, webob.exc.HTTPClientError.code) + def _test_subnet_update_enable_dhcp_no_ip_available_returns_409( + self, allocation_pools, cidr): + ip_version = netaddr.IPNetwork(cidr).version + with self.network() as network: + with self.subnet(network=network, + allocation_pools=allocation_pools, + enable_dhcp=False, + cidr=cidr, + ip_version=ip_version) as subnet: + id = subnet['subnet']['network_id'] + self._create_port(self.fmt, id) + data = {'subnet': {'enable_dhcp': True}} + req = self.new_update_request('subnets', data, + subnet['subnet']['id']) + res = req.get_response(self.api) + self.assertEqual(res.status_int, + webob.exc.HTTPConflict.code) + + def test_subnet_update_enable_dhcp_no_ip_available_returns_409_ipv4(self): + allocation_pools = [{'start': '10.0.0.2', 'end': '10.0.0.2'}] + cidr = '10.0.0.0/30' + self._test_subnet_update_enable_dhcp_no_ip_available_returns_409( + allocation_pools, cidr) + + def test_subnet_update_enable_dhcp_no_ip_available_returns_409_ipv6(self): + allocation_pools = [{'start': '2001:db8::2', 'end': '2001:db8::2'}] + cidr = '2001:db8::/126' + self._test_subnet_update_enable_dhcp_no_ip_available_returns_409( + allocation_pools, cidr) + def test_show_subnet(self): with self.network() as network: with self.subnet(network=network) as subnet: From 53b3e751f3c7b32bed48c14742d3dd3a1178d00d Mon Sep 17 00:00:00 2001 From: Maru Newby Date: Thu, 9 Apr 2015 17:00:57 +0000 Subject: [PATCH 13/16] Double functional testing timeout to 180s The increase in ovs testing is resulting in job failure due to timeouts in test_killed_monitor_respawns. Giving the test more time to complete should reduce the failure rate. Change-Id: I2ba9b1eb388bfbbebbd6b0f3edb6d5a5ae0bfead Closes-Bug: #1442272 (cherry picked from commit 81098620c298394e1a98127ceeba7f297db2d906) --- tox.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tox.ini b/tox.ini index 32cecacf8f1..6a9cc8ffb8f 100644 --- a/tox.ini +++ b/tox.ini @@ -32,7 +32,7 @@ setenv = OS_TEST_PATH=./neutron/tests/api [testenv:functional] setenv = OS_TEST_PATH=./neutron/tests/functional - OS_TEST_TIMEOUT=90 + OS_TEST_TIMEOUT=180 deps = {[testenv]deps} -r{toxinidir}/neutron/tests/functional/requirements.txt @@ -43,14 +43,14 @@ setenv = OS_TEST_PATH=./neutron/tests/functional OS_ROOTWRAP_CMD=sudo {envbindir}/neutron-rootwrap {envdir}/etc/neutron/rootwrap.conf OS_ROOTWRAP_DAEMON_CMD=sudo {envbindir}/neutron-rootwrap-daemon {envdir}/etc/neutron/rootwrap.conf OS_FAIL_ON_MISSING_DEPS=1 - OS_TEST_TIMEOUT=90 + OS_TEST_TIMEOUT=180 sitepackages=True deps = {[testenv:functional]deps} [testenv:fullstack] setenv = OS_TEST_PATH=./neutron/tests/fullstack - OS_TEST_TIMEOUT=90 + OS_TEST_TIMEOUT=180 deps = {[testenv]deps} -r{toxinidir}/neutron/tests/functional/requirements.txt @@ -61,7 +61,7 @@ setenv = OS_TEST_PATH=./neutron/tests/fullstack OS_ROOTWRAP_CMD=sudo {envbindir}/neutron-rootwrap {envdir}/etc/neutron/rootwrap.conf OS_ROOTWRAP_DAEMON_CMD=sudo {envbindir}/neutron-rootwrap-daemon {envdir}/etc/neutron/rootwrap.conf OS_FAIL_ON_MISSING_DEPS=1 - OS_TEST_TIMEOUT=90 + OS_TEST_TIMEOUT=180 sitepackages=True deps = {[testenv:functional]deps} From 38211ae67cb76ade85b08c028b6e88bfc867afc9 Mon Sep 17 00:00:00 2001 From: Ihar Hrachyshka Date: Mon, 20 Apr 2015 17:06:38 +0200 Subject: [PATCH 14/16] tests: confirm that _output_hosts_file does not log too often I3ad7864eeb2f959549ed356a1e34fa18804395cc didn't include any regression unit tests to validate that the method won't ever log too often again, reintroducing performance drop in later patches. It didn't play well with stable backports of the fix, where context was lost when doing the backport, that left the bug unfixed in stable/juno even though the patch was merged there [1]. The patch adds an explicit note in the code that suggests not to add new log messages inside the loop to avoid regression, and a unit test was added to capture it. Once the test is merged in master, it will be proposed for stable/juno inclusion, with additional changes that would fix the regression again. Related-Bug: #1414218 Change-Id: I5d43021932d6a994638c348eda277dd8337cf041 (cherry picked from commit 3b74095a935f6d2027e6bf04cc4aa21f8a1b46f2) --- neutron/agent/linux/dhcp.py | 2 ++ neutron/tests/unit/agent/linux/test_dhcp.py | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/neutron/agent/linux/dhcp.py b/neutron/agent/linux/dhcp.py index 55509cb84b2..f594b775c0f 100644 --- a/neutron/agent/linux/dhcp.py +++ b/neutron/agent/linux/dhcp.py @@ -483,6 +483,8 @@ class Dnsmasq(DhcpLocalProcess): LOG.debug('Building host file: %s', filename) dhcp_enabled_subnet_ids = [s.id for s in self.network.subnets if s.enable_dhcp] + # NOTE(ihrachyshka): the loop should not log anything inside it, to + # avoid potential performance drop when lots of hosts are dumped for (port, alloc, hostname, name) in self._iter_hosts(): if not alloc: if getattr(port, 'extra_dhcp_opts', False): diff --git a/neutron/tests/unit/agent/linux/test_dhcp.py b/neutron/tests/unit/agent/linux/test_dhcp.py index 09a91a7caa5..fca35c1bb8b 100644 --- a/neutron/tests/unit/agent/linux/test_dhcp.py +++ b/neutron/tests/unit/agent/linux/test_dhcp.py @@ -1403,6 +1403,16 @@ class TestDnsmasq(TestBase): 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb'], sorted(result)) + def test__output_hosts_file_log_only_twice(self): + dm = self._get_dnsmasq(FakeDualStackNetworkSingleDHCP()) + with mock.patch.object(dhcp.LOG, 'process') as process: + process.return_value = ('fake_message', {}) + dm._output_hosts_file() + # The method logs twice, at the start of and the end. There should be + # no other logs, no matter how many hosts there are to dump in the + # file. + self.assertEqual(2, process.call_count) + def test_only_populates_dhcp_enabled_subnets(self): exp_host_name = '/dhcp/eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee/host' exp_host_data = ('00:00:80:aa:bb:cc,host-192-168-0-2.openstacklocal,' From d37e566dcadf8a540eb5f84b668847fa192393a1 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Fri, 24 Apr 2015 00:35:31 -0700 Subject: [PATCH 15/16] Don't resync on DHCP agent setup failure There are various cases where the DHCP agent will try to create a DHCP port for a network and there will be a failure. This has primarily been caused by a lack of available IP addresses in the allocation pool. Trying to fix all availability corner cases on the server side will be very difficult due to race conditions between multiple ports being created, the dhcp_agents_per_network parameter, etc. This patch just stops the resync attempt on the agent side if a failure is caused by an IP address generation problem. Future updates to the subnet will cause another attempt so if the tenant does fix the issue they will get DHCP service. Change-Id: I0896730126d6dca13fe9284b4d812cfb081b6218 Closes-Bug: #1447883 (cherry picked from commit db9ac7e0110a0c2ef1b65213317ee8b7f1053ddc) --- neutron/agent/dhcp/agent.py | 7 ++++++- neutron/tests/unit/agent/dhcp/test_agent.py | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/neutron/agent/dhcp/agent.py b/neutron/agent/dhcp/agent.py index 214bfdff14d..c11c1f24ee5 100644 --- a/neutron/agent/dhcp/agent.py +++ b/neutron/agent/dhcp/agent.py @@ -120,7 +120,12 @@ class DhcpAgent(manager.Manager): 'still exist.'), {'net_id': network.id, 'action': action}) except Exception as e: - self.schedule_resync(e, network.id) + if getattr(e, 'exc_type', '') != 'IpAddressGenerationFailure': + # Don't resync if port could not be created because of an IP + # allocation failure. When the subnet is updated with a new + # allocation pool or a port is deleted to free up an IP, this + # will automatically be retried on the notification + self.schedule_resync(e, network.id) if (isinstance(e, oslo_messaging.RemoteError) and e.exc_type == 'NetworkNotFound' or isinstance(e, exceptions.NetworkNotFound)): diff --git a/neutron/tests/unit/agent/dhcp/test_agent.py b/neutron/tests/unit/agent/dhcp/test_agent.py index c618658f7c5..5aca05ffca4 100644 --- a/neutron/tests/unit/agent/dhcp/test_agent.py +++ b/neutron/tests/unit/agent/dhcp/test_agent.py @@ -300,6 +300,11 @@ class TestDhcpAgent(base.BaseTestCase): self.assertEqual(log.call_count, 1) self.assertEqual(expected_sync, schedule_resync.called) + def test_call_driver_ip_address_generation_failure(self): + error = oslo_messaging.RemoteError( + exc_type='IpAddressGenerationFailure') + self._test_call_driver_failure(exc=error, expected_sync=False) + def test_call_driver_failure(self): self._test_call_driver_failure() From 7260e0e3fc2ea479e80e0962624aca7fd38a1f60 Mon Sep 17 00:00:00 2001 From: Henry Gessau Date: Mon, 27 Apr 2015 09:59:21 -0400 Subject: [PATCH 16/16] Run radvd as root During the refactoring of external process management radvd lost its root privileges. Closes-bug: 1448813 Change-Id: I84883fe81684afafac9b024282a03f447c8f825a (cherry picked from commit a5e54338770fc074e01fa88dbf909ee1af1b66b2) --- neutron/agent/linux/ra.py | 3 ++- neutron/tests/unit/agent/l3/test_agent.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/neutron/agent/linux/ra.py b/neutron/agent/linux/ra.py index 7f800c26961..d9eca8d6475 100644 --- a/neutron/agent/linux/ra.py +++ b/neutron/agent/linux/ra.py @@ -103,7 +103,8 @@ class DaemonMonitor(object): default_cmd_callback=callback, namespace=self._router_ns, service=RADVD_SERVICE_NAME, - conf=cfg.CONF) + conf=cfg.CONF, + run_as_root=True) def _spawn_radvd(self, radvd_conf): def callback(pid_file): diff --git a/neutron/tests/unit/agent/l3/test_agent.py b/neutron/tests/unit/agent/l3/test_agent.py index 4c6682bd8aa..a5016f815f9 100644 --- a/neutron/tests/unit/agent/l3/test_agent.py +++ b/neutron/tests/unit/agent/l3/test_agent.py @@ -1399,7 +1399,8 @@ class TestBasicRouterOperations(BasicRouterOperationsFramework): service=process, default_cmd_callback=mock.ANY, namespace=ri.ns_name, - conf=mock.ANY)] + conf=mock.ANY, + run_as_root=True)] def _process_router_ipv6_subnet_added( self, router, ipv6_subnet_modes=None):