]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Imported Translations from Transifex
authorOpenStack Jenkins <jenkins@openstack.org>
Mon, 23 Dec 2013 06:38:32 +0000 (06:38 +0000)
committerOpenStack Jenkins <jenkins@openstack.org>
Mon, 23 Dec 2013 06:38:32 +0000 (06:38 +0000)
Change-Id: I160bcb7cdc0acc2da2ced5980cae935c5850d700

60 files changed:
neutron/locale/ar/LC_MESSAGES/neutron.po
neutron/locale/bg_BG/LC_MESSAGES/neutron.po
neutron/locale/bn_IN/LC_MESSAGES/neutron.po
neutron/locale/bs/LC_MESSAGES/neutron.po
neutron/locale/ca/LC_MESSAGES/neutron.po
neutron/locale/cs/LC_MESSAGES/neutron.po
neutron/locale/da/LC_MESSAGES/neutron.po
neutron/locale/de/LC_MESSAGES/neutron.po
neutron/locale/en_AU/LC_MESSAGES/neutron.po
neutron/locale/en_GB/LC_MESSAGES/neutron.po
neutron/locale/en_US/LC_MESSAGES/neutron.po
neutron/locale/es/LC_MESSAGES/neutron.po
neutron/locale/es_MX/LC_MESSAGES/neutron.po
neutron/locale/eu/LC_MESSAGES/neutron.po
neutron/locale/eu_ES/LC_MESSAGES/neutron.po
neutron/locale/fa/LC_MESSAGES/neutron.po
neutron/locale/fi_FI/LC_MESSAGES/neutron.po
neutron/locale/fil/LC_MESSAGES/neutron.po
neutron/locale/fr/LC_MESSAGES/neutron.po
neutron/locale/gl/LC_MESSAGES/neutron.po
neutron/locale/hi/LC_MESSAGES/neutron.po
neutron/locale/hr/LC_MESSAGES/neutron.po
neutron/locale/hu/LC_MESSAGES/neutron.po
neutron/locale/id/LC_MESSAGES/neutron.po
neutron/locale/is_IS/LC_MESSAGES/neutron.po
neutron/locale/it/LC_MESSAGES/neutron.po
neutron/locale/it_IT/LC_MESSAGES/neutron.po
neutron/locale/ja/LC_MESSAGES/neutron.po
neutron/locale/ka_GE/LC_MESSAGES/neutron.po
neutron/locale/km/LC_MESSAGES/neutron.po
neutron/locale/kn/LC_MESSAGES/neutron.po
neutron/locale/ko/LC_MESSAGES/neutron.po
neutron/locale/ko_KR/LC_MESSAGES/neutron.po
neutron/locale/ml_IN/LC_MESSAGES/neutron.po
neutron/locale/mr_IN/LC_MESSAGES/neutron.po
neutron/locale/ms/LC_MESSAGES/neutron.po
neutron/locale/nb/LC_MESSAGES/neutron.po
neutron/locale/ne/LC_MESSAGES/neutron.po
neutron/locale/neutron.pot
neutron/locale/nl_NL/LC_MESSAGES/neutron.po
neutron/locale/pa_IN/LC_MESSAGES/neutron.po
neutron/locale/pl_PL/LC_MESSAGES/neutron.po
neutron/locale/pt/LC_MESSAGES/neutron.po
neutron/locale/pt_BR/LC_MESSAGES/neutron.po
neutron/locale/ro/LC_MESSAGES/neutron.po
neutron/locale/ru/LC_MESSAGES/neutron.po
neutron/locale/ru_RU/LC_MESSAGES/neutron.po
neutron/locale/sk/LC_MESSAGES/neutron.po
neutron/locale/sl_SI/LC_MESSAGES/neutron.po
neutron/locale/sv/LC_MESSAGES/neutron.po
neutron/locale/sw_KE/LC_MESSAGES/neutron.po
neutron/locale/tl/LC_MESSAGES/neutron.po
neutron/locale/tl_PH/LC_MESSAGES/neutron.po
neutron/locale/tr_TR/LC_MESSAGES/neutron.po
neutron/locale/uk/LC_MESSAGES/neutron.po
neutron/locale/ur/LC_MESSAGES/neutron.po
neutron/locale/vi_VN/LC_MESSAGES/neutron.po
neutron/locale/zh_CN/LC_MESSAGES/neutron.po
neutron/locale/zh_HK/LC_MESSAGES/neutron.po
neutron/locale/zh_TW/LC_MESSAGES/neutron.po

index a0d67584d4cbb99e0d21d60249f9a82a7c46f986..097197ae53e80a2241e77bb384eb1fdc81503c29 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-09-12 23:31+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Arabic "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13184,3 +13240,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 428099ef5c1bfbb0d1aa213a15948615cfefd759..98aa3cb35f9522f1a8405e1904fea96cc7bb00d9 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bulgarian (Bulgaria) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index af4e39ba2e17e35359b3015cf8e4c8577808b4f6..7728e702b20e946445b8aebe5669fd0cea3ff9fd 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-10-20 01:34+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Bengali (India) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13114,3 +13170,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 3ea445230ac9d23b9f7fa5b066f8d251124abc1b..49b8572d36950e9609db9ec78b2f12bf01a46365 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bosnian "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 678aae688b1bf95605fbe3b7268786fa5ff44b97..9a18a8f08426f8b8a7bbcdee9c352318b4612e31 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Catalan "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 635689f32b74e32c673eb7a9a45ccff20653026e..a407dbef6ab56dc015291543723902eb93d11a24 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Czech "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 4feeae2d755b9667710e9c0b2130d40d0cc4b699..8af64c8f93dabd1f5240b370ec89cee2338f4a47 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-16 09:23+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Danish "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index d683398bacf6a66cabd30c55e094a489f810a486..2f72ddf6a70d86de2f1d92313f8be8cec782ef54 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-22 08:17+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: German "
@@ -905,7 +905,7 @@ msgstr "PID-Datei %s ist bereits vorhanden. Dämon bereits aktiv?"
 msgid "Location to store DHCP server config files"
 msgstr "Position zum Speichern von Konfigurationsdateien des DHCP-Servers"
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr "Für das Erstellen von Hostnamen zu verwendende Domäne"
 
@@ -1270,6 +1270,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr "Von Nova-Metadatenserver verwendeter TCP-Port."
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 "Geheimer Schlüssel für gemeinsame Nutzung zum Unterzeichnen von Instanz-"
@@ -1548,152 +1549,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr "'%(data)s' befindet sich nicht in %(valid_values)s"
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr "'%s' ist keine gültige Zeichenfolge"
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr "'%(data)s' überschreitet die Höchstlänge von %(max_len)s"
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, fuzzy, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr "'%s' ist keine gültige Eingabe"
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr "'%s' ist keine Ganzzahl"
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr "'%s' ist keine gültige MAC-Adresse"
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr "'%s' ist keine gültige IP-Adresse"
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr "Ungültiges Datenformat für IP-Pool: '%s'"
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr "Ungültiges Datenformat für statische IP: '%s'"
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr "Doppelte IP-Adresse '%s'"
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr "Ungültiges Datenformat für Namensserver: '%s'"
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr "'%s' ist kein gültiger Namensserver"
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr "Doppelter Namensserver '%s'"
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr "Ungültiges Datenformat für Hostroute: '%s'"
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr "Doppelte Hostroute '%s'"
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr "'%s' ist kein gültiges IP-Teilnetz"
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr "'%s' ist keine Liste"
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr "Doppelte Elemente in der Liste: '%s'"
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr "'%s' ist keine gültige Eingabe"
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr "'%s' ist keine gültige UUID"
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr "Der Validator '%s' ist nicht vorhanden."
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr "%s ist kein Verzeichnis"
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr "'%s' sollte nicht negativ sein"
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr "'%s' kann nicht in boolesche Zahl umgewandelt werden"
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr "'%s' ist keine Ganzzahl"
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr "'%s' ist nicht in der Form <key>=[value]"
@@ -2748,7 +2754,7 @@ msgstr ""
 "bestimmten IP-Adresse bei Zuweisung einer dynamischen IP-Adresse "
 "erforderlich"
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr "'fixed_ip_address' kann nicht ohne 'port_id' angegeben werden"
 
@@ -3094,7 +3100,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6506,7 +6512,7 @@ msgstr ""
 "fehlgeschlagen, Fehler: %(ret_val)s "
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr "vSwitch nicht gefunden: %s"
@@ -6524,7 +6530,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7479,17 +7485,17 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr "Aufruf von 'MidonetPluginV2.update_router': id=%(id)s router=%(router)r"
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr "Aufruf von 'MidonetPluginV2.delete_router': id=%s"
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
@@ -7498,25 +7504,25 @@ msgstr ""
 "Aufruf von 'MidonetPluginV2.add_router_interface': "
 "router_id=%(router_id)s interface_info=%(interface_info)r"
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
@@ -7525,12 +7531,12 @@ msgstr ""
 "Aufruf von 'MidonetPluginV2.update_floatingip': id=%(id)s "
 "floatingip=%(floatingip)s "
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr "MidonetPluginV2.update_floating_ip wird beendet: fip=%s"
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
@@ -7539,22 +7545,22 @@ msgstr ""
 "Aufruf von 'MidonetPluginV2.create_security_group': "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr "Aufruf von 'MidonetPluginV2.delete_security_group': id=%s"
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
@@ -7563,12 +7569,12 @@ msgstr ""
 "Aufruf von 'MidonetPluginV2.create_security_group_rule': "
 "security_group_rule=%(security_group_rule)r"
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7753,101 +7759,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr "Netz %s für Agent nicht verwendet."
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9388,7 +9394,7 @@ msgstr ""
 "Router: %(router_id)s, abgeschlossen. NVP-Port-ID ist %(nvp_port_id)s"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
@@ -9396,7 +9402,7 @@ msgstr ""
 "gefunden"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr "Logischer Router kann auf der NVP-Plattform nicht aktualisiert werden"
 
@@ -9587,7 +9593,7 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
@@ -9596,7 +9602,7 @@ msgstr ""
 "'Add_router_interface' für Teilnetz: %(subnet_id)s und Router: "
 "%(router_id)s abgeschlossen"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
@@ -9605,13 +9611,13 @@ msgstr ""
 "Fehler beim Entfernen von NAT-Regeln auf der NVP-Plattform für dynamische"
 " IP-Adresse: %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 "Eine falsche Anzahl an übereinstimmenden NAT-Regeln wurde auf der NVP-"
 "Plattform gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
@@ -9621,26 +9627,26 @@ msgstr ""
 " IP-Adresse: %(floating_ip)s, zugeordnet zu interner IP-Adresse: "
 "%(internal_ip)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr "Port '%s' ist keinen dynamischen IP-Adressen zugeordnet"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
@@ -9648,12 +9654,12 @@ msgstr ""
 "Gateway-Service kann von der NVP-Plattform nicht entfernt werden - die "
 "Ressource wurde nicht gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9935,12 +9941,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr "Die Anforderung hat das zulässige Zeitlimit überschritten."
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10883,97 +10889,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr "Das Metadatenzugriffsnetz ist inaktiviert"
@@ -11064,7 +11120,7 @@ msgstr "Port ist 'lqueue' nicht zugeordnet"
 msgid "'%s' must be a non negative integer."
 msgstr "'%s' muss eine nicht negative Ganzzahl sein."
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -14289,3 +14345,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 32786839850c48297a296aa5944df84b0fc3ce11..b4d53d123dc1be45ea07ad3888e92fce8dad0791 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (Australia) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index f06099050330d877703a3854f9d875c860060036..e86e85fe9402f4226105e42ea09489c53fc83b89 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (United Kingdom) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index aefea942677a81462b6c4f1e897130852bf4203e..0b4e3e040ec972092f751119c2d1d2ed81165ba7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (United States) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 8bfa7bc040e2bb1f254e5e67ac70d2893a353fb2..2ee19c1a8fcf21a643ee523a9d20c8e07d3b9a50 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Spanish "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index cf7419f3072f2a47e912c588868f6e4c82c022ab..2269df8e8bdf0a3d045f194a324286de72683c21 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-08-29 05:16+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Spanish (Mexico) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13531,3 +13587,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 1c65bf3c1420d78af9918d0517d40cd8356e34ae..41a45663dbd01e44a4d4a0ac70fb33cdd921be9f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-15 00:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Basque "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 5b99cfb0c68d5d654c6f6755e7f012132a85e6ae..15a2cebac8da5b928597445d420cf1bed4663fb7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Basque (Spain) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index adfca2aa18f9b6c923507449ab522c7ca9e27d70..dc33c5bc0bf449c27271c1ccf354afc960118a48 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-15 02:28+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Persian "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 4a36f30bf43648bd6a98f91bb75ff191ac57e63c..c2aa657e5350fa7a75fa9be9ce011a37d82146ee 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Finnish (Finland) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index dac0d3408e8d9d32cc30d5c5c7d1417d3728e894..5d879f536ec26e8c6f15fe3a9faf3d0535c621d2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-09-28 05:40+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Filipino "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13171,3 +13227,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 18a1dc412430ab4ae086a471385643b2ec38b746..fb6e90c05803611f5f0857ab4b57a1d2b5c5c141 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: French "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 613fac03813dc7bed61668b795c34468a59c63fd..62251845cd30a6836448715183b258a019b83236 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-10-28 23:23+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Galician "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13096,3 +13152,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 637aaa4fb581f9e0b53088b9fb09a54b3bc24617..735ac7b49c69efa515fb60be439854c96ff653e8 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Hindi "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13549,3 +13605,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 0f5918ea2c6d4c60cae09dbecec8a4fa9e6f0e8d..603f64bf3e3808fff2ddd6635a2d19029b8e9092 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Croatian "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index d44742ba45017a6fb652b307735991784149872f..4f71d9dfe16819f7ac5ca85835be0243cd26301c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Hungarian "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index b21866d44519db06bd02bed0997fc42af1177cf1..72041eddb4966b67453068fc299d95e2e3278ed7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Indonesian "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 6a2ab3e52c17d43403ea6da1bcd3391e8b03f0c9..69a6cbdd130e9dcc5c1015e4b59844822b982e22 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-12-16 02:36+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Icelandic (Iceland) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -12946,3 +13002,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 4f135a21e376202eed8f08b08d29711d10473e30..18597f2e767ddd9aa6410760a6c99c34fcc5d960 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-16 09:23+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Italian "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 472054800df88ff39f2b1c89890b4edf6a3cef53..878faeef2eb67ec416b4d45c86ee72bf860be50a 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Italian (Italy) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 74519c2aef049ad5c5c72eddbe1d035209c8e0dc..518fa9f564c830c6e6fe6712cbc2a9ec8fc1195a 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-30 10:28+0000\n"
 "Last-Translator: Tomoyuki KATO <tomo@dream.daynight.jp>\n"
 "Language-Team: Japanese "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index ae24111a6c52bd1283e68351d710a5a6186d16bb..d0a541f1741e43a7fde25e7ad58d1b3ccb3181fb 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-04-19 14:53+0000\n"
 "Last-Translator: Nika Chkhikvishvili <frrrredo@gmail.com>\n"
 "Language-Team: ka_GE <LL@li.org>\n"
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index f9a670c5c6e7b210afa809b5b1db5cea6241798e..b767469f6bd8640ef372fabd01cd71ecae483057 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Khmer "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 9c0bb8db3fabc68317abfa279094ee06fa0b4482..b7ece1d64c230cbb653e949153715d1e1b773fb4 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-09-18 00:19+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Kannada "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13183,3 +13239,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 61b4275858f56db32d00e15a44d700e77ec6f8e8..1bf0c79f909453f67f0448803745f9d0933aa467 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Korean "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index f1375d83edd88fd111aa6fe958ea529befcc4cad..3eb4e1cb06751e1cd44890852cc1b42a77a9e16f 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-04-28 05:13+0000\n"
 "Last-Translator: ujuc Gang <potopro@gmail.com>\n"
 "Language-Team: ko_KR <LL@li.org>\n"
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 146acef6b8d3910ebbbc644cbcba86d66ca4cba7..291ba7b55f50bbe3073a63355a927f4106dc008b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-17 05:24+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malayalam (India) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 15adcd6e1e6f5161d68d4f38111a3e9559de1c91..1fb24481d7413fa1248eb470fb605674a27dbc89 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-10-16 22:17+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Marathi (India) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13117,3 +13173,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index cc1a09c63db66fcc130a2a988bb51715fd88864b..1144058d6d1ec0fd8976ea190227b2ba1569d9e1 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Malay "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index ef6723648931480eeba27ba8db9793f30071cf1b..5d83f971cea337054d78c0fa89ccbf14756f4d57 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Norwegian Bokmål "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 617f0504a2a2e6301fec94fdc77a2bd3aded1ac9..162bf081e77e96521a72b68dc72504c58f55d641 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-09-05 06:03+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Nepali "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13435,3 +13491,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index cc1dbdb068204176c2245e2927e2acd7b8d52934..2a976ae293d3fd9a1a82c4848ad3ec0354995ee8 100644 (file)
@@ -7,9 +7,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: neutron "
-"jenkins.neutron.propose.translation.update.173\n"
+"jenkins.neutron.propose.translation.update.178\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
index c7fd78d94df040fc2e5f36ade05f2ef830e77b93..b8bc1fe34c413333197d7459136f815164eea769 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Dutch (Netherlands) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 2aaa74fa63233199cc2b42f7bce0377542251ad1..84104bc20fc35a58e4270bf69abaf2205737dede 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-12-15 04:38+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Panjabi (Punjabi) (India) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -12946,3 +13002,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 3cb7af57e034620cbf9c7b7bff4b673470d23be4..a50a5552b6c1edf79388c014f458412b6e6fc9cf 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-06-28 06:06+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Polish (Poland) "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index f342f2c64f5553d7af5ba0cd94feb95c7134b2d9..c4fc988854c7ea38f1b5f53b2708fb0cfed09baa 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Portuguese "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index da4e1aea8d90d5e562cdc248055b4d06676d939f..bd6f7503a653ee70dee1b465b2fe32a3cabd08cf 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Portuguese (Brazil) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 8480ae2b394d7198bcbd7f9a62baaa162224223e..c0585758525083078fd068c09abf817b3a3b3a9f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-06-08 07:51+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Romanian "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index a42c10e7e27e8ee7ac961b151e295a9c59e3f049..68a9371a46d7ab586156f9a6feeec9e977191463 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Russian "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index abbb4c7bb1e298ee6664a2afb2adac12795e89ef..6b8f4d4e7e53749e56469e90359e4e8a54244364 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Russian (Russia) "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index fb9cc5e1e1d8bf7329c47cd5c9ef2c2e0444a1b0..a7ffcaa70eb43a818e974ec82ee369323274a3dd 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovak "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13549,3 +13605,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 0ddf304cc2a37b6424bc1cf42ba4fc50e867d158..55ec14fd27491fb162d558b7e7a2fc5427dde9c2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-06-28 06:06+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovenian (Slovenia) "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 94aaf0a2e11ca5d0c4bd587d9baef5dc2faae9eb..6d245bc6bef2c2180f6599f68606e9e93ff6473a 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Swedish "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13072,3 +13128,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index a641b1de79d21af8b3476643d57e444c81141061..eeaa7110fd801478622240bedfc61432e3c7a1ab 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Swahili (Kenya) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index f9a3829f67f7a6a4f88970e219c7569625e7ecc3..abb2040ba6d4b0bd070463ef3c059197a6f27cf3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Tagalog "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 8f423c7737da85e831ec220b4fd2a2cdce5033fd..a4642e43fcddf02df7da2334c57bc9d058c36a17 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-09-28 05:40+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Tagalog (Philippines) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13171,3 +13227,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 1daf264b384e6d4f6819f4473717b6ecb9ebad5e..5c22763e7761b1acab4e7aff93e5fc26a4be6101 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Turkish (Turkey) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 181be1fe7bea2b6d365454bfd4314e66f993f2ee..3861dbb8cddad9d0641d5279644e2f14868668d8 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Ukrainian "
@@ -895,7 +895,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1249,6 +1249,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1507,152 +1508,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2614,7 +2620,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2944,7 +2950,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6243,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6261,7 +6267,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7190,88 +7196,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7453,101 +7459,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9051,13 +9057,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9242,62 +9248,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9575,12 +9581,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10459,97 +10465,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10632,7 +10688,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13832,3 +13888,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 01f3ea26b9581ec407d047ec79f85e7b79ae2b3a..17c7a505e6f696150452b0cab6ed8823f2c4e9c4 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-10-07 01:13+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Urdu "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13153,3 +13209,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 87be76c01c959162f091d6f280f5667223963f8d..ae84663f1c4c5e0cbe7bcb8f0fcd53e2973831ff 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Vietnamese (Viet Nam) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index 4f517ceeda1a85c4521318d3787f36f2b50054ac..3a46960a5fd503ce1688693baae953e62543f1d3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Chinese (China) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index d831ab38fbe7eb6b6116854bc3e0eb2e527a5950..c69e809d7b8336cd1e7b6cbb541b1bf47e93dfda 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Chinese (Hong Kong) "
@@ -894,7 +894,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1248,6 +1248,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
@@ -1506,152 +1507,157 @@ msgstr ""
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr ""
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr ""
@@ -2613,7 +2619,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2943,7 +2949,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6242,7 +6248,7 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr ""
@@ -6260,7 +6266,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7189,88 +7195,88 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
 "interface_info=%(interface_info)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
 "floatingip=%(floatingip)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
 "security_group=%(security_group)s default_sg=%(default_sg)s "
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
 "security_group_rule=%(security_group_rule)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7452,101 +7458,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9050,13 +9056,13 @@ msgid ""
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
@@ -9241,62 +9247,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9574,12 +9580,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10458,97 +10464,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr ""
@@ -10631,7 +10687,7 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13831,3 +13887,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+
index de036b0d623df4cc62f27ab0e54218cfc2def288..766952e902d1d2f245804d01471a6d75699627de 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2013-12-18 06:35+0000\n"
+"POT-Creation-Date: 2013-12-23 06:37+0000\n"
 "PO-Revision-Date: 2013-05-22 03:25+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Chinese (Taiwan) "
@@ -895,7 +895,7 @@ msgstr "pidfile %s 已存在。常駐程式已在執行中?"
 msgid "Location to store DHCP server config files"
 msgstr "DHCP 伺服器配置檔的儲存位置"
 
-#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:41
+#: neutron/agent/linux/dhcp.py:48 neutron/plugins/nicira/dhcp_meta/nvp.py:53
 msgid "Domain to use for building the hostnames"
 msgstr "用於建置主機名稱的網域"
 
@@ -1254,6 +1254,7 @@ msgid "TCP Port used by Nova metadata server."
 msgstr "Nova meta 資料伺服器所使用的 TCP 埠。"
 
 #: neutron/agent/metadata/agent.py:73
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
 msgid "Shared secret to sign instance-id request"
 msgstr "用於簽署 instance-id 要求的共用機密"
 
@@ -1512,152 +1513,157 @@ msgstr "驗證字典索引鍵失敗。需要的索引鍵:%(expected_keys)s 提
 msgid "'%(data)s' is not in %(valid_values)s"
 msgstr "'%(data)s' 不在 %(valid_values)s 中"
 
-#: neutron/api/v2/attributes.py:84
+#: neutron/api/v2/attributes.py:87
+#, python-format
+msgid "'%s' Blank strings are not permitted"
+msgstr ""
+
+#: neutron/api/v2/attributes.py:97
 #, python-format
 msgid "'%s' is not a valid string"
 msgstr "'%s' 不是有效字串"
 
-#: neutron/api/v2/attributes.py:89
+#: neutron/api/v2/attributes.py:102
 #, python-format
 msgid "'%(data)s' exceeds maximum length of %(max_len)s"
 msgstr "'%(data)s' 超出 %(max_len)s 的長度上限"
 
-#: neutron/api/v2/attributes.py:99
+#: neutron/api/v2/attributes.py:112
 #, fuzzy, python-format
 msgid "'%s' is not a valid boolean value"
 msgstr "'%s' 不是有效的輸入"
 
-#: neutron/api/v2/attributes.py:118 neutron/api/v2/attributes.py:418
+#: neutron/api/v2/attributes.py:131 neutron/api/v2/attributes.py:431
 #, python-format
 msgid "'%s' is not an integer"
 msgstr "'%s' 不是整數"
 
-#: neutron/api/v2/attributes.py:122
+#: neutron/api/v2/attributes.py:135
 #, python-format
 msgid "'%(data)s' is too small - must be at least '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:127
+#: neutron/api/v2/attributes.py:140
 #, python-format
 msgid "'%(data)s' is too large - must be no larger than '%(limit)d'"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:136
+#: neutron/api/v2/attributes.py:149
 #, python-format
 msgid "'%s' contains whitespace"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:146
+#: neutron/api/v2/attributes.py:159
 #, python-format
 msgid "'%s' is not a valid MAC address"
 msgstr "'%s' 不是有效的 MAC 位址"
 
-#: neutron/api/v2/attributes.py:155
+#: neutron/api/v2/attributes.py:168
 #, python-format
 msgid "'%s' is not a valid IP address"
 msgstr "'%s' 不是有效的 IP 位址"
 
-#: neutron/api/v2/attributes.py:166
+#: neutron/api/v2/attributes.py:179
 #, python-format
 msgid "Invalid data format for IP pool: '%s'"
 msgstr "IP 儲存區的資料格式無效:'%s'"
 
-#: neutron/api/v2/attributes.py:185 neutron/api/v2/attributes.py:192
+#: neutron/api/v2/attributes.py:198 neutron/api/v2/attributes.py:205
 #, python-format
 msgid "Invalid data format for fixed IP: '%s'"
 msgstr "固定 IP 的資料格式無效:'%s'"
 
-#: neutron/api/v2/attributes.py:200
+#: neutron/api/v2/attributes.py:213
 #, python-format
 msgid "Duplicate IP address '%s'"
 msgstr "重複的 IP 位址 '%s'"
 
-#: neutron/api/v2/attributes.py:216
+#: neutron/api/v2/attributes.py:229
 #, python-format
 msgid "Invalid data format for nameserver: '%s'"
 msgstr "名稱伺服器的資料格式無效:'%s'"
 
-#: neutron/api/v2/attributes.py:227
+#: neutron/api/v2/attributes.py:240
 #, python-format
 msgid "'%s' is not a valid nameserver"
 msgstr "'%s' 不是有效的名稱伺服器"
 
-#: neutron/api/v2/attributes.py:231
+#: neutron/api/v2/attributes.py:244
 #, python-format
 msgid "Duplicate nameserver '%s'"
 msgstr "重複的名稱伺服器 '%s'"
 
-#: neutron/api/v2/attributes.py:239
+#: neutron/api/v2/attributes.py:252
 #, python-format
 msgid "Invalid data format for hostroute: '%s'"
 msgstr "主機路徑的資料格式無效:'%s'"
 
-#: neutron/api/v2/attributes.py:259
+#: neutron/api/v2/attributes.py:272
 #, python-format
 msgid "Duplicate hostroute '%s'"
 msgstr "重複的主機路徑 '%s'"
 
-#: neutron/api/v2/attributes.py:276 neutron/tests/unit/test_attributes.py:434
-#: neutron/tests/unit/test_attributes.py:443
-#: neutron/tests/unit/test_attributes.py:452
+#: neutron/api/v2/attributes.py:289 neutron/tests/unit/test_attributes.py:452
 #: neutron/tests/unit/test_attributes.py:461
+#: neutron/tests/unit/test_attributes.py:470
+#: neutron/tests/unit/test_attributes.py:479
 #, python-format
 msgid "'%(data)s' isn't a recognized IP subnet cidr, '%(cidr)s' is recommended"
 msgstr ""
 
-#: neutron/api/v2/attributes.py:282
+#: neutron/api/v2/attributes.py:295
 #, python-format
 msgid "'%s' is not a valid IP subnet"
 msgstr "'%s' 不是有效的 IP 子網路"
 
-#: neutron/api/v2/attributes.py:290 neutron/api/v2/attributes.py:331
+#: neutron/api/v2/attributes.py:303 neutron/api/v2/attributes.py:344
 #, python-format
 msgid "'%s' is not a list"
 msgstr "'%s' 不是清單"
 
-#: neutron/api/v2/attributes.py:295 neutron/api/v2/attributes.py:342
+#: neutron/api/v2/attributes.py:308 neutron/api/v2/attributes.py:355
 #, python-format
 msgid "Duplicate items in the list: '%s'"
 msgstr "清單中的重複項目:'%s'"
 
-#: neutron/api/v2/attributes.py:312
+#: neutron/api/v2/attributes.py:325
 #, python-format
 msgid "'%s' is not a valid input"
 msgstr "'%s' 不是有效的輸入"
 
-#: neutron/api/v2/attributes.py:319
+#: neutron/api/v2/attributes.py:332
 #: neutron/plugins/cisco/n1kv/n1kv_neutron_plugin.py:637
 #, python-format
 msgid "'%s' is not a valid UUID"
 msgstr "'%s' 不是有效的 UUID"
 
-#: neutron/api/v2/attributes.py:362
+#: neutron/api/v2/attributes.py:375
 #, python-format
 msgid "Validator '%s' does not exist."
 msgstr "驗證器 '%s' 不存在。"
 
-#: neutron/api/v2/attributes.py:372
+#: neutron/api/v2/attributes.py:385
 #, python-format
 msgid "'%s' is not a dictionary"
 msgstr "'%s' 不是字典"
 
-#: neutron/api/v2/attributes.py:423
+#: neutron/api/v2/attributes.py:436
 #, python-format
 msgid "'%s' should be non-negative"
 msgstr "'%s' 應該為非負數"
 
-#: neutron/api/v2/attributes.py:442
+#: neutron/api/v2/attributes.py:455
 #, python-format
 msgid "'%s' cannot be converted to boolean"
 msgstr "無法將 '%s' 轉換為布林值"
 
-#: neutron/api/v2/attributes.py:450
+#: neutron/api/v2/attributes.py:463
 #: neutron/plugins/nec/extensions/packetfilter.py:48
 #, python-format
 msgid "'%s' is not a integer"
 msgstr "'%s' 不是整數"
 
-#: neutron/api/v2/attributes.py:463
+#: neutron/api/v2/attributes.py:476
 #, python-format
 msgid "'%s' is not of the form <key>=[value]"
 msgstr "'%s' 的格式不是 <key>=[value]"
@@ -2622,7 +2628,7 @@ msgid ""
 "assigning a floating IP"
 msgstr "埠 %s 具有多個固定 IP。指派浮動 IP 時必須提供特定 IP"
 
-#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1778
+#: neutron/db/l3_db.py:576 neutron/plugins/nicira/NeutronPlugin.py:1780
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr "如果未指定 port_id,則無法指定 fixed_ip_address"
 
@@ -2954,7 +2960,7 @@ msgstr ""
 
 #: neutron/extensions/extra_dhcp_opt.py:29
 #, python-format
-msgid "Invalid data format for extra-dhcp-opt, provide a list of dicts: %(data)s"
+msgid "Invalid data format for extra-dhcp-opt: %(data)s"
 msgstr ""
 
 #: neutron/extensions/extraroute.py:25
@@ -6265,7 +6271,7 @@ msgid ""
 msgstr "無法將埠 %(switch_port_name)s 從交換器 %(vswitch_name)s 刪除,發生錯誤 %(ret_val)s"
 
 #: neutron/plugins/hyperv/agent/utils.py:207
-#: neutron/plugins/hyperv/agent/utilsv2.py:95
+#: neutron/plugins/hyperv/agent/utilsv2.py:101
 #, python-format
 msgid "VSwitch not found: %s"
 msgstr "找不到 vSwitch:%s"
@@ -6283,7 +6289,7 @@ msgstr ""
 msgid "Loading class: %(module_name)s.%(class_name)s"
 msgstr ""
 
-#: neutron/plugins/hyperv/agent/utilsv2.py:118
+#: neutron/plugins/hyperv/agent/utilsv2.py:124
 #, python-format
 msgid "Port Alloc not found: %s"
 msgstr ""
@@ -7214,17 +7220,17 @@ msgstr ""
 msgid "MidonetPluginV2.update_router called: id=%(id)s router=%(router)r"
 msgstr "已呼叫 MidonetPluginV2.update_router:ID = %(id)s 路由器 = %(router)r"
 
-#: neutron/plugins/midonet/plugin.py:892
+#: neutron/plugins/midonet/plugin.py:896
 #, python-format
 msgid "MidonetPluginV2.update_router exiting: router=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:903
+#: neutron/plugins/midonet/plugin.py:907
 #, python-format
 msgid "MidonetPluginV2.delete_router called: id=%s"
 msgstr "已呼叫 MidonetPluginV2.delete_router:ID = %s"
 
-#: neutron/plugins/midonet/plugin.py:1003
+#: neutron/plugins/midonet/plugin.py:1007
 #, python-format
 msgid ""
 "MidonetPluginV2.add_router_interface called: router_id=%(router_id)s "
@@ -7233,25 +7239,25 @@ msgstr ""
 "已呼叫 MidonetPluginV2.add_router_interface:router_id = %(router_id)s "
 "interface_info = %(interface_info)r"
 
-#: neutron/plugins/midonet/plugin.py:1027
+#: neutron/plugins/midonet/plugin.py:1031
 msgid ""
 "DHCP agent is not working correctly. No port to reach the Metadata server"
 " on this network"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1036
+#: neutron/plugins/midonet/plugin.py:1040
 #, python-format
 msgid ""
 "Failed to create MidoNet resources to add router interface. "
 "info=%(info)s, router_id=%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1043
+#: neutron/plugins/midonet/plugin.py:1047
 #, python-format
 msgid "MidonetPluginV2.add_router_interface exiting: info=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1083
+#: neutron/plugins/midonet/plugin.py:1087
 #, python-format
 msgid ""
 "MidonetPluginV2.update_floatingip called: id=%(id)s "
@@ -7260,12 +7266,12 @@ msgstr ""
 "已呼叫 MidonetPluginV2.update_floatingip:ID = %(id)s floatingip = "
 "%(floatingip)s "
 
-#: neutron/plugins/midonet/plugin.py:1102
+#: neutron/plugins/midonet/plugin.py:1106
 #, python-format
 msgid "MidonetPluginV2.update_floating_ip exiting: fip=%s"
 msgstr "MidonetPluginV2.update_floating_ip 正在結束:fip = %s"
 
-#: neutron/plugins/midonet/plugin.py:1123
+#: neutron/plugins/midonet/plugin.py:1127
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group called: "
@@ -7274,22 +7280,22 @@ msgstr ""
 "已呼叫 MidonetPluginV2.create_security_group:security_group = "
 "%(security_group)s default_sg = %(default_sg)s "
 
-#: neutron/plugins/midonet/plugin.py:1152
+#: neutron/plugins/midonet/plugin.py:1156
 #, python-format
 msgid "Failed to create MidoNet resources for sg %(sg)r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1159
+#: neutron/plugins/midonet/plugin.py:1163
 #, python-format
 msgid "MidonetPluginV2.create_security_group exiting: sg=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1165
+#: neutron/plugins/midonet/plugin.py:1169
 #, python-format
 msgid "MidonetPluginV2.delete_security_group called: id=%s"
 msgstr "已呼叫 MidonetPluginV2.delete_security_group:ID = %s"
 
-#: neutron/plugins/midonet/plugin.py:1197
+#: neutron/plugins/midonet/plugin.py:1201
 #, python-format
 msgid ""
 "MidonetPluginV2.create_security_group_rule called: "
@@ -7298,12 +7304,12 @@ msgstr ""
 "已呼叫 MidonetPluginV2.create_security_group_rule:security_group_rule = "
 "%(security_group_rule)r"
 
-#: neutron/plugins/midonet/plugin.py:1207
+#: neutron/plugins/midonet/plugin.py:1211
 #, python-format
 msgid "MidonetPluginV2.create_security_group_rule exiting: rule=%r"
 msgstr ""
 
-#: neutron/plugins/midonet/plugin.py:1217
+#: neutron/plugins/midonet/plugin.py:1221
 #, python-format
 msgid "MidonetPluginV2.delete_security_group_rule called: sg_rule_id=%s"
 msgstr ""
@@ -7486,101 +7492,101 @@ msgstr ""
 msgid "Network %s has no segments"
 msgstr "代理程式上未使用網路 %s。"
 
-#: neutron/plugins/ml2/plugin.py:278
+#: neutron/plugins/ml2/plugin.py:282
 #, python-format
 msgid ""
 "In _notify_port_updated(), no bound segment for port %(port_id)s on "
 "network %(network_id)s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:320
+#: neutron/plugins/ml2/plugin.py:324
 #, python-format
 msgid "mechanism_manager.create_network_postcommit failed, deleting network '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:380
+#: neutron/plugins/ml2/plugin.py:384
 #, python-format
 msgid "Deleting network %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:390 neutron/plugins/ml2/plugin.py:510
+#: neutron/plugins/ml2/plugin.py:394 neutron/plugins/ml2/plugin.py:514
 #, python-format
 msgid "Ports to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:396 neutron/plugins/ml2/plugin.py:516
+#: neutron/plugins/ml2/plugin.py:400 neutron/plugins/ml2/plugin.py:520
 msgid "Tenant-owned ports exist"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:404
+#: neutron/plugins/ml2/plugin.py:408
 #, python-format
 msgid "Subnets to auto-delete: %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:415
+#: neutron/plugins/ml2/plugin.py:419
 #, python-format
 msgid "Deleting network record %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:423 neutron/plugins/ml2/plugin.py:529
+#: neutron/plugins/ml2/plugin.py:427 neutron/plugins/ml2/plugin.py:533
 msgid "Committing transaction"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:427
+#: neutron/plugins/ml2/plugin.py:431
 msgid "A concurrent port creation has occurred"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:437 neutron/plugins/ml2/plugin.py:536
+#: neutron/plugins/ml2/plugin.py:441 neutron/plugins/ml2/plugin.py:540
 #, python-format
 msgid "Exception auto-deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:445
+#: neutron/plugins/ml2/plugin.py:449
 #, python-format
 msgid "Exception auto-deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:455
+#: neutron/plugins/ml2/plugin.py:459
 msgid "mechanism_manager.delete_network_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:469
+#: neutron/plugins/ml2/plugin.py:473
 #, python-format
 msgid "mechanism_manager.create_subnet_postcommit failed, deleting subnet '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:499
+#: neutron/plugins/ml2/plugin.py:503
 #, python-format
 msgid "Deleting subnet %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:525
+#: neutron/plugins/ml2/plugin.py:529
 msgid "Deleting subnet record"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:546
+#: neutron/plugins/ml2/plugin.py:550
 msgid "mechanism_manager.delete_subnet_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:575
+#: neutron/plugins/ml2/plugin.py:579
 #, python-format
 msgid "mechanism_manager.create_port_postcommit failed, deleting port '%s'"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:630
+#: neutron/plugins/ml2/plugin.py:634
 #, python-format
 msgid "Deleting port %s"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:647
+#: neutron/plugins/ml2/plugin.py:651
 msgid "Calling base delete_port"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:656
+#: neutron/plugins/ml2/plugin.py:660
 msgid "mechanism_manager.delete_port_postcommit failed"
 msgstr ""
 
-#: neutron/plugins/ml2/plugin.py:665
+#: neutron/plugins/ml2/plugin.py:669
 #, python-format
 msgid "Port %(port)s updated up by agent not found"
 msgstr ""
@@ -9095,13 +9101,13 @@ msgstr ""
 "_nvp_create_ext_gw_port。NVP 埠 ID 為 %(nvp_port_id)s"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:674
-#: neutron/plugins/nicira/NeutronPlugin.py:1718
+#: neutron/plugins/nicira/NeutronPlugin.py:1720
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr "在 NVP 平台上找不到邏輯路由器資源 %s"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:678
-#: neutron/plugins/nicira/NeutronPlugin.py:1722
+#: neutron/plugins/nicira/NeutronPlugin.py:1724
 msgid "Unable to update logical routeron NVP Platform"
 msgstr "無法在 NVP 平台上更新邏輯路由器"
 
@@ -9286,62 +9292,62 @@ msgid ""
 " ERROR status"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1659
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr "已對子網路 %(subnet_id)s 及路由器 %(router_id)s 完成 Add_router_interface"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1750
+#: neutron/plugins/nicira/NeutronPlugin.py:1752
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr "在 NVP 平台上移除浮動 IP 的 NAT 規則時發生錯誤:%s。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1756
+#: neutron/plugins/nicira/NeutronPlugin.py:1758
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr "在 NVP 平台上找到的相符 NAT 規則數目不正確"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1883
+#: neutron/plugins/nicira/NeutronPlugin.py:1885
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr "在 NVP 平台上給浮動 IP %(floating_ip)s(已對映到內部 IP %(internal_ip)s)建立 NAT 規則時發生錯誤"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1889
+#: neutron/plugins/nicira/NeutronPlugin.py:1891
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1920
+#: neutron/plugins/nicira/NeutronPlugin.py:1922
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr "埠 '%s' 未與浮動 IP 產生關聯"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1923
+#: neutron/plugins/nicira/NeutronPlugin.py:1925
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1950
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1972
+#: neutron/plugins/nicira/NeutronPlugin.py:1974
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr "無法將閘道服務從 NVP 平台中移除 - 找不到資源"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2002
+#: neutron/plugins/nicira/NeutronPlugin.py:2004
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2070
+#: neutron/plugins/nicira/NeutronPlugin.py:2072
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9619,12 +9625,12 @@ msgstr ""
 msgid "The request has timed out."
 msgstr "要求已逾時。"
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:92
+#: neutron/plugins/nicira/dhcpmeta_modes.py:93
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NVP does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:95
+#: neutron/plugins/nicira/dhcpmeta_modes.py:96
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10503,97 +10509,147 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:37
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:49
 msgid "Comma separated list of additional domain name servers"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:43
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:55
 msgid "Default DHCP lease time"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:67
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:61
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:64
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:96
 #, python-format
 msgid "Unable to find Logical Service Node for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:78
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:107
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:86
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:115
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:132
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:125
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:154
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:145
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:174
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:153
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:182
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:211
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:202
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:206
+#, python-format
+msgid "Metadata port not found while attempting to delete it from network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
+#, python-format
+msgid "Unable to find Logical Services Node Port with MAC %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:288
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:225
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:309
+#, python-format
+msgid "Unable to configure metadata access for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:332
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:274
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:436
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:333
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:348
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:506
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:521
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:343
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:516
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:365
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:538
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:377
-msgid "DHCP is disabled: nothing to do"
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:550
+#, python-format
+msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:395
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:569
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:577
+#, python-format
+msgid "Network %s is external: nothing to do"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:585
+#, python-format
+msgid "Configuring metadata entry for port %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:597
+#, python-format
+msgid "Metadata for port %s configured successfully"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:601
+#, python-format
+msgid "Handle metadata access via router: %(r)s and interface %(i)s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nvp.py:618
+#, python-format
+msgid "Metadata for router %s handled successfully"
+msgstr ""
+
 #: neutron/plugins/nicira/dhcp_meta/rpc.py:117
 msgid "Metadata access network is disabled"
 msgstr "已停用 meta 資料存取網路"
@@ -10676,7 +10732,7 @@ msgstr "埠未與 lqueue 產生關聯"
 msgid "'%s' must be a non negative integer."
 msgstr "'%s' 必須為非負整數。"
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:146
+#: neutron/plugins/nicira/nsxlib/lsn.py:159
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
@@ -13882,3 +13938,12 @@ msgstr ""
 #~ msgid "A nvp lport identifier was not found for neutron port '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Invalid data format for extra-dhcp-"
+#~ "opt, provide a list of dicts: "
+#~ "%(data)s"
+#~ msgstr ""
+
+#~ msgid "DHCP is disabled: nothing to do"
+#~ msgstr ""
+