diff --git a/glance/locale/de/LC_MESSAGES/glance-log-info.po b/glance/locale/de/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..79429c8118 --- /dev/null +++ b/glance/locale/de/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: German (http://www.transifex.com/projects/p/glance/language/" +"de/)\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Lösche doppelte Zeile mit der ID %(id)s aus der Tabelle %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/de/LC_MESSAGES/glance-log-warning.po b/glance/locale/de/LC_MESSAGES/glance-log-warning.po new file mode 100644 index 0000000000..4751b4f345 --- /dev/null +++ b/glance/locale/de/LC_MESSAGES/glance-log-warning.po @@ -0,0 +1,58 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: German (http://www.transifex.com/projects/p/glance/language/" +"de/)\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: glance/openstack/common/network_utils.py:146 +msgid "tcp_keepidle not available on your system" +msgstr "" + +#: glance/openstack/common/network_utils.py:153 +msgid "tcp_keepintvl not available on your system" +msgstr "" + +#: glance/openstack/common/network_utils.py:160 +msgid "tcp_keepknt not available on your system" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:506 +#, python-format +msgid "Database server has gone away: %s" +msgstr "Datenbankserver ist nicht mehr vorhanden: %s" + +#: glance/openstack/common/db/sqlalchemy/session.py:559 +msgid "Unable to detect effective SQL mode" +msgstr "Unfähig geltenden SQL Modus zu erkennen." + +#: glance/openstack/common/db/sqlalchemy/session.py:567 +#, python-format +msgid "" +"MySQL SQL mode is '%s', consider enabling TRADITIONAL or STRICT_ALL_TABLES" +msgstr "" +"MySQL SQL Modus ist '%s', erwägen Sie TRADITIONAL oder STRICT_ALL_TABLES zu " +"aktivieren" + +#: glance/openstack/common/db/sqlalchemy/session.py:673 +#, python-format +msgid "SQL connection failed. %s attempts left." +msgstr "SQL-Verbindung fehlgeschlagen. Noch %s weitere Versuche übrig." + +#: glance/openstack/common/db/sqlalchemy/utils.py:97 +msgid "Id not in sort_keys; is sort_keys unique?" +msgstr "ID ist nicht in 'sort_keys' enthalten; ist 'sort_keys' eindeutig?" diff --git a/glance/locale/en_AU/LC_MESSAGES/glance-log-info.po b/glance/locale/en_AU/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..3f065ec9eb --- /dev/null +++ b/glance/locale/en_AU/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: English (Australia) (http://www.transifex.com/projects/p/" +"glance/language/en_AU/)\n" +"Language: en_AU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Deleting duplicated row with id: %(id)s from table: %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/en_GB/LC_MESSAGES/glance-log-info.po b/glance/locale/en_GB/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..9c0c659d71 --- /dev/null +++ b/glance/locale/en_GB/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/" +"glance/language/en_GB/)\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Deleting duplicated row with id: %(id)s from table: %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/en_US/LC_MESSAGES/glance.po b/glance/locale/en_US/LC_MESSAGES/glance.po index 06fe7cffc5..6572dff06a 100644 --- a/glance/locale/en_US/LC_MESSAGES/glance.po +++ b/glance/locale/en_US/LC_MESSAGES/glance.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Glance\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2014-03-26 06:02+0000\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" "PO-Revision-Date: 2013-04-10 10:09+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: en_US \n" @@ -17,89 +17,103 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 1.3\n" -#: glance/notifier.py:28 -msgid "" -"Notifications can be sent when images are create, updated or deleted. " -"There are three methods of sending notifications, logging (via the " -"log_file directive), rabbit (via a rabbitmq queue), qpid (via a Qpid " -"message queue), or noop (no notifications sent, the default). " -"(DEPRECATED)" +#: glance/location.py:79 +msgid "Invalid location" +msgstr "" + +#: glance/location.py:273 +msgid "Invalid locations" +msgstr "" + +#: glance/location.py:279 +#, python-format +msgid "Original locations is not empty: %s" +msgstr "" + +#: glance/location.py:342 glance/common/exception.py:345 +msgid "No image data could be found" +msgstr "No image data could be found" + +#: glance/location.py:351 +#, python-format +msgid "Get image %(id)s data failed: %(err)s." msgstr "" -#: glance/notifier.py:68 -msgid "notifier_strategy was deprecated in favor of `notification_driver`" +#: glance/location.py:356 +#, python-format +msgid "Glance tried all locations to get data for image %s but all have failed." msgstr "" -#: glance/notifier.py:229 glance/api/common.py:82 +#: glance/notifier.py:178 glance/api/common.py:86 #, python-format msgid "An error occurred during image.send notification: %(err)s" msgstr "An error occurred during image.send notification: %(err)s" -#: glance/notifier.py:239 glance/api/v1/upload_utils.py:184 -#: glance/api/v2/image_data.py:107 +#: glance/notifier.py:195 glance/api/v1/upload_utils.py:185 +#: glance/api/v2/image_data.py:111 #, python-format msgid "Image storage media is full: %s" msgstr "Image storage media is full: %s" -#: glance/notifier.py:243 glance/api/v1/upload_utils.py:193 -#: glance/api/v2/image_data.py:128 +#: glance/notifier.py:199 glance/api/v1/upload_utils.py:194 +#: glance/api/v2/image_data.py:132 #, python-format msgid "Insufficient permissions on image storage media: %s" msgstr "Insufficient permissions on image storage media: %s" -#: glance/notifier.py:248 +#: glance/notifier.py:204 #, python-format msgid "Cannot save data for image %(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:254 +#: glance/notifier.py:211 #, python-format msgid "Unable to upload duplicate image data for image%(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:261 +#: glance/notifier.py:218 #, python-format msgid "Not allowed to upload image data for image %(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:267 +#: glance/notifier.py:224 #, python-format msgid "" "Image %(image_id)s could not be found after upload. The image may have " "been deleted during the upload: %(error)s" msgstr "" -#: glance/notifier.py:274 +#: glance/notifier.py:232 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to HTTP error: " "%(error)s" msgstr "" -#: glance/notifier.py:281 +#: glance/notifier.py:239 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to internal error:" " %(error)s" msgstr "" -#: glance/schema.py:58 +#: glance/schema.py:59 #, python-format msgid "custom properties (%(props)s) conflict with base properties" msgstr "custom properties (%(props)s) conflict with base properties" -#: glance/scrubber.py:37 glance/store/__init__.py:48 +#: glance/scrubber.py:38 glance/store/__init__.py:46 msgid "" "Directory that the scrubber will use to track information about what to " "delete. Make sure this is set in glance-api.conf and glance-" "scrubber.conf." msgstr "" -#: glance/scrubber.py:42 glance/store/__init__.py:58 +#: glance/scrubber.py:43 glance/store/__init__.py:56 msgid "The amount of time in seconds to delay before performing a delete." msgstr "The amount of time in seconds to delay before performing a delete." -#: glance/scrubber.py:45 +#: glance/scrubber.py:46 msgid "" "A boolean that determines if the scrubber should clean up the files it " "uses for taking data. Only one server in your deployment should be " @@ -109,7 +123,7 @@ msgstr "" "uses for taking data. Only one server in your deployment should be " "designated the cleanup host." -#: glance/scrubber.py:50 +#: glance/scrubber.py:51 msgid "" "Items must have a modified time that is older than this value in order to" " be candidates for cleanup." @@ -117,163 +131,149 @@ msgstr "" "Items must have a modified time that is older than this value in order to" " be candidates for cleanup." -#: glance/scrubber.py:134 +#: glance/scrubber.py:135 #, python-format msgid "%s file can not be read." msgstr "" -#: glance/scrubber.py:158 +#: glance/scrubber.py:159 #, python-format msgid "%s file can not be wrote." msgstr "" -#: glance/scrubber.py:183 glance/api/v1/images.py:1022 +#: glance/scrubber.py:184 glance/api/v1/images.py:1040 #, python-format msgid "Failed to find image to delete: %(e)s" msgstr "Failed to find image to delete: %(e)s" -#: glance/scrubber.py:215 +#: glance/scrubber.py:216 #, python-format msgid "%s directory does not exist." msgstr "" -#: glance/scrubber.py:362 +#: glance/scrubber.py:363 #, python-format msgid "Starting Daemon: wakeup_time=%(wakeup_time)s threads=%(threads)s" msgstr "Starting Daemon: wakeup_time=%(wakeup_time)s threads=%(threads)s" -#: glance/scrubber.py:376 +#: glance/scrubber.py:377 msgid "Daemon Shutdown on KeyboardInterrupt" msgstr "Daemon Shutdown on KeyboardInterrupt" -#: glance/scrubber.py:380 -msgid "Running application" -msgstr "Running application" - -#: glance/scrubber.py:383 -#, python-format -msgid "Next run scheduled in %s seconds" -msgstr "Next run scheduled in %s seconds" - -#: glance/scrubber.py:388 +#: glance/scrubber.py:389 #, python-format msgid "Initializing scrubber with configuration: %s" msgstr "" -#: glance/scrubber.py:412 +#: glance/scrubber.py:413 #, python-format msgid "Can not %s scrub jobs from queue." msgstr "" -#: glance/scrubber.py:436 +#: glance/scrubber.py:437 #, python-format msgid "Scrubbing image %(id)s from %(count)d locations." msgstr "" -#: glance/scrubber.py:451 -#, python-format -msgid "Deleting URI from image %(image_id)s." -msgstr "" - -#: glance/scrubber.py:464 +#: glance/scrubber.py:465 #, python-format msgid "Failed to delete URI from image %(image_id)s" msgstr "" -#: glance/scrubber.py:476 +#: glance/scrubber.py:477 #, python-format msgid "%s file is not exists." msgstr "" -#: glance/scrubber.py:481 +#: glance/scrubber.py:482 #, python-format msgid "%s file contains conflicting cleanup timestamp." msgstr "" -#: glance/scrubber.py:500 +#: glance/scrubber.py:501 #, python-format msgid "%s file can not be created." msgstr "" -#: glance/scrubber.py:514 +#: glance/scrubber.py:516 #, python-format msgid "Getting images deleted before %s" msgstr "Getting images deleted before %s" -#: glance/api/authorization.py:118 glance/api/authorization.py:129 +#: glance/api/authorization.py:129 glance/api/authorization.py:140 #, python-format msgid "You cannot get image member for %s" msgstr "You cannot get image member for %s" -#: glance/api/authorization.py:137 +#: glance/api/authorization.py:148 #, python-format msgid "You cannot delete image member for %s" msgstr "You cannot delete image member for %s" -#: glance/api/authorization.py:146 +#: glance/api/authorization.py:157 #, python-format msgid "You cannot add image member for %s" msgstr "You cannot add image member for %s" -#: glance/api/authorization.py:155 +#: glance/api/authorization.py:166 #, python-format msgid "You cannot update image member %s" msgstr "You cannot update image member %s" -#: glance/api/authorization.py:174 +#: glance/api/authorization.py:185 #, python-format msgid "You are not permitted to create images owned by '%s'." msgstr "You are not permitted to create images owned by '%s'." -#: glance/api/authorization.py:192 +#: glance/api/authorization.py:203 msgid "You are not permitted to create image members for the image." msgstr "You are not permitted to create image members for the image." -#: glance/api/authorization.py:197 glance/api/authorization.py:380 +#: glance/api/authorization.py:208 glance/api/authorization.py:399 msgid "Public images do not have members." msgstr "Public images do not have members." -#: glance/api/authorization.py:213 +#: glance/api/authorization.py:224 #, python-format msgid "You are not permitted to modify '%(attr)s' on this %(resource)s." msgstr "" -#: glance/api/authorization.py:223 +#: glance/api/authorization.py:234 msgid "You are not permitted to modify locations for this image." msgstr "You are not permitted to modify locations for this image." -#: glance/api/authorization.py:247 +#: glance/api/authorization.py:258 #, python-format msgid "You are not permitted to modify '%s' on this image." msgstr "You are not permitted to modify '%s' on this image." -#: glance/api/authorization.py:251 +#: glance/api/authorization.py:262 msgid "You are not permitted to modify this image." msgstr "You are not permitted to modify this image." -#: glance/api/authorization.py:264 +#: glance/api/authorization.py:275 msgid "You are not permitted to modify tags on this image." msgstr "You are not permitted to modify tags on this image." -#: glance/api/authorization.py:305 +#: glance/api/authorization.py:316 msgid "You are not permitted to delete this image." msgstr "You are not permitted to delete this image." -#: glance/api/authorization.py:316 +#: glance/api/authorization.py:327 msgid "You are not permitted to upload data for this image." msgstr "You are not permitted to upload data for this image." -#: glance/api/authorization.py:350 glance/api/authorization.py:354 -#: glance/api/authorization.py:358 +#: glance/api/authorization.py:364 glance/api/authorization.py:368 +#: glance/api/authorization.py:372 msgid "You are not permitted to set status on this task." msgstr "" -#: glance/api/authorization.py:420 +#: glance/api/authorization.py:431 #, python-format msgid "You are not permitted to create this task with owner as: %s" msgstr "" -#: glance/api/common.py:44 +#: glance/api/common.py:49 #, python-format msgid "" "An error occurred reading from backend storage for image %(image_id)s: " @@ -282,7 +282,7 @@ msgstr "" "An error occurred reading from backend storage for image %(image_id)s: " "%(err)s" -#: glance/api/common.py:51 +#: glance/api/common.py:55 #, python-format msgid "" "Backend storage for image %(image_id)s disconnected after writing only " @@ -291,19 +291,24 @@ msgstr "" "Backend storage for image %(image_id)s disconnected after writing only " "%(bytes_written)d bytes" -#: glance/api/common.py:56 +#: glance/api/common.py:60 #, python-format msgid "Corrupt image download for image %(image_id)s" msgstr "Corrupt image download for image %(image_id)s" -#: glance/api/common.py:134 +#: glance/api/common.py:112 +#, python-format +msgid "Invalid value for option user_storage_quota: %(users_quota)s" +msgstr "" + +#: glance/api/common.py:157 #, python-format msgid "" "User %(user)s attempted to upload an image of unknown size that will " "exceeed the quota. %(remaining)d bytes remaining." msgstr "" -#: glance/api/common.py:143 +#: glance/api/common.py:166 #, python-format msgid "" "User %(user)s attempted to upload an image of size %(size)d that will " @@ -318,22 +323,11 @@ msgstr "The location of the policy file." msgid "The default policy to use." msgstr "The default policy to use." -#: glance/api/policy.py:83 -#, python-format -msgid "Loaded %(rule_type)spolicy rules: %(text_rules)s" -msgstr "Loaded %(rule_type)spolicy rules: %(text_rules)s" - #: glance/api/policy.py:96 msgid "Unable to find policy file" msgstr "Unable to find policy file" -#: glance/api/policy.py:106 -#, python-format -msgid "Loading policy from %s" -msgstr "Loading policy from %s" - -#: glance/api/policy.py:220 glance/quota/__init__.py:343 -#: glance/store/__init__.py:662 +#: glance/api/policy.py:220 glance/quota/__init__.py:344 #, python-format msgid "Invalid locations: %s" msgstr "" @@ -342,11 +336,6 @@ msgstr "" msgid "Initialized image cache middleware" msgstr "Initialized image cache middleware" -#: glance/api/middleware/cache.py:125 -#, python-format -msgid "Cache hit for image '%s'" -msgstr "Cache hit for image '%s'" - #: glance/api/middleware/cache.py:132 #, python-format msgid "" @@ -361,11 +350,6 @@ msgstr "" msgid "could not find %s" msgstr "could not find %s" -#: glance/api/middleware/cache.py:238 -#, python-format -msgid "Removing image %s from cache" -msgstr "Removing image %s from cache" - #: glance/api/middleware/cache.py:250 msgid "Checksum header is missing." msgstr "Checksum header is missing." @@ -413,58 +397,27 @@ msgstr "" msgid "Determining version of request: %(method)s %(path)s Accept: %(accept)s" msgstr "Determining version of request: %(method)s %(path)s Accept: %(accept)s" -#: glance/api/middleware/version_negotiation.py:53 -msgid "Using media-type versioning" -msgstr "Using media-type versioning" - -#: glance/api/middleware/version_negotiation.py:57 -msgid "Using url versioning" -msgstr "Using url versioning" - -#: glance/api/middleware/version_negotiation.py:64 -msgid "Unknown version. Returning version choices." -msgstr "Unknown version. Returning version choices." - -#: glance/api/middleware/version_negotiation.py:69 -#, python-format -msgid "Matched version: v%d" -msgstr "Matched version: v%d" - -#: glance/api/v1/controller.py:41 glance/api/v1/members.py:76 -#, python-format -msgid "Image with identifier %s not found" -msgstr "Image with identifier %s not found" - -#: glance/api/v1/controller.py:46 -msgid "Forbidden image access" -msgstr "Forbidden image access" - -#: glance/api/v1/controller.py:59 -#, python-format -msgid "Image %s is not active" -msgstr "Image %s is not active" - #: glance/api/v1/controller.py:81 #, python-format msgid "Store for image_id not found: %s" msgstr "Store for image_id not found: %s" -#: glance/api/v1/images.py:73 +#: glance/api/v1/images.py:76 #, python-format msgid "Invalid disk format '%s' for image." msgstr "" -#: glance/api/v1/images.py:78 +#: glance/api/v1/images.py:81 #, python-format msgid "Invalid container format '%s' for image." msgstr "" -#: glance/api/v1/images.py:83 +#: glance/api/v1/images.py:86 #, python-format msgid "Image name too long: %d" msgstr "Image name too long: %d" -#: glance/api/v1/images.py:94 +#: glance/api/v1/images.py:97 msgid "" "Invalid mix of disk and container formats. When setting a disk or " "container format to one of 'aki', 'ari', or 'ami', the container and disk" @@ -474,174 +427,78 @@ msgstr "" "container format to one of 'aki', 'ari', or 'ami', the container and disk" " formats must match." -#: glance/api/v1/images.py:172 +#: glance/api/v1/images.py:175 #, python-format msgid "" "The limit has been exceeded on the number of allowed image properties. " "Attempted: %(num)s, Maximum: %(quota)s" msgstr "" -#: glance/api/v1/images.py:194 glance/api/v1/images.py:238 -#: glance/api/v1/images.py:272 -#, python-format -msgid "Property '%s' is protected" +#: glance/api/v1/images.py:338 +msgid "This operation is currently not permitted on Glance images details." msgstr "" -#: glance/api/v1/images.py:380 +#: glance/api/v1/images.py:389 #, python-format msgid "Bad value passed to filter %(filter)s got %(val)s" msgstr "" -#: glance/api/v1/images.py:420 -#, python-format -msgid "External sourcing not supported for store %s" -msgstr "External sourcing not supported for store %s" - -#: glance/api/v1/images.py:493 -#, python-format -msgid "Required store %s is invalid" -msgstr "" - -#: glance/api/v1/images.py:505 glance/api/v1/images.py:877 -#, python-format -msgid "Invalid location %s" -msgstr "" - -#: glance/api/v1/images.py:528 -#, python-format -msgid "An image with identifier %s already exists" -msgstr "An image with identifier %s already exists" - -#: glance/api/v1/images.py:535 +#: glance/api/v1/images.py:544 #, python-format msgid "Failed to reserve image. Got error: %(e)s" msgstr "Failed to reserve image. Got error: %(e)s" -#: glance/api/v1/images.py:542 -msgid "Forbidden to reserve image." -msgstr "Forbidden to reserve image." - -#: glance/api/v1/images.py:569 -#, python-format -msgid "Copy from external source failed: %s" -msgstr "Copy from external source failed: %s" - -#: glance/api/v1/images.py:578 -msgid "Content-Type must be application/octet-stream" -msgstr "Content-Type must be application/octet-stream" - -#: glance/api/v1/images.py:589 -#, python-format -msgid "Setting image %s to status 'saving'" -msgstr "Setting image %s to status 'saving'" - -#: glance/api/v1/images.py:593 -#, python-format -msgid "Uploading image data for image %(image_id)s to %(scheme)s store" -msgstr "Uploading image data for image %(image_id)s to %(scheme)s store" - -#: glance/api/v1/images.py:636 -#, python-format -msgid "" -"duplicate operation - deleting image data for %(id)s " -"(location:%(location)s)" -msgstr "" - -#: glance/api/v1/images.py:644 -#, python-format -msgid "Failed to activate image. Got error: %(e)s" -msgstr "Failed to activate image. Got error: %(e)s" - -#: glance/api/v1/images.py:683 -msgid "It's invalid to provide multiple image sources." -msgstr "" - -#: glance/api/v1/images.py:694 +#: glance/api/v1/images.py:706 msgid "Triggering asynchronous copy from external source" msgstr "Triggering asynchronous copy from external source" -#: glance/api/v1/images.py:709 -#, python-format -msgid "" -"Provided image size must match the stored image size. (provided size: " -"%(ps)d, stored size: %(ss)d)" -msgstr "" - -#: glance/api/v1/images.py:831 +#: glance/api/v1/images.py:849 msgid "Forbidden to update deleted image." msgstr "Forbidden to update deleted image." -#: glance/api/v1/images.py:842 +#: glance/api/v1/images.py:860 #, python-format msgid "Forbidden to modify '%s' of active image." msgstr "" -#: glance/api/v1/images.py:860 +#: glance/api/v1/images.py:878 msgid "Cannot upload to an unqueued image" msgstr "Cannot upload to an unqueued image" -#: glance/api/v1/images.py:884 +#: glance/api/v1/images.py:902 msgid "Attempted to update Location field for an image not in queued status." msgstr "Attempted to update Location field for an image not in queued status." -#: glance/api/v1/images.py:924 glance/registry/api/v1/images.py:461 -#, python-format -msgid "Failed to update image metadata. Got error: %(e)s" -msgstr "Failed to update image metadata. Got error: %(e)s" - -#: glance/api/v1/images.py:931 +#: glance/api/v1/images.py:949 #, python-format msgid "Failed to find image to update: %(e)s" msgstr "Failed to find image to update: %(e)s" -#: glance/api/v1/images.py:938 +#: glance/api/v1/images.py:956 #, python-format msgid "Forbidden to update image: %(e)s" msgstr "Forbidden to update image: %(e)s" -#: glance/api/v1/images.py:977 -msgid "Image is protected" -msgstr "Image is protected" - -#: glance/api/v1/images.py:984 -#, python-format -msgid "Forbidden to delete a %s image." -msgstr "" - -#: glance/api/v1/images.py:989 -#, python-format -msgid "Image %s not found." -msgstr "" - -#: glance/api/v1/images.py:1029 +#: glance/api/v1/images.py:1047 #, python-format msgid "Forbidden to delete image: %(e)s" msgstr "Forbidden to delete image: %(e)s" -#: glance/api/v1/images.py:1052 glance/store/__init__.py:231 -#, python-format -msgid "Store for scheme %s not found" -msgstr "Store for scheme %s not found" - -#: glance/api/v1/images.py:1091 glance/api/v1/upload_utils.py:202 +#: glance/api/v1/images.py:1109 glance/api/v1/upload_utils.py:203 #, python-format msgid "Denying attempt to upload image larger than %d bytes." msgstr "Denying attempt to upload image larger than %d bytes." -#: glance/api/v1/members.py:41 glance/registry/api/v1/members.py:32 +#: glance/api/v1/members.py:40 glance/registry/api/v1/members.py:32 msgid "No authenticated user" msgstr "No authenticated user" -#: glance/api/v1/members.py:53 +#: glance/api/v1/members.py:52 #, python-format msgid "Image with identifier %s has been deleted." msgstr "" -#: glance/api/v1/members.py:80 -msgid "Unauthorized image access" -msgstr "Unauthorized image access" - -#: glance/api/v1/members.py:117 glance/common/exception.py:287 +#: glance/api/v1/members.py:116 glance/common/exception.py:295 #, python-format msgid "" "The limit has been exceeded on the number of allowed image members for " @@ -653,12 +510,12 @@ msgstr "" msgid "Unable to kill image %(id)s: " msgstr "" -#: glance/api/v1/upload_utils.py:107 +#: glance/api/v1/upload_utils.py:108 #, python-format msgid "Cleaning up %s after exceeding the quota" msgstr "" -#: glance/api/v1/upload_utils.py:115 +#: glance/api/v1/upload_utils.py:116 #, python-format msgid "" "Supplied %(attr)s (%(supplied)s) and %(attr)s generated from uploaded " @@ -667,165 +524,137 @@ msgstr "" "Supplied %(attr)s (%(supplied)s) and %(attr)s generated from uploaded " "image (%(actual)s) did not match. Setting image status to 'killed'." -#: glance/api/v1/upload_utils.py:135 -#, python-format -msgid "" -"Updating image %(image_id)s data. Checksum set to %(checksum)s, size set " -"to %(size)d" -msgstr "" -"Updating image %(image_id)s data. Checksum set to %(checksum)s, size set " -"to %(size)d" - -#: glance/api/v1/upload_utils.py:148 +#: glance/api/v1/upload_utils.py:149 #, python-format msgid "" "Image %s could not be found after upload. The image may have been deleted" " during the upload." msgstr "" -#: glance/api/v1/upload_utils.py:164 -#, python-format -msgid "Attempt to upload duplicate image: %s" -msgstr "Attempt to upload duplicate image: %s" - -#: glance/api/v1/upload_utils.py:175 -#, python-format -msgid "Forbidden upload attempt: %s" -msgstr "Forbidden upload attempt: %s" - -#: glance/api/v1/upload_utils.py:212 glance/api/v2/images.py:132 +#: glance/api/v1/upload_utils.py:213 glance/api/v2/images.py:133 #, python-format msgid "Denying attempt to upload image because it exceeds the .quota: %s" msgstr "" -#: glance/api/v1/upload_utils.py:226 +#: glance/api/v1/upload_utils.py:227 #, python-format msgid "Received HTTP error while uploading image %s" msgstr "" -#: glance/api/v1/upload_utils.py:233 -msgid "Client disconnected before sending all data to backend" -msgstr "" - -#: glance/api/v1/upload_utils.py:241 +#: glance/api/v1/upload_utils.py:242 #, python-format msgid "Failed to upload image %s" msgstr "" -#: glance/api/v2/image_data.py:56 +#: glance/api/v2/image_data.py:57 #, python-format msgid "Unable to restore image %(image_id)s: %(e)s" msgstr "" -#: glance/api/v2/image_data.py:71 +#: glance/api/v2/image_data.py:73 #, python-format msgid "" "Image %(id)s could not be found after upload.The image may have been " "deleted during the upload: %(error)s Cleaning up the chunks uploaded" msgstr "" -#: glance/api/v2/image_data.py:98 -#, python-format -msgid "Not allowed to upload image data for image %s" -msgstr "Not allowed to upload image data for image %s" - -#: glance/api/v2/image_data.py:114 +#: glance/api/v2/image_data.py:118 #, python-format msgid "Image exceeds the storage quota: %s" msgstr "" -#: glance/api/v2/image_data.py:121 +#: glance/api/v2/image_data.py:125 #, python-format msgid "The incoming image is too large: %s" msgstr "" -#: glance/api/v2/image_data.py:135 +#: glance/api/v2/image_data.py:140 msgid "Failed to upload image data due to HTTP error" msgstr "Failed to upload image data due to HTTP error" -#: glance/api/v2/image_data.py:140 +#: glance/api/v2/image_data.py:145 msgid "Failed to upload image data due to internal error" msgstr "Failed to upload image data due to internal error" -#: glance/api/v2/image_members.py:189 glance/api/v2/images.py:287 +#: glance/api/v2/image_members.py:191 glance/api/v2/images.py:291 msgid "Body expected in request." msgstr "Body expected in request." -#: glance/api/v2/image_members.py:200 +#: glance/api/v2/image_members.py:202 msgid "Member to be added not specified" msgstr "Member to be added not specified" -#: glance/api/v2/image_members.py:203 +#: glance/api/v2/image_members.py:205 msgid "Member can't be empty" msgstr "" -#: glance/api/v2/image_members.py:212 +#: glance/api/v2/image_members.py:214 msgid "Status not specified" msgstr "Status not specified" -#: glance/api/v2/image_members.py:267 +#: glance/api/v2/image_members.py:269 msgid "An identifier for the image member (tenantId)" msgstr "An identifier for the image member (tenantId)" -#: glance/api/v2/image_members.py:271 glance/api/v2/images.py:644 +#: glance/api/v2/image_members.py:273 glance/api/v2/images.py:650 msgid "An identifier for the image" msgstr "An identifier for the image" -#: glance/api/v2/image_members.py:277 +#: glance/api/v2/image_members.py:279 msgid "Date and time of image member creation" msgstr "Date and time of image member creation" -#: glance/api/v2/image_members.py:284 +#: glance/api/v2/image_members.py:286 msgid "Date and time of last modification of image member" msgstr "Date and time of last modification of image member" -#: glance/api/v2/image_members.py:289 +#: glance/api/v2/image_members.py:291 msgid "The status of this image member" msgstr "The status of this image member" -#: glance/api/v2/images.py:156 glance/api/v2/images.py:184 +#: glance/api/v2/images.py:157 glance/api/v2/images.py:185 #, python-format msgid "Property %s does not exist." msgstr "Property %s does not exist." -#: glance/api/v2/images.py:168 +#: glance/api/v2/images.py:169 #, python-format msgid "Property %s already present." msgstr "Property %s already present." -#: glance/api/v2/images.py:179 +#: glance/api/v2/images.py:180 #, python-format msgid "Property %s may not be removed." msgstr "Property %s may not be removed." -#: glance/api/v2/images.py:197 +#: glance/api/v2/images.py:198 #, python-format msgid "Failed to find image %(image_id)s to delete" msgstr "" -#: glance/api/v2/images.py:216 +#: glance/api/v2/images.py:217 msgid "Cannot replace locations from a non-empty list to a non-empty list." msgstr "" -#: glance/api/v2/images.py:239 +#: glance/api/v2/images.py:241 msgid "Invalid position for adding a location." msgstr "" -#: glance/api/v2/images.py:254 +#: glance/api/v2/images.py:257 msgid "Invalid position for removing a location." msgstr "" -#: glance/api/v2/images.py:295 glance/api/v2/images.py:394 +#: glance/api/v2/images.py:299 glance/api/v2/images.py:399 #, python-format msgid "Attribute '%s' is read-only." msgstr "" -#: glance/api/v2/images.py:319 glance/api/v2/images.py:341 +#: glance/api/v2/images.py:324 glance/api/v2/images.py:346 #, python-format msgid "Unable to find '%s' in JSON Schema change" msgstr "Unable to find '%s' in JSON Schema change" -#: glance/api/v2/images.py:327 +#: glance/api/v2/images.py:332 msgid "" "Operation objects must contain only one member named \"add\", \"remove\"," " or \"replace\"." @@ -833,7 +662,7 @@ msgstr "" "Operation objects must contain only one member named \"add\", \"remove\"," " or \"replace\"." -#: glance/api/v2/images.py:332 +#: glance/api/v2/images.py:337 msgid "" "Operation objects must contain exactly one member named \"add\", " "\"remove\", or \"replace\"." @@ -841,152 +670,152 @@ msgstr "" "Operation objects must contain exactly one member named \"add\", " "\"remove\", or \"replace\"." -#: glance/api/v2/images.py:369 +#: glance/api/v2/images.py:374 #, python-format msgid "Pointer `%s` does not start with \"/\"." msgstr "Pointer `%s` does not start with \"/\"." -#: glance/api/v2/images.py:372 +#: glance/api/v2/images.py:377 #, python-format msgid "Pointer `%s` contains adjacent \"/\"." msgstr "" -#: glance/api/v2/images.py:375 +#: glance/api/v2/images.py:380 #, python-format msgid "Pointer `%s` end with \"/\"." msgstr "" -#: glance/api/v2/images.py:378 +#: glance/api/v2/images.py:383 #, python-format msgid "Pointer `%s` does not contains valid token." msgstr "" -#: glance/api/v2/images.py:381 +#: glance/api/v2/images.py:386 #, python-format msgid "Pointer `%s` contains \"~\" not part of a recognized escape sequence." msgstr "Pointer `%s` contains \"~\" not part of a recognized escape sequence." -#: glance/api/v2/images.py:387 +#: glance/api/v2/images.py:392 #, python-format msgid "Operation \"%s\" requires a member named \"value\"." msgstr "Operation \"%s\" requires a member named \"value\"." -#: glance/api/v2/images.py:397 +#: glance/api/v2/images.py:402 #, python-format msgid "Attribute '%s' is reserved." msgstr "" -#: glance/api/v2/images.py:427 +#: glance/api/v2/images.py:432 #, python-format msgid "Invalid JSON pointer for this resource: '/%s'" msgstr "" -#: glance/api/v2/images.py:439 +#: glance/api/v2/images.py:444 msgid "Unrecognized JSON Schema draft version" msgstr "Unrecognized JSON Schema draft version" -#: glance/api/v2/images.py:460 +#: glance/api/v2/images.py:465 msgid "Request body must be a JSON array of operation objects." msgstr "Request body must be a JSON array of operation objects." -#: glance/api/v2/images.py:465 +#: glance/api/v2/images.py:470 msgid "Operations must be JSON objects." msgstr "Operations must be JSON objects." -#: glance/api/v2/images.py:487 glance/api/v2/tasks.py:164 -#: glance/registry/api/v1/images.py:246 +#: glance/api/v2/images.py:492 glance/api/v2/tasks.py:166 +#: glance/registry/api/v1/images.py:247 msgid "limit param must be an integer" msgstr "limit param must be an integer" -#: glance/api/v2/images.py:491 glance/api/v2/tasks.py:168 -#: glance/registry/api/v1/images.py:249 +#: glance/api/v2/images.py:496 glance/api/v2/tasks.py:170 +#: glance/registry/api/v1/images.py:250 msgid "limit param must be positive" msgstr "limit param must be positive" -#: glance/api/v2/images.py:498 glance/api/v2/tasks.py:134 +#: glance/api/v2/images.py:503 glance/api/v2/tasks.py:136 #, python-format msgid "Invalid sort direction: %s" msgstr "Invalid sort direction: %s" -#: glance/api/v2/images.py:505 +#: glance/api/v2/images.py:510 #, python-format msgid "Invalid status: %s" msgstr "Invalid status: %s" -#: glance/api/v2/images.py:514 +#: glance/api/v2/images.py:519 #, python-format msgid "Invalid visibility value: %s" msgstr "Invalid visibility value: %s" -#: glance/api/v2/images.py:650 +#: glance/api/v2/images.py:656 msgid "Descriptive name for the image" msgstr "Descriptive name for the image" -#: glance/api/v2/images.py:655 +#: glance/api/v2/images.py:661 msgid "Status of the image (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:661 +#: glance/api/v2/images.py:667 msgid "Scope of image accessibility" msgstr "Scope of image accessibility" -#: glance/api/v2/images.py:666 +#: glance/api/v2/images.py:672 msgid "If true, image will not be deletable." msgstr "If true, image will not be deletable." -#: glance/api/v2/images.py:670 +#: glance/api/v2/images.py:676 msgid "md5 hash of image contents. (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:675 +#: glance/api/v2/images.py:681 msgid "Owner of the image" msgstr "" -#: glance/api/v2/images.py:680 +#: glance/api/v2/images.py:686 msgid "Size of image file in bytes (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:684 +#: glance/api/v2/images.py:690 msgid "Virtual size of image in bytes (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:688 +#: glance/api/v2/images.py:694 msgid "Format of the container" msgstr "" -#: glance/api/v2/images.py:693 +#: glance/api/v2/images.py:699 msgid "Format of the disk" msgstr "" -#: glance/api/v2/images.py:698 +#: glance/api/v2/images.py:704 msgid "Date and time of image registration (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:706 +#: glance/api/v2/images.py:712 msgid "Date and time of the last image modification (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:712 +#: glance/api/v2/images.py:718 msgid "List of strings related to the image" msgstr "List of strings related to the image" -#: glance/api/v2/images.py:720 +#: glance/api/v2/images.py:726 msgid "URL to access the image file kept in external store (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:725 +#: glance/api/v2/images.py:731 msgid "Amount of ram (in MB) required to boot image." msgstr "Amount of ram (in MB) required to boot image." -#: glance/api/v2/images.py:729 +#: glance/api/v2/images.py:735 msgid "Amount of disk space (in GB) required to boot image." msgstr "Amount of disk space (in GB) required to boot image." -#: glance/api/v2/images.py:759 +#: glance/api/v2/images.py:765 msgid "A set of URLs to access the image file kept in external store" msgstr "" -#: glance/api/v2/images.py:798 +#: glance/api/v2/images.py:804 #, python-format msgid "" "Could not find schema properties file %s. Continuing without custom " @@ -1000,84 +829,90 @@ msgstr "" msgid "Forbidden to create task. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:109 +#: glance/api/v2/tasks.py:104 #, python-format msgid "Failed to find task %(task_id)s. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:114 +#: glance/api/v2/tasks.py:109 #, python-format msgid "Forbidden to get task %(task_id)s. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:128 +#: glance/api/v2/tasks.py:116 +msgid "" +"This operation is currently not permitted on Glance Tasks. They are auto " +"deleted after reaching the time based on their expires_at property." +msgstr "" + +#: glance/api/v2/tasks.py:130 msgid "Body expected in request" msgstr "" -#: glance/api/v2/tasks.py:143 +#: glance/api/v2/tasks.py:145 #, python-format msgid "Invalid status value: %s" msgstr "" -#: glance/api/v2/tasks.py:149 +#: glance/api/v2/tasks.py:151 #, python-format msgid "Invalid type value: %s" msgstr "" -#: glance/api/v2/tasks.py:156 glance/registry/api/v1/images.py:258 +#: glance/api/v2/tasks.py:158 glance/registry/api/v1/images.py:259 msgid "Invalid marker format" msgstr "Invalid marker format" -#: glance/api/v2/tasks.py:177 +#: glance/api/v2/tasks.py:179 #, python-format msgid "Task '%s' is required" msgstr "" -#: glance/api/v2/tasks.py:292 +#: glance/api/v2/tasks.py:302 msgid "An identifier for the task" msgstr "" -#: glance/api/v2/tasks.py:293 +#: glance/api/v2/tasks.py:303 msgid "" "^([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0" "-9a-fA-F]){12}$" msgstr "" -#: glance/api/v2/tasks.py:298 +#: glance/api/v2/tasks.py:308 msgid "The type of task represented by this content" msgstr "" -#: glance/api/v2/tasks.py:305 +#: glance/api/v2/tasks.py:315 msgid "The current status of this task" msgstr "" -#: glance/api/v2/tasks.py:315 +#: glance/api/v2/tasks.py:325 msgid "The parameters required by task, JSON blob" msgstr "" -#: glance/api/v2/tasks.py:319 +#: glance/api/v2/tasks.py:329 msgid "The result of current task, JSON blob" msgstr "" -#: glance/api/v2/tasks.py:323 +#: glance/api/v2/tasks.py:333 msgid "An identifier for the owner of this task" msgstr "" -#: glance/api/v2/tasks.py:327 +#: glance/api/v2/tasks.py:337 msgid "" "Human-readable informative message only included when appropriate " "(usually on failure)" msgstr "" -#: glance/api/v2/tasks.py:332 +#: glance/api/v2/tasks.py:342 msgid "Datetime when this resource would be subject to removal" msgstr "" -#: glance/api/v2/tasks.py:337 +#: glance/api/v2/tasks.py:347 msgid "Datetime when this resource was created" msgstr "" -#: glance/api/v2/tasks.py:341 +#: glance/api/v2/tasks.py:351 msgid "Datetime when this resource was updated" msgstr "" @@ -1095,12 +930,12 @@ msgstr "" msgid "Unable to increase file descriptor limit. Running as non-root?" msgstr "" -#: glance/cmd/control.py:161 +#: glance/cmd/control.py:160 #, python-format msgid "%(verb)sing %(serv)s" msgstr "" -#: glance/cmd/control.py:176 +#: glance/cmd/control.py:175 #, python-format msgid "unable to launch %(serv)s. Got error: %(e)s" msgstr "" @@ -1145,138 +980,87 @@ msgstr "" #: glance/cmd/control.py:346 #, python-format -msgid "Supressed respawn as %(serv)s was %(rsn)s." +msgid "Suppressed respawn as %(serv)s was %(rsn)s." msgstr "" -#: glance/cmd/replicator.py:55 -#, python-format +#: glance/cmd/manage.py:57 msgid "" -"The image %s is already present on the slave, but our check for it did " -"not find it. This indicates that we do not have permissions to see all " -"the images on the slave server." +"DEPRECATED. TO BE REMOVED IN THE JUNO RELEASE. Whether or not to enforce " +"that all DB tables have charset utf8. If your database tables do not have" +" charset utf8 you will need to convert before this option is removed. " +"This option is only relevant if your database engine is MySQL." msgstr "" -#: glance/cmd/replicator.py:105 -#, python-format +#: glance/cmd/manage.py:86 msgid "" -"Request: %(method)s http://%(server)s:%(port)s%(url)s with headers " -"%(headers)s" +"Warning: The db_enforce_mysql_charset option is now deprecated and will " +"be removed in the Juno release. Please migrate DB manually e.g. convert " +"data of all tables to UTF-8 charset." msgstr "" -#: glance/cmd/replicator.py:118 +#: glance/cmd/replicator.py:55 #, python-format -msgid "Response: %(code)s %(status)s %(headers)s" -msgstr "" - -#: glance/cmd/replicator.py:240 glance/cmd/replicator.py:259 -msgid "Image post done" +msgid "" +"The image %s is already present on the slave, but our check for it did " +"not find it. This indicates that we do not have permissions to see all " +"the images on the slave server." msgstr "" -#: glance/cmd/replicator.py:282 glance/cmd/replicator.py:319 -#: glance/cmd/replicator.py:404 glance/cmd/replicator.py:483 -#: glance/cmd/replicator.py:560 +#: glance/cmd/replicator.py:280 glance/cmd/replicator.py:312 +#: glance/cmd/replicator.py:383 glance/cmd/replicator.py:457 +#: glance/cmd/replicator.py:527 msgid "Too few arguments." msgstr "" -#: glance/cmd/replicator.py:287 glance/cmd/replicator.py:325 -#: glance/cmd/replicator.py:410 glance/cmd/replicator.py:490 -#: glance/cmd/replicator.py:567 -msgid "Bad format of the given arguments." -msgstr "" - -#: glance/cmd/replicator.py:298 -#, python-format -msgid "Considering image: %(image)s" -msgstr "" - -#: glance/cmd/replicator.py:303 +#: glance/cmd/replicator.py:296 #, python-format msgid "Total size is %(size)d bytes across %(img_count)d images" msgstr "" -#: glance/cmd/replicator.py:333 glance/cmd/replicator.py:423 +#: glance/cmd/replicator.py:321 glance/cmd/replicator.py:397 #, python-format msgid "Considering: %s" msgstr "" -#: glance/cmd/replicator.py:337 +#: glance/cmd/replicator.py:325 msgid "... storing" msgstr "" -#: glance/cmd/replicator.py:348 +#: glance/cmd/replicator.py:336 msgid "... image is active" msgstr "" -#: glance/cmd/replicator.py:368 -#, python-format -msgid "metadata diff -- master has extra keys: %(keys)s" -msgstr "" - -#: glance/cmd/replicator.py:374 -#, python-format -msgid "" -"metadata diff -- value differs for key %(key)s: master " -"\"%(master_value)s\" vs slave \"%(slave_value)s\"" -msgstr "" - -#: glance/cmd/replicator.py:432 -#, python-format -msgid "Stripping %(header)s from saved metadata" -msgstr "" - -#: glance/cmd/replicator.py:440 -#, python-format -msgid "Image %s already present" -msgstr "" - -#: glance/cmd/replicator.py:444 glance/cmd/replicator.py:524 -#: glance/cmd/replicator.py:590 -#, python-format -msgid "Stripping %(header)s from slave metadata" -msgstr "" - -#: glance/cmd/replicator.py:449 glance/cmd/replicator.py:529 +#: glance/cmd/replicator.py:423 glance/cmd/replicator.py:496 msgid "... metadata has changed" msgstr "" -#: glance/cmd/replicator.py:456 +#: glance/cmd/replicator.py:430 msgid "... dump is missing image data, skipping" msgstr "" -#: glance/cmd/replicator.py:505 +#: glance/cmd/replicator.py:472 #, python-format msgid "Considering %(id)s" msgstr "" -#: glance/cmd/replicator.py:508 glance/cmd/replicator.py:520 -#: glance/cmd/replicator.py:586 -#, python-format -msgid "Stripping %(header)s from master metadata" -msgstr "" - -#: glance/cmd/replicator.py:535 +#: glance/cmd/replicator.py:502 #, python-format msgid "%s is being synced" msgstr "" -#: glance/cmd/replicator.py:596 +#: glance/cmd/replicator.py:556 #, python-format msgid "" "%(image_id)s: field %(key)s differs (source is %(master_value)s, " "destination is %(slave_value)s)" msgstr "" -#: glance/cmd/replicator.py:606 -#, python-format -msgid "%(image_id)s is identical" -msgstr "" - -#: glance/cmd/replicator.py:610 +#: glance/cmd/replicator.py:570 #, python-format msgid "%s: entirely missing from the destination" msgstr "" -#: glance/cmd/replicator.py:717 +#: glance/cmd/replicator.py:677 #, python-format msgid "Unknown command: %s" msgstr "" @@ -1331,16 +1115,6 @@ msgstr "The cert file you specified %s does not exist" msgid "The CA file you specified %s does not exist" msgstr "The CA file you specified %s does not exist" -#: glance/common/client.py:309 -#, python-format -msgid "Configuring from URL: %s" -msgstr "Configuring from URL: %s" - -#: glance/common/client.py:321 -#, python-format -msgid "Appending doc_root %(doc_root)s to URL %(url)s" -msgstr "Appending doc_root %(doc_root)s to URL %(url)s" - #: glance/common/client.py:410 #, python-format msgid "Constructed URL: %s" @@ -1444,36 +1218,40 @@ msgstr "" #: glance/common/config.py:103 msgid "" -"Set a system wide quota for every user. This value is the total number " -"of bytes that a user can use across all storage systems. A value of 0 " -"means unlimited." +"Set a system wide quota for every user. This value is the total capacity " +"that a user can use across all storage systems. A value of 0 means " +"unlimited.Optional unit can be specified for the value. Accepted units " +"are B, KB, MB, GB and TB representing Bytes, KiloBytes, MegaBytes, " +"GigaBytes and TeraBytesrespectively. If no unit is specified then Bytes " +"is assumed. Note that there should not be any space between value and " +"unit and units are case sensitive." msgstr "" -#: glance/common/config.py:107 +#: glance/common/config.py:113 msgid "Deploy the v1 OpenStack Images API." msgstr "" -#: glance/common/config.py:109 +#: glance/common/config.py:115 msgid "Deploy the v2 OpenStack Images API." msgstr "" -#: glance/common/config.py:111 +#: glance/common/config.py:117 msgid "Deploy the v1 OpenStack Registry API." msgstr "" -#: glance/common/config.py:113 +#: glance/common/config.py:119 msgid "Deploy the v2 OpenStack Registry API." msgstr "" -#: glance/common/config.py:115 +#: glance/common/config.py:121 msgid "The hostname/IP of the pydev process listening for debug connections" msgstr "The hostname/IP of the pydev process listening for debug connections" -#: glance/common/config.py:118 +#: glance/common/config.py:124 msgid "The port on which a pydev process is listening for connections." msgstr "The port on which a pydev process is listening for connections." -#: glance/common/config.py:121 +#: glance/common/config.py:127 msgid "" "Key used for encrypting sensitive metadata while talking to the registry " "or database." @@ -1481,17 +1259,12 @@ msgstr "" "Key used for encrypting sensitive metadata while talking to the registry " "or database." -#: glance/common/config.py:179 +#: glance/common/config.py:185 #, python-format msgid "Unable to locate paste config file for %s." msgstr "" -#: glance/common/config.py:207 -#, python-format -msgid "Loading %(app_name)s from %(conf_file)s" -msgstr "Loading %(app_name)s from %(conf_file)s" - -#: glance/common/config.py:218 +#: glance/common/config.py:224 #, python-format msgid "" "Unable to load %(app_name)s from configuration file %(conf_file)s.\n" @@ -1586,7 +1359,7 @@ msgid "Data supplied was not valid." msgstr "Data supplied was not valid." #: glance/common/exception.py:138 -#: glance/openstack/common/db/sqlalchemy/utils.py:60 +#: glance/openstack/common/db/sqlalchemy/utils.py:58 msgid "Sort key supplied was not valid." msgstr "Sort key supplied was not valid." @@ -1595,33 +1368,37 @@ msgid "Invalid configuration in property protection file." msgstr "" #: glance/common/exception.py:146 +msgid "Invalid configuration in glance-swift conf file." +msgstr "" + +#: glance/common/exception.py:150 msgid "Unable to filter using the specified range." msgstr "Unable to filter using the specified range." -#: glance/common/exception.py:150 +#: glance/common/exception.py:154 #, python-format msgid "Attribute '%(property)s' is read-only." msgstr "Attribute '%(property)s' is read-only." -#: glance/common/exception.py:154 +#: glance/common/exception.py:158 #, python-format msgid "Attribute '%(property)s' is reserved." msgstr "Attribute '%(property)s' is reserved." -#: glance/common/exception.py:158 +#: glance/common/exception.py:162 #, python-format msgid "Redirecting to %(uri)s for authorization." msgstr "Redirecting to %(uri)s for authorization." -#: glance/common/exception.py:162 +#: glance/common/exception.py:166 msgid "There was an error connecting to a server" msgstr "There was an error connecting to a server" -#: glance/common/exception.py:166 +#: glance/common/exception.py:170 msgid "There was an error configuring the client." msgstr "There was an error configuring the client." -#: glance/common/exception.py:170 +#: glance/common/exception.py:174 #, python-format msgid "" "The request returned a 302 Multiple Choices. This generally means that " @@ -1636,7 +1413,7 @@ msgstr "" "The body of response returned:\n" "%(body)s" -#: glance/common/exception.py:176 +#: glance/common/exception.py:180 #, python-format msgid "" "The request returned a 413 Request Entity Too Large. This generally means" @@ -1651,7 +1428,7 @@ msgstr "" "The response body:\n" "%(body)s" -#: glance/common/exception.py:187 +#: glance/common/exception.py:191 msgid "" "The request returned 503 Service Unavilable. This generally occurs on " "service overload or other transient outage." @@ -1659,11 +1436,11 @@ msgstr "" "The request returned 503 Service Unavilable. This generally occurs on " "service overload or other transient outage." -#: glance/common/exception.py:198 +#: glance/common/exception.py:202 msgid "The request returned 500 Internal Server Error." msgstr "The request returned 500 Internal Server Error." -#: glance/common/exception.py:202 +#: glance/common/exception.py:206 #, python-format msgid "" "The request returned an unexpected status: %(status)s.\n" @@ -1676,22 +1453,22 @@ msgstr "" "The response body:\n" "%(body)s" -#: glance/common/exception.py:207 +#: glance/common/exception.py:211 #, python-format msgid "Invalid content type %(content_type)s" msgstr "Invalid content type %(content_type)s" -#: glance/common/exception.py:211 +#: glance/common/exception.py:215 #, python-format msgid "Registry was not configured correctly on API server. Reason: %(reason)s" msgstr "Registry was not configured correctly on API server. Reason: %(reason)s" -#: glance/common/exception.py:216 +#: glance/common/exception.py:220 #, python-format msgid "Store %(store_name)s could not be configured correctly. Reason: %(reason)s" msgstr "Store %(store_name)s could not be configured correctly. Reason: %(reason)s" -#: glance/common/exception.py:221 +#: glance/common/exception.py:225 #, python-format msgid "" "Driver %(driver_name)s could not be configured correctly. Reason: " @@ -1700,36 +1477,40 @@ msgstr "" "Driver %(driver_name)s could not be configured correctly. Reason: " "%(reason)s" -#: glance/common/exception.py:226 +#: glance/common/exception.py:230 msgid "Deleting images from this store is not supported." msgstr "Deleting images from this store is not supported." -#: glance/common/exception.py:230 +#: glance/common/exception.py:234 msgid "Getting images from this store is not supported." msgstr "" -#: glance/common/exception.py:234 +#: glance/common/exception.py:238 msgid "Adding images to this store is not supported." msgstr "" -#: glance/common/exception.py:238 +#: glance/common/exception.py:242 msgid "Configuration for store failed. Adding images to this store is disabled." msgstr "Configuration for store failed. Adding images to this store is disabled." -#: glance/common/exception.py:243 +#: glance/common/exception.py:247 +msgid "Store is not configured." +msgstr "" + +#: glance/common/exception.py:251 #, python-format msgid "Maximum redirects (%(redirects)s) was exceeded." msgstr "Maximum redirects (%(redirects)s) was exceeded." -#: glance/common/exception.py:247 +#: glance/common/exception.py:255 msgid "Received invalid HTTP redirect." msgstr "Received invalid HTTP redirect." -#: glance/common/exception.py:251 +#: glance/common/exception.py:259 msgid "Response from Keystone does not contain a Glance endpoint." msgstr "Response from Keystone does not contain a Glance endpoint." -#: glance/common/exception.py:255 +#: glance/common/exception.py:263 #, python-format msgid "" "Multiple 'image' service matches for region %(region)s. This generally " @@ -1738,27 +1519,27 @@ msgstr "" "Multiple 'image' service matches for region %(region)s. This generally " "means that a region is required and you have not supplied one." -#: glance/common/exception.py:261 +#: glance/common/exception.py:269 #, python-format msgid "Server worker creation failed: %(reason)s." msgstr "Server worker creation failed: %(reason)s." -#: glance/common/exception.py:265 +#: glance/common/exception.py:273 #, python-format msgid "Unable to load schema: %(reason)s" msgstr "Unable to load schema: %(reason)s" -#: glance/common/exception.py:269 +#: glance/common/exception.py:277 #, python-format msgid "Provided object does not match schema '%(schema)s': %(reason)s" msgstr "Provided object does not match schema '%(schema)s': %(reason)s" -#: glance/common/exception.py:274 +#: glance/common/exception.py:282 #, python-format msgid "Provided header feature is unsupported: %(feature)s" msgstr "Provided header feature is unsupported: %(feature)s" -#: glance/common/exception.py:278 +#: glance/common/exception.py:286 msgid "" "The image cannot be deleted because it is in use through the backend " "store outside of Glance." @@ -1766,262 +1547,320 @@ msgstr "" "The image cannot be deleted because it is in use through the backend " "store outside of Glance." -#: glance/common/exception.py:283 +#: glance/common/exception.py:291 msgid "The provided image is too large." msgstr "The provided image is too large." -#: glance/common/exception.py:293 +#: glance/common/exception.py:301 #, python-format msgid "" "The limit has been exceeded on the number of allowed image properties. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:298 +#: glance/common/exception.py:306 #, python-format msgid "" "The limit has been exceeded on the number of allowed image tags. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:303 +#: glance/common/exception.py:311 #, python-format msgid "" "The limit has been exceeded on the number of allowed image locations. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:308 +#: glance/common/exception.py:316 #, python-format msgid "%(cls)s exception was raised in the last rpc call: %(val)s" msgstr "" -#: glance/common/exception.py:312 +#: glance/common/exception.py:320 msgid "An unknown task exception occurred" msgstr "" -#: glance/common/exception.py:316 +#: glance/common/exception.py:324 #, python-format msgid "Task with the given id %(task_id)s was not found" msgstr "" -#: glance/common/exception.py:320 +#: glance/common/exception.py:328 #, python-format msgid "Provided status of task is unsupported: %(status)s" msgstr "" -#: glance/common/exception.py:324 +#: glance/common/exception.py:332 #, python-format msgid "Provided type of task is unsupported: %(type)s" msgstr "" -#: glance/common/exception.py:328 +#: glance/common/exception.py:336 #, python-format msgid "Status transition from %(cur_status)s to %(new_status)s is not allowed" msgstr "" -#: glance/common/exception.py:333 +#: glance/common/exception.py:341 #, python-format msgid "The location %(location)s already exists" msgstr "" -#: glance/common/exception.py:337 glance/store/__init__.py:730 -msgid "No image data could be found" -msgstr "No image data could be found" - -#: glance/common/exception.py:341 +#: glance/common/exception.py:349 #, python-format msgid "Invalid value '%(value)s' for parameter '%(param)s': %(extra_msg)s" msgstr "" -#: glance/common/exception.py:346 +#: glance/common/exception.py:354 #, python-format msgid "" "Image status transition from %(cur_status)s to %(new_status)s is not " "allowed" msgstr "" -#: glance/common/property_utils.py:37 +#: glance/common/property_utils.py:36 msgid "The location of the property protection file." msgstr "" -#: glance/common/property_utils.py:40 +#: glance/common/property_utils.py:39 msgid "" "This config value indicates whether \"roles\" or \"policies\" are used in" " the property protection file." msgstr "" -#: glance/common/property_utils.py:75 +#: glance/common/property_utils.py:74 #, python-format msgid "Couldn't find property protection file %(file)s: %(error)s." msgstr "" -#: glance/common/property_utils.py:82 +#: glance/common/property_utils.py:81 #, python-format msgid "" "Invalid value '%s' for 'property_protection_rule_format'. The permitted " "values are 'roles' and 'policies'" msgstr "" -#: glance/common/property_utils.py:101 +#: glance/common/property_utils.py:100 #, python-format msgid "" "Multiple policies '%s' not allowedfor a given operation. Policies can be " "combined in the policy file" msgstr "" -#: glance/common/property_utils.py:114 +#: glance/common/property_utils.py:113 #, python-format msgid "" "Malformed property protection rule in [%(prop)s] %(op)s=%(perm)s: '@' and" " '!' are mutually exclusive" msgstr "" -#: glance/common/property_utils.py:127 +#: glance/common/property_utils.py:126 #, python-format msgid "" "Property protection on operation %(operation)s for rule %(rule)s is not " "found. No role will be allowed to perform this operation." msgstr "" -#: glance/common/property_utils.py:139 +#: glance/common/property_utils.py:138 #, python-format msgid "Encountered a malformed property protection rule %(rule)s: %(error)s." msgstr "" -#: glance/common/rpc.py:139 +#: glance/common/rpc.py:140 msgid "Request must be a list of commands" msgstr "" -#: glance/common/rpc.py:144 +#: glance/common/rpc.py:145 #, python-format msgid "Bad Command: %s" msgstr "" -#: glance/common/rpc.py:151 +#: glance/common/rpc.py:152 #, python-format msgid "Wrong command structure: %s" msgstr "" -#: glance/common/rpc.py:160 +#: glance/common/rpc.py:161 msgid "Command not found" msgstr "" -#: glance/common/rpc.py:182 +#: glance/common/rpc.py:183 #, python-format msgid "" "RPC Call Error: %(val)s\n" "%(tb)s" msgstr "" -#: glance/common/utils.py:103 +#: glance/common/swift_store_utils.py:29 +msgid "" +"The reference to the default swift account/backing store parameters to " +"use for adding new images." +msgstr "" + +#: glance/common/swift_store_utils.py:32 +msgid "" +"The address where the Swift authentication service is " +"listening.(deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:35 +msgid "" +"The user to authenticate against the Swift authentication service " +"(deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:38 +msgid "" +"Auth key for the user authenticating against the Swift authentication " +"service. (deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:41 +msgid "The config file that has the swift account(s)configs." +msgstr "" + +#: glance/common/swift_store_utils.py:83 +#, python-format +msgid "swift config file %(conf_file)s:%(exc)s not found" +msgstr "" + +#: glance/common/swift_store_utils.py:97 +msgid "Invalid format of swift store configcfg" +msgstr "" + +#: glance/common/utils.py:111 #, python-format msgid "Error: cooperative_iter exception %s" msgstr "Error: cooperative_iter exception %s" -#: glance/common/utils.py:251 +#: glance/common/utils.py:258 #, python-format msgid "Bad header: %(header_name)s" msgstr "" -#: glance/common/utils.py:261 +#: glance/common/utils.py:268 #, python-format msgid "Cannot convert image %(key)s '%(value)s' to an integer." msgstr "" -#: glance/common/utils.py:268 +#: glance/common/utils.py:275 #, python-format msgid "Image %(key)s must be >= 0 ('%(value)s' specified)." msgstr "" -#: glance/common/utils.py:432 -msgid "Read-only access" -msgstr "Read-only access" +#: glance/common/utils.py:448 +msgid "" +"Error setting up the debug environment. Verify that the option " +"pydev_worker_debug_host is pointing to a valid hostname or IP on which a " +"pydev server is listening on the port indicated by " +"pydev_worker_debug_port." +msgstr "" -#: glance/common/utils.py:478 +#: glance/common/utils.py:485 #, python-format msgid "Invalid backend: %s" msgstr "Invalid backend: %s" -#: glance/common/utils.py:509 +#: glance/common/utils.py:518 #, python-format msgid "" "There is a problem with your %(error_key_name)s %(error_filename)s. " "Please verify it. Error: %(ioe)s" msgstr "" -#: glance/common/utils.py:516 +#: glance/common/utils.py:525 #, python-format msgid "" "There is a problem with your %(error_key_name)s %(error_filename)s. " "Please verify it. OpenSSL error: %(ce)s" msgstr "" -#: glance/common/utils.py:530 +#: glance/common/utils.py:539 #, python-format msgid "" "There is a problem with your key pair. Please verify that cert " "%(cert_file)s and key %(key_file)s belong together. OpenSSL error %(ce)s" msgstr "" -#: glance/common/wsgi.py:53 -msgid "" -"Address to bind the server. Useful when selecting a particular network " -"interface." +#: glance/common/utils.py:617 +#, python-format +msgid "Host and port \"%s\" is not valid." msgstr "" -"Address to bind the server. Useful when selecting a particular network " -"interface." -#: glance/common/wsgi.py:56 -msgid "The port on which the server will listen." -msgstr "The port on which the server will listen." +#: glance/common/utils.py:620 +#, python-format +msgid "Port \"%s\" is not valid." +msgstr "" + +#: glance/common/utils.py:629 +#, python-format +msgid "Host \"%s\" is not valid." +msgstr "" + +#: glance/common/utils.py:632 +#, python-format +msgid "" +"%s Please specify a host:port pair, where host is an IPv4 address, IPv6 " +"address, hostname, or FQDN. If using an IPv6 address, enclose it in " +"brackets separately from the port (i.e., \"[fe80::a:b:c]:9876\")." +msgstr "" + +#: glance/common/wsgi.py:54 +msgid "" +"Address to bind the server. Useful when selecting a particular network " +"interface." +msgstr "" +"Address to bind the server. Useful when selecting a particular network " +"interface." + +#: glance/common/wsgi.py:57 +msgid "The port on which the server will listen." +msgstr "The port on which the server will listen." -#: glance/common/wsgi.py:61 +#: glance/common/wsgi.py:62 msgid "The backlog value that will be used when creating the TCP listener socket." msgstr "The backlog value that will be used when creating the TCP listener socket." -#: glance/common/wsgi.py:64 +#: glance/common/wsgi.py:65 msgid "" "The value for the socket option TCP_KEEPIDLE. This is the time in " "seconds that the connection must be idle before TCP starts sending " "keepalive probes." msgstr "" -#: glance/common/wsgi.py:67 +#: glance/common/wsgi.py:68 msgid "CA certificate file to use to verify connecting clients." msgstr "CA certificate file to use to verify connecting clients." -#: glance/common/wsgi.py:69 +#: glance/common/wsgi.py:70 msgid "Certificate file to use when starting API server securely." msgstr "Certificate file to use when starting API server securely." -#: glance/common/wsgi.py:71 +#: glance/common/wsgi.py:72 msgid "Private key file to use when starting API server securely." msgstr "Private key file to use when starting API server securely." -#: glance/common/wsgi.py:77 +#: glance/common/wsgi.py:78 msgid "" -"The number of child process workers that will be created to service API " +"The number of child process workers that will be created to service " "requests." msgstr "" -"The number of child process workers that will be created to service API " -"requests." -#: glance/common/wsgi.py:80 +#: glance/common/wsgi.py:81 msgid "" "Name of eventlet hub to use. Traditionally, we have only supported " "'poll', however 'selects' may be appropriate for some platforms. See " "http://eventlet.net/doc/hubs.html for more details." msgstr "" -#: glance/common/wsgi.py:85 +#: glance/common/wsgi.py:86 msgid "" "Maximum line size of message headers to be accepted. max_header_line may " "need to be increased when using large tokens (typically those generated " "by the Keystone v3 API with big service catalogs" msgstr "" -#: glance/common/wsgi.py:131 +#: glance/common/wsgi.py:132 msgid "" "When running server in SSL mode, you must specify both a cert_file and " "key_file option value in your configuration file" @@ -2029,58 +1868,54 @@ msgstr "" "When running server in SSL mode, you must specify both a cert_file and " "key_file option value in your configuration file" -#: glance/common/wsgi.py:169 +#: glance/common/wsgi.py:170 #, python-format msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds" msgstr "" -#: glance/common/wsgi.py:244 glance/openstack/common/service.py:240 +#: glance/common/wsgi.py:245 #, python-format msgid "Starting %d workers" msgstr "Starting %d workers" -#: glance/common/wsgi.py:259 +#: glance/common/wsgi.py:260 #, python-format msgid "Removing dead child %s" msgstr "Removing dead child %s" -#: glance/common/wsgi.py:262 +#: glance/common/wsgi.py:263 #, python-format msgid "Not respawning child %d, cannot recover from termination" msgstr "Not respawning child %d, cannot recover from termination" -#: glance/common/wsgi.py:266 +#: glance/common/wsgi.py:267 msgid "All workers have terminated. Exiting" msgstr "All workers have terminated. Exiting" -#: glance/common/wsgi.py:274 +#: glance/common/wsgi.py:275 msgid "Caught keyboard interrupt. Exiting." msgstr "Caught keyboard interrupt. Exiting." -#: glance/common/wsgi.py:278 -msgid "Exited" -msgstr "Exited" - -#: glance/common/wsgi.py:300 +#: glance/common/wsgi.py:301 #, python-format msgid "Child %d exiting normally" msgstr "Child %d exiting normally" -#: glance/common/wsgi.py:305 +#: glance/common/wsgi.py:306 #, python-format msgid "Started child %s" msgstr "Started child %s" -#: glance/common/wsgi.py:318 +#: glance/common/wsgi.py:319 #, python-format msgid "eventlet '%s' hub is not available on this platform" msgstr "" -#: glance/common/wsgi.py:335 +#: glance/common/wsgi.py:336 msgid "Starting single process server" msgstr "Starting single process server" -#: glance/common/wsgi.py:552 +#: glance/common/wsgi.py:553 msgid "Malformed JSON in request body." msgstr "Malformed JSON in request body." @@ -2119,114 +1954,92 @@ msgid "" "option." msgstr "" -#: glance/db/__init__.py:64 glance/db/__init__.py:167 glance/db/__init__.py:179 -#: glance/db/sqlalchemy/api.py:181 +#: glance/db/__init__.py:67 glance/db/__init__.py:170 glance/db/__init__.py:182 #, python-format msgid "No image found with ID %s" msgstr "" -#: glance/db/__init__.py:238 +#: glance/db/__init__.py:241 #, python-format msgid "" "The target member %(member_id)s is already associated with image " "%(image_id)s." msgstr "" -#: glance/db/__init__.py:255 +#: glance/db/__init__.py:258 #, python-format msgid "The specified member %s could not be found" msgstr "" -#: glance/db/__init__.py:334 glance/db/__init__.py:360 -#: glance/db/__init__.py:377 glance/db/simple/api.py:762 +#: glance/db/__init__.py:336 glance/db/__init__.py:357 +#: glance/db/__init__.py:374 glance/db/simple/api.py:764 #, python-format msgid "Could not find task %s" msgstr "" -#: glance/db/simple/api.py:41 +#: glance/db/simple/api.py:43 #, python-format msgid "Calling %(funcname)s: args=%(args)s, kwargs=%(kwargs)s" msgstr "Calling %(funcname)s: args=%(args)s, kwargs=%(kwargs)s" -#: glance/db/simple/api.py:46 +#: glance/db/simple/api.py:48 #, python-format msgid "Returning %(funcname)s: %(output)s" msgstr "Returning %(funcname)s: %(output)s" -#: glance/db/simple/api.py:256 glance/db/sqlalchemy/api.py:407 +#: glance/db/simple/api.py:258 glance/db/sqlalchemy/api.py:408 msgid "Unable to filter on a range with a non-numeric value." msgstr "Unable to filter on a range with a non-numeric value." -#: glance/db/simple/api.py:329 +#: glance/db/simple/api.py:331 #, python-format msgid "Could not find image %s" msgstr "Could not find image %s" -#: glance/db/simple/api.py:333 +#: glance/db/simple/api.py:335 msgid "Unable to get deleted image" msgstr "Unable to get deleted image" -#: glance/db/simple/api.py:337 +#: glance/db/simple/api.py:339 msgid "Unable to get unowned image" msgstr "Unable to get unowned image" -#: glance/db/simple/api.py:425 glance/db/sqlalchemy/api.py:951 +#: glance/db/simple/api.py:427 glance/db/sqlalchemy/api.py:952 msgid "Image id is required." msgstr "" -#: glance/db/simple/api.py:740 glance/db/simple/api.py:790 -#: glance/db/sqlalchemy/api.py:1250 -#, python-format -msgid "No task found with ID %s" -msgstr "" - -#: glance/db/simple/api.py:767 +#: glance/db/simple/api.py:769 #, python-format msgid "Unable to get deleted task %s" msgstr "" -#: glance/db/simple/api.py:772 glance/db/sqlalchemy/api.py:1256 -#, python-format -msgid "Forbidding request, task %s is not visible" -msgstr "" - -#: glance/db/simple/api.py:890 +#: glance/db/simple/api.py:892 msgid "Task does not exist" msgstr "" -#: glance/db/simple/api.py:912 -#, python-format -msgid "No task info found with task id %s" -msgstr "" - -#: glance/db/simple/api.py:928 +#: glance/db/simple/api.py:930 #, python-format msgid "Could not find task info %s" msgstr "" -#: glance/db/sqlalchemy/api.py:84 +#: glance/db/sqlalchemy/api.py:85 msgid "Attempted to modify image user did not own." msgstr "Attempted to modify image user did not own." -#: glance/db/sqlalchemy/api.py:85 +#: glance/db/sqlalchemy/api.py:86 msgid "You do not own this image" msgstr "You do not own this image" -#: glance/db/sqlalchemy/api.py:187 -#, python-format -msgid "Forbidding request, image %s not visible" -msgstr "" - -#: glance/db/sqlalchemy/api.py:274 +#: glance/db/sqlalchemy/api.py:275 msgid "Id not in sort_keys; is sort_keys unique?" msgstr "Id not in sort_keys; is sort_keys unique?" -#: glance/db/sqlalchemy/api.py:337 -#: glance/openstack/common/db/sqlalchemy/utils.py:121 +#: glance/db/sqlalchemy/api.py:338 +#: glance/openstack/common/db/sqlalchemy/utils.py:119 msgid "Unknown sort direction, must be 'desc' or 'asc'" msgstr "Unknown sort direction, must be 'desc' or 'asc'" -#: glance/db/sqlalchemy/api.py:682 +#: glance/db/sqlalchemy/api.py:683 #: glance/tests/unit/v2/test_registry_client.py:500 #, python-format msgid "" @@ -2234,11 +2047,6 @@ msgid "" "from_state=%(from)s)" msgstr "" -#: glance/db/sqlalchemy/api.py:1084 -#, python-format -msgid "TaskInfo was not found for task with id %(task_id)s" -msgstr "" - #: glance/db/sqlalchemy/migrate_repo/schema.py:96 #, python-format msgid "creating table %(table)s" @@ -2249,14 +2057,14 @@ msgstr "creating table %(table)s" msgid "dropping table %(table)s" msgstr "dropping table %(table)s" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:58 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:88 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:60 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:90 #, python-format msgid "Invalid store uri for image: %(image_id)s. Details: %(reason)s" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:86 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:149 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:88 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:151 msgid "" "URI cannot contain more than one occurrence of a scheme.If you have " "specified a URI like " @@ -2270,25 +2078,25 @@ msgstr "" " it to use the swift+http:// scheme, like so: " "swift+http://user:pass@authurl.com/v1/container/obj" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:123 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:185 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:125 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:187 #, python-format msgid "Badly formed credentials '%(creds)s' in Swift URI" msgstr "Badly formed credentials '%(creds)s' in Swift URI" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:135 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:197 -#: glance/store/swift.py:246 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:137 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:199 +#: glance/store/swift.py:248 msgid "Badly formed credentials in Swift URI." msgstr "Badly formed credentials in Swift URI." -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:152 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:214 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:154 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:216 #, python-format msgid "Badly formed S3 URI: %(uri)s" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:65 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:66 msgid "" "'metadata_encryption_key' was not specified in the config file or a " "config file was not specified. This means that this migration is a NOOP." @@ -2296,89 +2104,85 @@ msgstr "" "'metadata_encryption_key' was not specified in the config file or a " "config file was not specified. This means that this migration is a NOOP." -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:85 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:86 #, python-format msgid "Failed to decrypt location value for image %(image_id)s" msgstr "" -#: glance/domain/__init__.py:59 +#: glance/domain/__init__.py:60 #, python-format msgid "new_image() got unexpected keywords %s" msgstr "" -#: glance/domain/__init__.py:129 +#: glance/domain/__init__.py:130 #, python-format msgid "__init__() got unexpected keyword argument '%s'" msgstr "" -#: glance/domain/__init__.py:151 +#: glance/domain/__init__.py:152 #, python-format msgid "Property %s must be set prior to saving data." msgstr "Property %s must be set prior to saving data." -#: glance/domain/__init__.py:154 +#: glance/domain/__init__.py:155 #, python-format msgid "Properties %s must be set prior to saving data." msgstr "Properties %s must be set prior to saving data." -#: glance/domain/__init__.py:171 +#: glance/domain/__init__.py:172 msgid "Visibility must be either \"public\" or \"private\"" msgstr "" -#: glance/domain/__init__.py:190 +#: glance/domain/__init__.py:191 msgid "Attribute container_format can be only replaced for a queued image." msgstr "" -#: glance/domain/__init__.py:202 +#: glance/domain/__init__.py:203 msgid "Attribute disk_format can be only replaced for a queued image." msgstr "" -#: glance/domain/__init__.py:214 glance/domain/__init__.py:227 +#: glance/domain/__init__.py:215 glance/domain/__init__.py:228 msgid "Cannot be a negative value" msgstr "" -#: glance/domain/__init__.py:292 +#: glance/domain/__init__.py:293 msgid "Status must be \"pending\", \"accepted\" or \"rejected\"." msgstr "Status must be \"pending\", \"accepted\" or \"rejected\"." -#: glance/domain/__init__.py:356 +#: glance/domain/__init__.py:369 #, python-format msgid "Task status changed from %(cur_status)s to %(new_status)s" msgstr "" -#: glance/domain/__init__.py:361 +#: glance/domain/__init__.py:374 #, python-format msgid "Task status failed to change from %(cur_status)s to %(new_status)s" msgstr "" -#: glance/domain/__init__.py:391 -msgid "task_id is required to create a new TaskDetails object" -msgstr "" - -#: glance/image_cache/__init__.py:34 +#: glance/image_cache/__init__.py:35 msgid "The driver to use for image cache management." msgstr "The driver to use for image cache management." -#: glance/image_cache/__init__.py:36 +#: glance/image_cache/__init__.py:37 msgid "The maximum size in bytes that the cache can use." msgstr "The maximum size in bytes that the cache can use." -#: glance/image_cache/__init__.py:38 +#: glance/image_cache/__init__.py:39 msgid "" "The amount of time to let an image remain in the cache without being " "accessed." msgstr "" -#: glance/image_cache/__init__.py:41 +#: glance/image_cache/__init__.py:42 msgid "Base directory that the Image Cache uses." msgstr "Base directory that the Image Cache uses." -#: glance/image_cache/__init__.py:63 +#: glance/image_cache/__init__.py:64 #, python-format msgid "Image cache loaded driver '%s'." msgstr "Image cache loaded driver '%s'." -#: glance/image_cache/__init__.py:66 +#: glance/image_cache/__init__.py:67 #, python-format msgid "" "Image cache driver '%(driver_name)s' failed to load. Got error: " @@ -2387,11 +2191,11 @@ msgstr "" "Image cache driver '%(driver_name)s' failed to load. Got error: " "'%(import_err)s." -#: glance/image_cache/__init__.py:73 glance/image_cache/__init__.py:92 +#: glance/image_cache/__init__.py:74 glance/image_cache/__init__.py:93 msgid "Defaulting to SQLite driver." msgstr "Defaulting to SQLite driver." -#: glance/image_cache/__init__.py:87 +#: glance/image_cache/__init__.py:88 #, python-format msgid "" "Image cache driver '%(driver_module)s' failed to configure. Got error: " @@ -2400,44 +2204,12 @@ msgstr "" "Image cache driver '%(driver_module)s' failed to configure. Got error: " "'%(config_err)s" -#: glance/image_cache/__init__.py:174 -msgid "Image cache has free space, skipping prune..." -msgstr "Image cache has free space, skipping prune..." - -#: glance/image_cache/__init__.py:178 -#, python-format -msgid "" -"Image cache currently %(overage)d bytes over max size. Starting prune to " -"max size of %(max_size)d " -msgstr "" -"Image cache currently %(overage)d bytes over max size. Starting prune to " -"max size of %(max_size)d " - -#: glance/image_cache/__init__.py:187 -#, python-format -msgid "Pruning '%(image_id)s' to free %(size)d bytes" -msgstr "Pruning '%(image_id)s' to free %(size)d bytes" - -#: glance/image_cache/__init__.py:195 -#, python-format -msgid "" -"Pruning finished pruning. Pruned %(total_files_pruned)d and " -"%(total_bytes_pruned)d." -msgstr "" -"Pruning finished pruning. Pruned %(total_files_pruned)d and " -"%(total_bytes_pruned)d." - -#: glance/image_cache/__init__.py:234 -#, python-format -msgid "Tee'ing image '%s' into cache" -msgstr "Tee'ing image '%s' into cache" - -#: glance/image_cache/__init__.py:253 +#: glance/image_cache/__init__.py:254 #, python-format msgid "Checksum verification failed. Aborted caching of image '%s'." msgstr "Checksum verification failed. Aborted caching of image '%s'." -#: glance/image_cache/__init__.py:263 +#: glance/image_cache/__init__.py:264 #, python-format msgid "" "Exception encountered while tee'ing image '%(image_id)s' into cache: " @@ -2460,20 +2232,6 @@ msgstr "Image '%s' is not active. Not caching." msgid "No metadata found for image '%s'" msgstr "No metadata found for image '%s'" -#: glance/image_cache/prefetcher.py:56 -#, python-format -msgid "Caching image '%s'" -msgstr "Caching image '%s'" - -#: glance/image_cache/prefetcher.py:68 -msgid "Nothing to prefetch." -msgstr "Nothing to prefetch." - -#: glance/image_cache/prefetcher.py:72 -#, python-format -msgid "Found %d images to prefetch" -msgstr "Found %d images to prefetch" - #: glance/image_cache/prefetcher.py:78 msgid "Failed to successfully cache all images in queue." msgstr "Failed to successfully cache all images in queue." @@ -2488,7 +2246,7 @@ msgstr "Successfully cached all %d images" msgid "Failed to read %s from config" msgstr "Failed to read %s from config" -#: glance/image_cache/drivers/sqlite.py:39 +#: glance/image_cache/drivers/sqlite.py:40 msgid "" "The path to the sqlite file database that will be used for image cache " "management." @@ -2496,83 +2254,56 @@ msgstr "" "The path to the sqlite file database that will be used for image cache " "management." -#: glance/image_cache/drivers/sqlite.py:121 +#: glance/image_cache/drivers/sqlite.py:122 #, python-format msgid "Failed to initialize the image cache database. Got error: %s" msgstr "Failed to initialize the image cache database. Got error: %s" -#: glance/image_cache/drivers/sqlite.py:160 -#: glance/image_cache/drivers/xattr.py:144 -msgid "Gathering cached image entries." -msgstr "Gathering cached image entries." - -#: glance/image_cache/drivers/sqlite.py:303 -#: glance/image_cache/drivers/xattr.py:272 -#, python-format -msgid "Fetch finished, moving '%(incomplete_path)s' to '%(final_path)s'" -msgstr "Fetch finished, moving '%(incomplete_path)s' to '%(final_path)s'" - -#: glance/image_cache/drivers/sqlite.py:327 -#: glance/image_cache/drivers/xattr.py:288 -#, python-format -msgid "" -"Fetch of cache file failed (%(e)s), rolling back by moving " -"'%(incomplete_path)s' to '%(invalid_path)s'" -msgstr "" -"Fetch of cache file failed (%(e)s), rolling back by moving " -"'%(incomplete_path)s' to '%(invalid_path)s'" - -#: glance/image_cache/drivers/sqlite.py:392 +#: glance/image_cache/drivers/sqlite.py:393 #, python-format msgid "Error executing SQLite call. Got error: %s" msgstr "Error executing SQLite call. Got error: %s" -#: glance/image_cache/drivers/sqlite.py:408 -#: glance/image_cache/drivers/xattr.py:337 +#: glance/image_cache/drivers/sqlite.py:409 +#: glance/image_cache/drivers/xattr.py:338 #, python-format msgid "Not queueing image '%s'. Already cached." msgstr "Not queueing image '%s'. Already cached." -#: glance/image_cache/drivers/sqlite.py:413 -#: glance/image_cache/drivers/xattr.py:342 +#: glance/image_cache/drivers/sqlite.py:414 +#: glance/image_cache/drivers/xattr.py:343 #, python-format msgid "Not queueing image '%s'. Already being written to cache" msgstr "Not queueing image '%s'. Already being written to cache" -#: glance/image_cache/drivers/sqlite.py:419 -#: glance/image_cache/drivers/xattr.py:348 +#: glance/image_cache/drivers/sqlite.py:420 +#: glance/image_cache/drivers/xattr.py:349 #, python-format msgid "Not queueing image '%s'. Already queued." msgstr "Not queueing image '%s'. Already queued." -#: glance/image_cache/drivers/sqlite.py:437 +#: glance/image_cache/drivers/sqlite.py:438 #, python-format msgid "Removed invalid cache file %s" msgstr "Removed invalid cache file %s" -#: glance/image_cache/drivers/sqlite.py:451 +#: glance/image_cache/drivers/sqlite.py:452 #, python-format msgid "Removed stalled cache file %s" msgstr "Removed stalled cache file %s" -#: glance/image_cache/drivers/sqlite.py:453 +#: glance/image_cache/drivers/sqlite.py:454 #, python-format msgid "Failed to delete file %(path)s. Got error: %(e)s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:487 -#: glance/image_cache/drivers/xattr.py:438 -#, python-format -msgid "Deleting image cache file '%s'" -msgstr "Deleting image cache file '%s'" - -#: glance/image_cache/drivers/sqlite.py:490 -#: glance/image_cache/drivers/xattr.py:441 +#: glance/image_cache/drivers/sqlite.py:491 +#: glance/image_cache/drivers/xattr.py:442 #, python-format msgid "Cached image file '%s' doesn't exist, unable to delete" msgstr "Cached image file '%s' doesn't exist, unable to delete" -#: glance/image_cache/drivers/xattr.py:104 +#: glance/image_cache/drivers/xattr.py:105 #, python-format msgid "" "The device housing the image cache directory %(image_cache_dir)s does not" @@ -2585,27 +2316,7 @@ msgstr "" "user_xattr option to the appropriate line for the device housing the " "cache directory." -#: glance/image_cache/drivers/xattr.py:280 -#, python-format -msgid "Removing image '%s' from queue after caching it." -msgstr "Removing image '%s' from queue after caching it." - -#: glance/image_cache/drivers/xattr.py:353 -#, python-format -msgid "Queueing image '%s'." -msgstr "Queueing image '%s'." - -#: glance/image_cache/drivers/xattr.py:383 -#, python-format -msgid "No grace period, reaping '%(path)s' immediately" -msgstr "No grace period, reaping '%(path)s' immediately" - -#: glance/image_cache/drivers/xattr.py:388 -#, python-format -msgid "Cache entry '%(path)s' exceeds grace period, (%(age)i s > %(grace)i s)" -msgstr "Cache entry '%(path)s' exceeds grace period, (%(age)i s > %(grace)i s)" - -#: glance/image_cache/drivers/xattr.py:394 +#: glance/image_cache/drivers/xattr.py:395 #, python-format msgid "Reaped %(reaped)s %(entry_type)s cache entries" msgstr "Reaped %(reaped)s %(entry_type)s cache entries" @@ -2625,11 +2336,11 @@ msgstr "" msgid "Reloading cached file %s" msgstr "" -#: glance/openstack/common/gettextutils.py:297 +#: glance/openstack/common/gettextutils.py:320 msgid "Message objects do not support addition." msgstr "" -#: glance/openstack/common/gettextutils.py:306 +#: glance/openstack/common/gettextutils.py:330 msgid "" "Message objects do not support str() because they may contain non-ascii " "characters. Please use unicode() or translate() instead." @@ -2675,44 +2386,26 @@ msgstr "" msgid "Semaphore / lock released \"%(function)s\"" msgstr "" -#: glance/openstack/common/log.py:313 +#: glance/openstack/common/log.py:325 #, python-format msgid "Deprecated: %s" msgstr "Deprecated: %s" -#: glance/openstack/common/log.py:416 +#: glance/openstack/common/log.py:436 #, python-format msgid "Error loading logging config %(log_config)s: %(err_msg)s" msgstr "" -#: glance/openstack/common/log.py:467 +#: glance/openstack/common/log.py:487 #, python-format msgid "syslog facility must be one of: %s" msgstr "syslog facility must be one of: %s" -#: glance/openstack/common/log.py:688 +#: glance/openstack/common/log.py:714 #, python-format msgid "Fatal call to deprecated config: %(msg)s" msgstr "Fatal call to deprecated config: %(msg)s" -#: glance/openstack/common/loopingcall.py:84 -#, python-format -msgid "task run outlasted interval by %s sec" -msgstr "" - -#: glance/openstack/common/loopingcall.py:91 -msgid "in fixed duration looping call" -msgstr "" - -#: glance/openstack/common/loopingcall.py:131 -#, python-format -msgid "Dynamic looping call sleeping for %.02f seconds" -msgstr "" - -#: glance/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "" - #: glance/openstack/common/policy.py:395 #, python-format msgid "Failed to understand rule %(rule)s" @@ -2762,135 +2455,92 @@ msgstr "" msgid "process_input not supported over SSH" msgstr "" -#: glance/openstack/common/service.py:112 -#: glance/openstack/common/service.py:275 -msgid "Full set of CONF:" -msgstr "" - -#: glance/openstack/common/service.py:121 -#: glance/openstack/common/service.py:218 -#, python-format -msgid "Caught %s, exiting" -msgstr "" - -#: glance/openstack/common/service.py:164 -msgid "Parent process has died unexpectedly, exiting" -msgstr "" - -#: glance/openstack/common/service.py:200 -msgid "Forking too fast, sleeping" -msgstr "" - -#: glance/openstack/common/service.py:223 -msgid "Unhandled exception" -msgstr "" - -#: glance/openstack/common/service.py:230 -#, python-format -msgid "Started child %d" -msgstr "" - -#: glance/openstack/common/service.py:257 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "" - -#: glance/openstack/common/service.py:261 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "" - -#: glance/openstack/common/service.py:265 -#, python-format -msgid "pid %d not in child list" -msgstr "" - -#: glance/openstack/common/service.py:293 -#, python-format -msgid "Caught %s, stopping children" -msgstr "" - -#: glance/openstack/common/service.py:304 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "" - -#: glance/openstack/common/strutils.py:86 +#: glance/openstack/common/strutils.py:92 #, python-format msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s" msgstr "" -#: glance/openstack/common/strutils.py:188 +#: glance/openstack/common/strutils.py:197 #, python-format -msgid "Invalid string format: %s" +msgid "Invalid unit system: \"%s\"" msgstr "" -#: glance/openstack/common/strutils.py:195 +#: glance/openstack/common/strutils.py:206 #, python-format -msgid "Unknown byte multiplier: %s" +msgid "Invalid string format: %s" msgstr "" #: glance/openstack/common/db/exception.py:44 msgid "Invalid Parameter: Unicode is not supported by the current database." msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:188 +#: glance/openstack/common/db/sqlalchemy/migration.py:190 msgid "version should be an integer" msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:216 +#: glance/openstack/common/db/sqlalchemy/migration.py:219 #, python-format msgid "" "Tables \"%s\" have non utf8 collation, please make sure all tables are " "CHARSET=utf8" msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:240 +#: glance/openstack/common/db/sqlalchemy/migration.py:243 msgid "" "The database is not under version control, but has tables. Please stamp " "the current version of the schema manually." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:164 +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:92 +#, python-format +msgid "config_path is %s" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:197 +#, python-format +msgid "latest version is %s" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/utils.py:162 #, python-format msgid "" "There is no `deleted` column in `%s` table. Project doesn't use soft-" "deleted feature." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:176 +#: glance/openstack/common/db/sqlalchemy/utils.py:174 #, python-format msgid "Unrecognized read_deleted value '%s'" msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:183 +#: glance/openstack/common/db/sqlalchemy/utils.py:181 #, python-format msgid "There is no `project_id` column in `%s` table." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:241 +#: glance/openstack/common/db/sqlalchemy/utils.py:243 msgid "model should be a subclass of ModelBase" msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:284 +#: glance/openstack/common/db/sqlalchemy/utils.py:286 #, python-format msgid "" "Please specify column %s in col_name_col_instance param. It is required " "because column has unsupported type by sqlite)." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:290 +#: glance/openstack/common/db/sqlalchemy/utils.py:292 #, python-format msgid "" "col_name_col_instance param has wrong type of column instance for column " "%s It should be instance of sqlalchemy.Column." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:391 +#: glance/openstack/common/db/sqlalchemy/utils.py:400 msgid "Unsupported id columns type" msgstr "" -#: glance/quota/__init__.py:316 +#: glance/quota/__init__.py:318 #, python-format msgid "Cleaning up %s after exceeding the quota." msgstr "" @@ -2903,135 +2553,135 @@ msgstr "Address to find the registry server." msgid "Port the registry server is listening on." msgstr "Port the registry server is listening on." -#: glance/registry/api/v1/images.py:105 +#: glance/registry/api/v1/images.py:106 #, python-format msgid "Invalid marker. Image %(id)s could not be found." msgstr "" -#: glance/registry/api/v1/images.py:107 glance/registry/api/v1/images.py:112 +#: glance/registry/api/v1/images.py:108 glance/registry/api/v1/images.py:113 msgid "Invalid marker. Image could not be found." msgstr "Invalid marker. Image could not be found." -#: glance/registry/api/v1/images.py:110 glance/registry/api/v1/images.py:328 -#: glance/registry/api/v1/images.py:359 glance/registry/api/v1/images.py:478 +#: glance/registry/api/v1/images.py:111 glance/registry/api/v1/images.py:329 +#: glance/registry/api/v1/images.py:360 glance/registry/api/v1/images.py:479 #: glance/registry/api/v1/members.py:72 glance/registry/api/v1/members.py:106 #: glance/registry/api/v1/members.py:219 glance/registry/api/v1/members.py:279 #, python-format msgid "Access denied to image %(id)s but returning 'not found'" msgstr "Access denied to image %(id)s but returning 'not found'" -#: glance/registry/api/v1/images.py:115 +#: glance/registry/api/v1/images.py:116 msgid "Unable to get images" msgstr "" -#: glance/registry/api/v1/images.py:147 +#: glance/registry/api/v1/images.py:148 msgid "Returning image list" msgstr "Returning image list" -#: glance/registry/api/v1/images.py:165 +#: glance/registry/api/v1/images.py:166 msgid "Returning detailed image list" msgstr "Returning detailed image list" -#: glance/registry/api/v1/images.py:216 +#: glance/registry/api/v1/images.py:217 msgid "Unrecognized changes-since value" msgstr "Unrecognized changes-since value" -#: glance/registry/api/v1/images.py:221 +#: glance/registry/api/v1/images.py:222 msgid "protected must be True, or False" msgstr "protected must be True, or False" -#: glance/registry/api/v1/images.py:268 +#: glance/registry/api/v1/images.py:269 #, python-format msgid "Unsupported sort_key. Acceptable values: %s" msgstr "Unsupported sort_key. Acceptable values: %s" -#: glance/registry/api/v1/images.py:277 +#: glance/registry/api/v1/images.py:278 #, python-format msgid "Unsupported sort_dir. Acceptable values: %s" msgstr "Unsupported sort_dir. Acceptable values: %s" -#: glance/registry/api/v1/images.py:303 +#: glance/registry/api/v1/images.py:304 msgid "is_public must be None, True, or False" msgstr "is_public must be None, True, or False" -#: glance/registry/api/v1/images.py:319 +#: glance/registry/api/v1/images.py:320 #, python-format msgid "Successfully retrieved image %(id)s" msgstr "Successfully retrieved image %(id)s" -#: glance/registry/api/v1/images.py:322 glance/registry/api/v1/images.py:363 -#: glance/registry/api/v1/images.py:466 glance/registry/api/v1/members.py:66 +#: glance/registry/api/v1/images.py:323 glance/registry/api/v1/images.py:364 +#: glance/registry/api/v1/images.py:467 glance/registry/api/v1/members.py:66 #: glance/registry/api/v1/members.py:100 glance/registry/api/v1/members.py:213 #: glance/registry/api/v1/members.py:273 #, python-format msgid "Image %(id)s not found" msgstr "Image %(id)s not found" -#: glance/registry/api/v1/images.py:332 +#: glance/registry/api/v1/images.py:333 #, python-format msgid "Unable to show image %s" msgstr "" -#: glance/registry/api/v1/images.py:349 +#: glance/registry/api/v1/images.py:350 #, python-format msgid "Successfully deleted image %(id)s" msgstr "Successfully deleted image %(id)s" -#: glance/registry/api/v1/images.py:353 +#: glance/registry/api/v1/images.py:354 #, python-format msgid "Delete denied for public image %(id)s" msgstr "Delete denied for public image %(id)s" -#: glance/registry/api/v1/images.py:367 +#: glance/registry/api/v1/images.py:368 #, python-format msgid "Unable to delete image %s" msgstr "" -#: glance/registry/api/v1/images.py:392 +#: glance/registry/api/v1/images.py:393 #, python-format msgid "Rejecting image creation request for invalid image id '%(bad_id)s'" msgstr "Rejecting image creation request for invalid image id '%(bad_id)s'" -#: glance/registry/api/v1/images.py:395 +#: glance/registry/api/v1/images.py:396 msgid "Invalid image id format" msgstr "Invalid image id format" -#: glance/registry/api/v1/images.py:405 +#: glance/registry/api/v1/images.py:406 #, python-format msgid "Successfully created image %(id)s" msgstr "Successfully created image %(id)s" -#: glance/registry/api/v1/images.py:409 +#: glance/registry/api/v1/images.py:410 #, python-format msgid "Image with identifier %s already exists!" msgstr "Image with identifier %s already exists!" -#: glance/registry/api/v1/images.py:413 +#: glance/registry/api/v1/images.py:414 #, python-format msgid "Failed to add image metadata. Got error: %(e)s" msgstr "Failed to add image metadata. Got error: %(e)s" -#: glance/registry/api/v1/images.py:418 +#: glance/registry/api/v1/images.py:419 #, python-format msgid "Unable to create image %s" msgstr "" -#: glance/registry/api/v1/images.py:443 -#, python-format -msgid "Updating image %(id)s with metadata: %(image_data)r" -msgstr "Updating image %(id)s with metadata: %(image_data)r" - -#: glance/registry/api/v1/images.py:457 +#: glance/registry/api/v1/images.py:458 #, python-format msgid "Updating metadata for image %(id)s" msgstr "Updating metadata for image %(id)s" -#: glance/registry/api/v1/images.py:472 +#: glance/registry/api/v1/images.py:462 +#, python-format +msgid "Failed to update image metadata. Got error: %(e)s" +msgstr "Failed to update image metadata. Got error: %(e)s" + +#: glance/registry/api/v1/images.py:473 #, python-format msgid "Update denied for public image %(id)s" msgstr "Update denied for public image %(id)s" -#: glance/registry/api/v1/images.py:489 +#: glance/registry/api/v1/images.py:490 #, python-format msgid "Unable to update image %s" msgstr "" @@ -3074,11 +2724,6 @@ msgstr "Successfully updated memberships for image %(id)s" msgid "Successfully updated a membership for image %(id)s" msgstr "Successfully updated a membership for image %(id)s" -#: glance/registry/api/v1/members.py:297 -#, python-format -msgid "%(id)s is not a member of image %(image_id)s" -msgstr "%(id)s is not a member of image %(image_id)s" - #: glance/registry/api/v1/members.py:300 glance/registry/api/v1/members.py:317 msgid "Membership could not be found." msgstr "Membership could not be found." @@ -3147,7 +2792,7 @@ msgstr "" "The period of time, in seconds, that the API server will wait for a " "registry request to complete. A value of 0 implies no timeout." -#: glance/registry/client/__init__.py:43 glance/store/__init__.py:55 +#: glance/registry/client/__init__.py:43 glance/store/__init__.py:53 msgid "" "Whether to pass through the user token when making requests to the " "registry." @@ -3195,35 +2840,12 @@ msgstr "Configuration option was not valid" msgid "Could not find required configuration option" msgstr "Could not find required configuration option" -#: glance/registry/client/v1/api.py:159 -msgid "Adding image metadata..." -msgstr "Adding image metadata..." - -#: glance/registry/client/v1/api.py:166 -#, python-format -msgid "Updating image metadata for image %s..." -msgstr "Updating image metadata for image %s..." - -#: glance/registry/client/v1/api.py:173 -#, python-format -msgid "Deleting image metadata for image %s..." -msgstr "Deleting image metadata for image %s..." - -#: glance/registry/client/v1/client.py:110 -#, python-format -msgid "" -"Registry request %(method)s %(action)s HTTP %(status)s request id " -"%(request_id)s" -msgstr "" -"Registry request %(method)s %(action)s HTTP %(status)s request id " -"%(request_id)s" - -#: glance/registry/client/v1/client.py:118 +#: glance/registry/client/v1/client.py:120 #, python-format msgid "Registry client request %(method)s %(action)s raised %(exc_name)s" msgstr "Registry client request %(method)s %(action)s raised %(exc_name)s" -#: glance/store/__init__.py:40 +#: glance/store/__init__.py:38 msgid "" "List of which store classes and store class locations are currently known" " to glance at startup." @@ -3231,7 +2853,7 @@ msgstr "" "List of which store classes and store class locations are currently known" " to glance at startup." -#: glance/store/__init__.py:43 +#: glance/store/__init__.py:41 msgid "" "Default scheme to use to store image data. The scheme must be registered " "by one of the stores defined by the 'known_stores' config option." @@ -3239,7 +2861,7 @@ msgstr "" "Default scheme to use to store image data. The scheme must be registered " "by one of the stores defined by the 'known_stores' config option." -#: glance/store/__init__.py:53 +#: glance/store/__init__.py:51 msgid "Turn on/off delayed delete." msgstr "Turn on/off delayed delete." @@ -3248,248 +2870,193 @@ msgstr "Turn on/off delayed delete." msgid "%s Skipping store driver." msgstr "" -#: glance/store/__init__.py:196 +#: glance/store/__init__.py:197 #, python-format msgid "" "%s not found in `known_store`. Stores need to be explicitly enabled in " "the configuration file." msgstr "" -#: glance/store/__init__.py:318 +#: glance/store/__init__.py:233 +#, python-format +msgid "Store for scheme %s not found" +msgstr "Store for scheme %s not found" + +#: glance/store/__init__.py:326 #, python-format msgid "Failed to delete image %s in store from URI" msgstr "" -#: glance/store/__init__.py:324 +#: glance/store/__init__.py:332 #, python-format msgid "Failed to delete image %(image_id)s from store (%(error)s)" msgstr "" -#: glance/store/__init__.py:359 +#: glance/store/__init__.py:367 #, python-format msgid "" "The image metadata key %(key)s has an invalid type of %(val)s. Only " "dict, list, and unicode are supported." msgstr "" -#: glance/store/__init__.py:383 +#: glance/store/__init__.py:391 #, python-format msgid "" "The storage driver %(store)s returned invalid metadata %(metadata)s. This" " must be a dictionary type" msgstr "" -#: glance/store/__init__.py:392 +#: glance/store/__init__.py:400 #, python-format msgid "" "A bad metadata structure was returned from the %(store)s storage driver: " "%(metadata)s. %(error)s." msgstr "" -#: glance/store/__init__.py:419 -msgid "Skipping store.set_acls... not implemented." -msgstr "Skipping store.set_acls... not implemented." - -#: glance/store/__init__.py:469 -#, python-format -msgid "Invalid location: %s" -msgstr "" - -#: glance/store/__init__.py:667 -#, python-format -msgid "Original locations is not empty: %s" -msgstr "" - -#: glance/store/__init__.py:739 -#, python-format -msgid "Get image %(id)s data failed: %(err)s." -msgstr "" - -#: glance/store/__init__.py:744 -#, python-format -msgid "Glance tried all locations to get data for image %s but all have failed." -msgstr "" - -#: glance/store/base.py:35 glance/tests/unit/test_store_base.py:51 -#, python-format -msgid "Caught '%(exception)s' exception." -msgstr "" - -#: glance/store/base.py:56 +#: glance/store/base.py:57 #, python-format msgid "Failed to configure store correctly: %s Disabling add method." msgstr "Failed to configure store correctly: %s Disabling add method." -#: glance/store/cinder.py:88 -#, python-format -msgid "Cinderclient connection created using URL: %s" +#: glance/store/cinder.py:115 +msgid "URI must start with 'cinder://'" msgstr "" -#: glance/store/cinder.py:118 -msgid "URI must start with cinder://" -msgstr "" - -#: glance/store/cinder.py:126 -#, python-format -msgid "URI contains invalid volume ID: %s" +#: glance/store/cinder.py:123 +msgid "URI contains invalid volume ID" msgstr "" -#: glance/store/cinder.py:149 +#: glance/store/cinder.py:146 msgid "Cinder storage requires a context." msgstr "" -#: glance/store/cinder.py:153 +#: glance/store/cinder.py:150 msgid "Cinder storage requires a service catalog." msgstr "" -#: glance/store/cinder.py:175 +#: glance/store/cinder.py:172 #, python-format msgid "Failed to get image size due to volume can not be found: %s" msgstr "" -#: glance/store/cinder.py:180 +#: glance/store/cinder.py:177 #, python-format msgid "Failed to get image size due to internal error: %s" msgstr "" -#: glance/store/filesystem.py:41 +#: glance/store/filesystem.py:42 msgid "Directory to which the Filesystem backend store writes images." msgstr "Directory to which the Filesystem backend store writes images." -#: glance/store/filesystem.py:44 +#: glance/store/filesystem.py:45 msgid "" "List of directories and its priorities to which the Filesystem backend " "store writes images." msgstr "" -#: glance/store/filesystem.py:47 +#: glance/store/filesystem.py:48 msgid "" "The path to a file which contains the metadata to be returned with any " "location associated with this store. The file must contain a valid JSON " "dict." msgstr "" -#: glance/store/filesystem.py:78 -#, python-format -msgid "No path specified in URI: %s" -msgstr "No path specified in URI: %s" +#: glance/store/filesystem.py:79 +msgid "No path specified in URI" +msgstr "" -#: glance/store/filesystem.py:131 +#: glance/store/filesystem.py:132 #, python-format msgid "Permission to write in %s denied" msgstr "" -#: glance/store/filesystem.py:148 +#: glance/store/filesystem.py:149 #, python-format msgid "Directory to write image files does not exist (%s). Creating." msgstr "Directory to write image files does not exist (%s). Creating." -#: glance/store/filesystem.py:162 +#: glance/store/filesystem.py:163 #, python-format msgid "Unable to create datadir: %s" msgstr "Unable to create datadir: %s" -#: glance/store/filesystem.py:176 +#: glance/store/filesystem.py:177 msgid "" "Specify at least 'filesystem_store_datadir' or " "'filesystem_store_datadirs' option" msgstr "" -#: glance/store/filesystem.py:183 +#: glance/store/filesystem.py:184 msgid "" "Specify either 'filesystem_store_datadir' or 'filesystem_store_datadirs' " "option" msgstr "" -#: glance/store/filesystem.py:220 +#: glance/store/filesystem.py:221 #, python-format msgid "" "Directory %(datadir_path)s specified multiple times in " "filesystem_store_datadirs option of filesystem configuration" msgstr "" -#: glance/store/filesystem.py:245 +#: glance/store/filesystem.py:246 #, python-format msgid "Invalid priority value %(priority)s in filesystem configuration" msgstr "" -#: glance/store/filesystem.py:252 +#: glance/store/filesystem.py:253 msgid "Invalid directory specified in filesystem configuration" msgstr "" -#: glance/store/filesystem.py:264 +#: glance/store/filesystem.py:265 #, python-format msgid "Image file %s not found" msgstr "Image file %s not found" -#: glance/store/filesystem.py:279 +#: glance/store/filesystem.py:280 #, python-format msgid "" "The JSON in the metadata file %(file)s could not be used: %(error)s An " "empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:286 +#: glance/store/filesystem.py:287 #, python-format msgid "" "The path for the metadata file %(file)s could not be opened: %(error)s " "An empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:293 +#: glance/store/filesystem.py:294 #, python-format msgid "" "An error occurred processing the storage systems meta data file: %s. An " "empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:309 -#, python-format -msgid "Found image at %s. Returning in ChunkedFile." -msgstr "Found image at %s. Returning in ChunkedFile." - -#: glance/store/filesystem.py:324 -#, python-format -msgid "Found image at %s." -msgstr "Found image at %s." - -#: glance/store/filesystem.py:343 -#, python-format -msgid "Deleting image at %(fn)s" -msgstr "Deleting image at %(fn)s" - -#: glance/store/filesystem.py:346 +#: glance/store/filesystem.py:348 #, python-format msgid "You cannot delete file %s" msgstr "You cannot delete file %s" -#: glance/store/filesystem.py:348 +#: glance/store/filesystem.py:350 #, python-format msgid "Image file %s does not exist" msgstr "Image file %s does not exist" -#: glance/store/filesystem.py:393 +#: glance/store/filesystem.py:395 #, python-format msgid "" "There is no enough disk space left on the image storage media. " "requested=%s" msgstr "" -#: glance/store/filesystem.py:424 +#: glance/store/filesystem.py:426 #, python-format msgid "Image file %s already exists!" msgstr "Image file %s already exists!" -#: glance/store/filesystem.py:450 -#, python-format -msgid "" -"Wrote %(bytes_written)d bytes to %(filepath)s with checksum " -"%(checksum_hex)s" -msgstr "" -"Wrote %(bytes_written)d bytes to %(filepath)s with checksum " -"%(checksum_hex)s" - -#: glance/store/filesystem.py:462 +#: glance/store/filesystem.py:464 #, python-format msgid "Unable to remove partial image data for image %(id)s: %(error)s" msgstr "" @@ -3498,172 +3065,128 @@ msgstr "" msgid "Missing dependencies: pymongo" msgstr "" -#: glance/store/gridfs.py:113 glance/store/s3.py:252 glance/store/swift.py:366 -#: glance/store/vmware_datastore.py:235 +#: glance/store/gridfs.py:113 glance/store/swift.py:422 +#: glance/store/vmware_datastore.py:257 #, python-format msgid "Could not find %(param)s in configuration options." msgstr "Could not find %(param)s in configuration options." -#: glance/store/gridfs.py:157 -#, python-format -msgid "Could not find %s image in GridFS" -msgstr "" - #: glance/store/gridfs.py:180 #, python-format msgid "GridFS already has an image at location %s" msgstr "" -#: glance/store/gridfs.py:183 -#, python-format -msgid "Adding a new image to GridFS with id %(id)s and size %(size)s" +#: glance/store/http.py:82 +msgid "Credentials are not well-formatted." msgstr "" -#: glance/store/gridfs.py:196 -#, python-format -msgid "Uploaded image %(id)s, md5 %(md5)s, length %(length)s to GridFS" -msgstr "" - -#: glance/store/http.py:81 -#, python-format -msgid "Credentials '%s' not well-formatted." -msgstr "Credentials '%s' not well-formatted." - #: glance/store/http.py:88 msgid "No address specified in HTTP URL" msgstr "No address specified in HTTP URL" -#: glance/store/http.py:154 -#, python-format -msgid "The HTTP URL exceeded %s maximum redirects." +#: glance/store/http.py:150 +msgid "The HTTP URL is invalid." +msgstr "" + +#: glance/store/http.py:174 +msgid "HTTP datastore could not find image at URI." msgstr "" -#: glance/store/http.py:166 +#: glance/store/http.py:177 #, python-format msgid "HTTP URL returned a %s status code." msgstr "HTTP URL returned a %s status code." -#: glance/store/http.py:173 +#: glance/store/http.py:184 #, python-format msgid "The HTTP URL attempted to redirect with an invalid %s status code." msgstr "" -#: glance/store/location.py:85 -#, python-format -msgid "Registering scheme %(k)s with %(v)s" -msgstr "" - -#: glance/store/rbd.py:51 +#: glance/store/rbd.py:55 msgid "" "RADOS images will be chunked into objects of this size (in megabytes). " "For best performance, this should be a power of two." msgstr "" -#: glance/store/rbd.py:55 +#: glance/store/rbd.py:59 msgid "RADOS pool in which images are stored." msgstr "RADOS pool in which images are stored." -#: glance/store/rbd.py:57 +#: glance/store/rbd.py:61 msgid "" "RADOS user to authenticate as (only applicable if using Cephx. If ," " a default will be chosen based on the client. section in " "rbd_store_ceph_conf)." msgstr "" -#: glance/store/rbd.py:61 +#: glance/store/rbd.py:65 msgid "" "Ceph configuration file path. If , librados will locate the default" " config. If using cephx authentication, this file should include a " "reference to the right keyring in a client. section." msgstr "" -#: glance/store/rbd.py:107 +#: glance/store/rbd.py:111 msgid "URI must start with rbd://" msgstr "URI must start with rbd://" -#: glance/store/rbd.py:108 glance/store/rbd.py:117 glance/store/rbd.py:130 -#: glance/store/rbd.py:136 -#, python-format -msgid "Invalid URI: %(uri)s: %(reason)s" -msgstr "Invalid URI: %(uri)s: %(reason)s" - -#: glance/store/rbd.py:116 +#: glance/store/rbd.py:119 msgid "URI contains non-ascii characters" msgstr "URI contains non-ascii characters" -#: glance/store/rbd.py:129 +#: glance/store/rbd.py:131 msgid "URI must have exactly 1 or 4 components" msgstr "URI must have exactly 1 or 4 components" -#: glance/store/rbd.py:135 +#: glance/store/rbd.py:136 msgid "URI cannot contain empty components" msgstr "URI cannot contain empty components" -#: glance/store/rbd.py:171 glance/store/rbd.py:235 glance/store/rbd.py:295 +#: glance/store/rbd.py:171 glance/store/rbd.py:295 #, python-format msgid "RBD image %s does not exist" msgstr "RBD image %s does not exist" -#: glance/store/rbd.py:198 glance/store/sheepdog.py:197 -#: glance/store/sheepdog.py:205 +#: glance/store/rbd.py:198 glance/store/sheepdog.py:198 +#: glance/store/sheepdog.py:214 #, python-format msgid "Error in store configuration: %s" msgstr "Error in store configuration: %s" -#: glance/store/rbd.py:282 -#, python-format -msgid "snapshot %(image)s@%(snap)s could not be unprotected because it is in use" -msgstr "" - -#: glance/store/rbd.py:297 -#, python-format -msgid "image %s could not be removed because it is in use" -msgstr "" - -#: glance/store/rbd.py:328 +#: glance/store/rbd.py:331 msgid "" "since image size is zero we will be doing resize-before-write for each " "chunk which will be considerably slower than normal" msgstr "" -#: glance/store/rbd.py:337 +#: glance/store/rbd.py:340 #, python-format msgid "RBD image %s already exists" msgstr "RBD image %s already exists" -#: glance/store/rbd.py:353 -#, python-format -msgid "resizing image to %s KiB" -msgstr "" - -#: glance/store/rbd.py:356 -#, python-format -msgid "writing chunk at offset %s" -msgstr "" - -#: glance/store/s3.py:37 +#: glance/store/s3.py:50 msgid "The host where the S3 server is listening." msgstr "The host where the S3 server is listening." -#: glance/store/s3.py:39 +#: glance/store/s3.py:52 msgid "The S3 query token access key." msgstr "The S3 query token access key." -#: glance/store/s3.py:41 +#: glance/store/s3.py:54 msgid "The S3 query token secret key." msgstr "The S3 query token secret key." -#: glance/store/s3.py:43 +#: glance/store/s3.py:56 msgid "The S3 bucket to be used to store the Glance data." msgstr "The S3 bucket to be used to store the Glance data." -#: glance/store/s3.py:45 +#: glance/store/s3.py:58 msgid "" "The local directory where uploads will be staged before they are " "transferred into S3." msgstr "" -#: glance/store/s3.py:48 +#: glance/store/s3.py:61 msgid "" "A boolean to determine if the S3 bucket should be created on upload if it" " does not exist or if an error should be returned to the user." @@ -3671,7 +3194,7 @@ msgstr "" "A boolean to determine if the S3 bucket should be created on upload if it" " does not exist or if an error should be returned to the user." -#: glance/store/s3.py:52 +#: glance/store/s3.py:65 msgid "" "The S3 calling format used to determine the bucket. Either subdomain or " "path can be used." @@ -3679,7 +3202,23 @@ msgstr "" "The S3 calling format used to determine the bucket. Either subdomain or " "path can be used." -#: glance/store/s3.py:115 +#: glance/store/s3.py:69 +msgid "" +"What size, in MB, should S3 start chunking image files and do a multipart" +" upload in S3." +msgstr "" + +#: glance/store/s3.py:73 +msgid "" +"What multipart upload part size, in MB, should S3 use when uploading " +"parts. The size must be greater than or equal to 5M." +msgstr "" + +#: glance/store/s3.py:77 +msgid "The number of thread pools to perform a multipart upload in S3." +msgstr "" + +#: glance/store/s3.py:198 msgid "" "URI cannot contain more than one occurrence of a scheme. If you have " "specified a URI like " @@ -3693,82 +3232,41 @@ msgstr "" " to change it to use the s3+https:// scheme, like so: " "s3+https://accesskey:secretkey@s3.amazonaws.com/bucket/key-id" -#: glance/store/s3.py:123 -#, python-format -msgid "Invalid store uri: %s" +#: glance/store/s3.py:232 +msgid "Badly formed S3 credentials" msgstr "" -#: glance/store/s3.py:149 -#, python-format -msgid "Badly formed S3 credentials %s" -msgstr "Badly formed S3 credentials %s" - -#: glance/store/s3.py:162 +#: glance/store/s3.py:245 msgid "Badly formed S3 URI. Missing s3 service URL." msgstr "Badly formed S3 URI. Missing s3 service URL." -#: glance/store/s3.py:165 -#, python-format -msgid "Badly formed S3 URI: %s" -msgstr "Badly formed S3 URI: %s" - -#: glance/store/s3.py:307 -#, python-format -msgid "" -"Retrieved image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" +#: glance/store/s3.py:248 +msgid "Badly formed S3 URI" msgstr "" -"Retrieved image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" - -#: glance/store/s3.py:367 -#, python-format -msgid "S3 already has an image at location %s" -msgstr "S3 already has an image at location %s" -#: glance/store/s3.py:371 +#: glance/store/s3.py:337 #, python-format msgid "" -"Adding image object to S3 using (s3_host=%(s3_host)s, " -"access_key=%(access_key)s, bucket=%(bucket)s, key=%(obj_name)s)" +"s3_store_large_object_chunk_size must be at least %(_s3_ck_min)d MB. You " +"configured it as %(_s3_ck_size)d MB" msgstr "" -"Adding image object to S3 using (s3_host=%(s3_host)s, " -"access_key=%(access_key)s, bucket=%(bucket)s, key=%(obj_name)s)" -#: glance/store/s3.py:393 +#: glance/store/s3.py:347 #, python-format -msgid "Writing request body file to temporary file for %s" -msgstr "Writing request body file to temporary file for %s" - -#: glance/store/s3.py:405 -#, python-format -msgid "Uploading temporary file to S3 for %s" -msgstr "Uploading temporary file to S3 for %s" - -#: glance/store/s3.py:414 -#, python-format -msgid "" -"Wrote %(size)d bytes to S3 key named %(obj_name)s with checksum " -"%(checksum_hex)s" +msgid "s3_store_thread_pools must be a positive integer. %s" msgstr "" -"Wrote %(size)d bytes to S3 key named %(obj_name)s with checksum " -"%(checksum_hex)s" -#: glance/store/s3.py:442 +#: glance/store/s3.py:471 #, python-format -msgid "" -"Deleting image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" -msgstr "" -"Deleting image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" +msgid "S3 already has an image at location %s" +msgstr "S3 already has an image at location %s" -#: glance/store/s3.py:464 +#: glance/store/s3.py:596 #, python-format -msgid "Could not find bucket with ID %s" +msgid "Failed to add image object to S3. key=%(obj_name)s" msgstr "" -#: glance/store/s3.py:505 +#: glance/store/s3.py:684 #, python-format msgid "" "Failed to add bucket to S3.\n" @@ -3777,7 +3275,7 @@ msgstr "" "Failed to add bucket to S3.\n" "Got error from S3: %(e)s" -#: glance/store/s3.py:509 +#: glance/store/s3.py:688 #, python-format msgid "" "The bucket %(bucket)s does not exist in S3. Please set the " @@ -3786,12 +3284,7 @@ msgstr "" "The bucket %(bucket)s does not exist in S3. Please set the " "s3_store_create_bucket_on_put option to add bucket to S3 automatically." -#: glance/store/s3.py:528 -#, python-format -msgid "Could not find key %(obj)s in bucket %(bucket)s" -msgstr "Could not find key %(obj)s in bucket %(bucket)s" - -#: glance/store/sheepdog.py:42 +#: glance/store/sheepdog.py:43 msgid "" "Images will be chunked into objects of this size (in megabytes). For best" " performance, this should be a power of two." @@ -3799,58 +3292,56 @@ msgstr "" "Images will be chunked into objects of this size (in megabytes). For best" " performance, this should be a power of two." -#: glance/store/sheepdog.py:46 +#: glance/store/sheepdog.py:47 msgid "Port of sheep daemon." msgstr "" -#: glance/store/sheepdog.py:48 +#: glance/store/sheepdog.py:49 msgid "IP address of sheep daemon." msgstr "" -#: glance/store/sheepdog.py:225 glance/store/sheepdog.py:244 -#: glance/store/sheepdog.py:305 +#: glance/store/sheepdog.py:150 +#, python-format +msgid "URI must start with '%s://'" +msgstr "" + +#: glance/store/sheepdog.py:154 +msgid "URI must contains well-formated image id" +msgstr "" + +#: glance/store/sheepdog.py:204 +#, python-format +msgid "Invalid address configuration of sheepdog store: %s" +msgstr "" + +#: glance/store/sheepdog.py:234 glance/store/sheepdog.py:253 +#: glance/store/sheepdog.py:314 #, python-format msgid "Sheepdog image %s does not exist" msgstr "" -#: glance/store/sheepdog.py:266 +#: glance/store/sheepdog.py:275 #, python-format msgid "Sheepdog image %s already exists" msgstr "" -#: glance/store/swift.py:49 +#: glance/store/swift.py:53 msgid "Whether to use ServiceNET to communicate with the Swift storage servers." msgstr "Whether to use ServiceNET to communicate with the Swift storage servers." -#: glance/store/swift.py:52 -msgid "The address where the Swift authentication service is listening." -msgstr "The address where the Swift authentication service is listening." - -#: glance/store/swift.py:55 -msgid "The user to authenticate against the Swift authentication service." -msgstr "" - -#: glance/store/swift.py:58 -msgid "" -"Auth key for the user authenticating against the Swift authentication " -"service." -msgstr "" -"Auth key for the user authenticating against the Swift authentication " -"service." - -#: glance/store/swift.py:61 +#: glance/store/swift.py:56 msgid "" "Version of the authentication service to use. Valid versions are 2 for " -"keystone and 1 for swauth and rackspace." +"keystone and 1 for swauth and rackspace. (deprecated)" msgstr "" -#: glance/store/swift.py:65 +#: glance/store/swift.py:60 msgid "" "If True, swiftclient won't check for a valid SSL certificate when " "authenticating." msgstr "" -#: glance/store/swift.py:68 +#: glance/store/swift.py:63 msgid "" "The region of the swift endpoint to be used for single tenant. This " "setting is only necessary if the tenant has multiple swift endpoints." @@ -3858,7 +3349,7 @@ msgstr "" "The region of the swift endpoint to be used for single tenant. This " "setting is only necessary if the tenant has multiple swift endpoints." -#: glance/store/swift.py:72 +#: glance/store/swift.py:67 msgid "" "A string giving the endpoint type of the swift service to use (publicURL," " adminURL or internalURL). This setting is only used if " @@ -3868,7 +3359,7 @@ msgstr "" " adminURL or internalURL). This setting is only used if " "swift_store_auth_version is 2." -#: glance/store/swift.py:77 +#: glance/store/swift.py:72 msgid "" "A string giving the service type of the swift service to use. This " "setting is only used if swift_store_auth_version is 2." @@ -3876,7 +3367,7 @@ msgstr "" "A string giving the service type of the swift service to use. This " "setting is only used if swift_store_auth_version is 2." -#: glance/store/swift.py:82 +#: glance/store/swift.py:77 msgid "" "Container within the account that the account should use for storing " "images in Swift." @@ -3884,13 +3375,13 @@ msgstr "" "Container within the account that the account should use for storing " "images in Swift." -#: glance/store/swift.py:86 +#: glance/store/swift.py:81 msgid "" "The size, in MB, that Glance will start chunking image files and do a " "large object manifest in Swift." msgstr "" -#: glance/store/swift.py:90 +#: glance/store/swift.py:85 msgid "" "The amount of data written to a temporary disk buffer during the process " "of chunking the image file." @@ -3898,7 +3389,7 @@ msgstr "" "The amount of data written to a temporary disk buffer during the process " "of chunking the image file." -#: glance/store/swift.py:93 +#: glance/store/swift.py:88 msgid "" "A boolean value that determines if we create the container if it does not" " exist." @@ -3906,7 +3397,7 @@ msgstr "" "A boolean value that determines if we create the container if it does not" " exist." -#: glance/store/swift.py:96 +#: glance/store/swift.py:91 msgid "" "If set to True, enables multi-tenant storage mode which causes Glance " "images to be stored in tenant specific Swift accounts." @@ -3914,7 +3405,7 @@ msgstr "" "If set to True, enables multi-tenant storage mode which causes Glance " "images to be stored in tenant specific Swift accounts." -#: glance/store/swift.py:100 +#: glance/store/swift.py:95 msgid "" "A list of tenants that will be granted read/write access on all Swift " "containers created by Glance in multi-tenant mode." @@ -3922,37 +3413,45 @@ msgstr "" "A list of tenants that will be granted read/write access on all Swift " "containers created by Glance in multi-tenant mode." -#: glance/store/swift.py:104 +#: glance/store/swift.py:99 msgid "" "If set to False, disables SSL layer compression of https swift requests. " "Setting to False may improve performance for images which are already in " "a compressed format, eg qcow2." msgstr "" -#: glance/store/swift.py:109 +#: glance/store/swift.py:104 msgid "" "The number of times a Swift download will be retried before the request " "fails." msgstr "" -#: glance/store/swift.py:129 +#: glance/store/swift.py:126 #, python-format msgid "Swift exception raised %s" msgstr "" -#: glance/store/swift.py:134 +#: glance/store/swift.py:131 #, python-format msgid "Stopping Swift retries after %d attempts" msgstr "" -#: glance/store/swift.py:139 +#: glance/store/swift.py:136 #, python-format msgid "" "Retrying Swift connection (%(retries)d/%(max_retries)d) with " "range=%(start)d-%(end)d" msgstr "" -#: glance/store/swift.py:214 +#: glance/store/swift.py:223 +msgid "Badly formed Swift URI. Credentials not found foraccount reference" +msgstr "" + +#: glance/store/swift.py:274 +msgid "Badly formed Swift URI." +msgstr "Badly formed Swift URI." + +#: glance/store/swift.py:293 msgid "" "URI cannot contain more than one occurrence of a scheme. If you have " "specified a URI like " @@ -3966,61 +3465,25 @@ msgstr "" " it to use the swift+http:// scheme, like so: " "swift+http://user:pass@authurl.com/v1/container/obj" -#: glance/store/swift.py:220 -#, python-format -msgid "Invalid store URI: %(reason)s" -msgstr "Invalid store URI: %(reason)s" - -#: glance/store/swift.py:264 -msgid "Badly formed Swift URI." -msgstr "Badly formed Swift URI." - -#: glance/store/swift.py:328 +#: glance/store/swift.py:384 #, python-format msgid "Swift could not find object %s." msgstr "" -#: glance/store/swift.py:375 -#, python-format -msgid "Deleting chunk %s" -msgstr "Deleting chunk %s" - -#: glance/store/swift.py:379 +#: glance/store/swift.py:435 #, python-format msgid "Failed to delete orphaned chunk %(container)s/%(chunk)s" msgstr "" -#: glance/store/swift.py:391 -#, python-format -msgid "Adding image object '%(obj_name)s' to Swift" -msgstr "Adding image object '%(obj_name)s' to Swift" - -#: glance/store/swift.py:411 -msgid "Cannot determine image size. Adding as a segmented object to Swift." -msgstr "Cannot determine image size. Adding as a segmented object to Swift." - -#: glance/store/swift.py:440 +#: glance/store/swift.py:496 msgid "Error during chunked upload to backend, deleting stale chunks" msgstr "" -#: glance/store/swift.py:447 -#, python-format -msgid "" -"Wrote chunk %(chunk_name)s (%(chunk_id)d/%(total_chunks)s) of length " -"%(bytes_read)d to Swift returning MD5 of content: %(chunk_etag)s" -msgstr "" -"Wrote chunk %(chunk_name)s (%(chunk_id)d/%(total_chunks)s) of length " -"%(bytes_read)d to Swift returning MD5 of content: %(chunk_etag)s" - -#: glance/store/swift.py:461 -msgid "Deleting final zero-length chunk" -msgstr "Deleting final zero-length chunk" - -#: glance/store/swift.py:498 +#: glance/store/swift.py:559 msgid "Swift already has an image at this location" msgstr "Swift already has an image at this location" -#: glance/store/swift.py:500 +#: glance/store/swift.py:561 #, python-format msgid "" "Failed to add object to Swift.\n" @@ -4029,11 +3492,11 @@ msgstr "" "Failed to add object to Swift.\n" "Got error from Swift: %(e)s" -#: glance/store/swift.py:541 glance/store/swift.py:702 +#: glance/store/swift.py:602 glance/store/swift.py:787 msgid "Swift could not find image at URI." msgstr "Swift could not find image at URI." -#: glance/store/swift.py:562 +#: glance/store/swift.py:626 #, python-format msgid "" "Failed to add container to Swift.\n" @@ -4042,7 +3505,7 @@ msgstr "" "Failed to add container to Swift.\n" "Got error from Swift: %(e)s" -#: glance/store/swift.py:566 +#: glance/store/swift.py:630 #, python-format msgid "" "The container %(container)s does not exist in Swift. Please set the " @@ -4053,20 +3516,32 @@ msgstr "" "swift_store_create_container_on_put optionto add container to Swift " "automatically." -#: glance/store/swift.py:610 +#: glance/store/swift.py:660 +msgid "A value for swift_store_auth_address is required." +msgstr "" + +#: glance/store/swift.py:673 +msgid "A value for swift_store_ref_params is required." +msgstr "" + +#: glance/store/swift.py:690 +msgid "Location credentials are invalid" +msgstr "" + +#: glance/store/swift.py:695 msgid "Location is missing user:password information." msgstr "Location is missing user:password information." -#: glance/store/swift.py:622 +#: glance/store/swift.py:707 #, python-format msgid "Badly formed tenant:user '%(user)s' in Swift URI" msgstr "Badly formed tenant:user '%(user)s' in Swift URI" -#: glance/store/swift.py:649 +#: glance/store/swift.py:734 msgid "Multi-tenant Swift storage requires a context." msgstr "Multi-tenant Swift storage requires a context." -#: glance/store/swift.py:653 +#: glance/store/swift.py:738 msgid "Multi-tenant Swift storage requires a service catalog." msgstr "Multi-tenant Swift storage requires a service catalog." @@ -4117,63 +3592,53 @@ msgstr "" msgid "Allow to perform insecure SSL requests to ESX/VC." msgstr "" -#: glance/store/vmware_datastore.py:165 +#: glance/store/vmware_datastore.py:189 #, python-format -msgid "URI %(uri)s must start with %(scheme)s://" +msgid "URI must start with %s://" msgstr "" -#: glance/store/vmware_datastore.py:181 -#, python-format -msgid "Badly formed VMware datastore URI %(uri)s." +#: glance/store/vmware_datastore.py:204 +msgid "Badly formed VMware datastore URI" msgstr "" -#: glance/store/vmware_datastore.py:222 +#: glance/store/vmware_datastore.py:244 #, python-format msgid "Could not find datastore %(ds_name)s in datacenter %(dc_path)s" msgstr "" -#: glance/store/vmware_datastore.py:280 glance/store/vmware_datastore.py:288 +#: glance/store/vmware_datastore.py:304 glance/store/vmware_datastore.py:312 #, python-format msgid "Failed to upload content of image %(image)s" msgstr "" -#: glance/store/vmware_datastore.py:284 +#: glance/store/vmware_datastore.py:308 #, python-format msgid "Image file %(image_id)s already exists!" msgstr "" -#: glance/store/vmware_datastore.py:359 +#: glance/store/vmware_datastore.py:383 #, python-format msgid "Failed to delete image %(image)s content." msgstr "" -#: glance/store/vmware_datastore.py:364 -#, python-format -msgid "The HTTP URL exceeded %(max_redirects)s maximum redirects." -msgstr "" - -#: glance/store/vmware_datastore.py:374 +#: glance/store/vmware_datastore.py:398 #, python-format msgid "Failed to access image %(image)s content." msgstr "" -#: glance/store/vmware_datastore.py:378 -msgid "VMware datastore could not find image at URI." -msgstr "" - -#: glance/store/vmware_datastore.py:381 +#: glance/store/vmware_datastore.py:405 #, python-format msgid "HTTP request returned a %(status)s status code." msgstr "" -#: glance/store/vmware_datastore.py:388 +#: glance/store/vmware_datastore.py:412 #, python-format msgid "" "The HTTP URL %(path)s attempted to redirect with an invalid %(status)s " "status code." msgstr "" -#: glance/tests/unit/test_migrations.py:927 +#: glance/tests/unit/test_migrations.py:929 #, python-format msgid "location: %s data lost" msgstr "location: %s data lost" diff --git a/glance/locale/es/LC_MESSAGES/glance-log-info.po b/glance/locale/es/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..3ed97a6de7 --- /dev/null +++ b/glance/locale/es/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/glance/language/" +"es/)\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Eliminando registro duplicado con id: %(id)s de la tabla: %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/fr/LC_MESSAGES/glance-log-critical.po b/glance/locale/fr/LC_MESSAGES/glance-log-critical.po new file mode 100644 index 0000000000..4671c006f1 --- /dev/null +++ b/glance/locale/fr/LC_MESSAGES/glance-log-critical.po @@ -0,0 +1,23 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-30 06:12+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: French (http://www.transifex.com/projects/p/glance/language/" +"fr/)\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#~ msgid "DB exceeded retry limit." +#~ msgstr "DB dépassé limite de tentatives" diff --git a/glance/locale/fr/LC_MESSAGES/glance-log-error.po b/glance/locale/fr/LC_MESSAGES/glance-log-error.po new file mode 100644 index 0000000000..c3cd8f0c6b --- /dev/null +++ b/glance/locale/fr/LC_MESSAGES/glance-log-error.po @@ -0,0 +1,56 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: French (http://www.transifex.com/projects/p/glance/language/" +"fr/)\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: glance/openstack/common/db/api.py:72 +msgid "DB exceeded retry limit." +msgstr "DB dépassé limite de tentatives" + +#: glance/openstack/common/db/api.py:76 +msgid "DB connection error." +msgstr "erreurs de connexion DB" + +#: glance/openstack/common/db/sqlalchemy/session.py:460 +msgid "DB exception wrapped." +msgstr "Exception BD encapsulée." + +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:268 +#, python-format +msgid "Failed to migrate to version %(version)s on engine %(engine)s" +msgstr "" + +#: glance/store/s3.py:124 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d, status=" +"%(status)d, reason=%(reason)s" +msgstr "" + +#: glance/store/s3.py:133 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d due to internal " +"error: %(err)s" +msgstr "" + +#: glance/store/s3.py:593 +#, python-format +msgid "Some parts failed to upload to S3. Aborted the object key=%(obj_name)s" +msgstr "" diff --git a/glance/locale/fr/LC_MESSAGES/glance-log-info.po b/glance/locale/fr/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..6a994de077 --- /dev/null +++ b/glance/locale/fr/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: French (http://www.transifex.com/projects/p/glance/language/" +"fr/)\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Suppression ligne en double avec l'ID : %(id)s de la table : %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/glance-log-critical.pot b/glance/locale/glance-log-critical.pot new file mode 100644 index 0000000000..0a1ec83f0a --- /dev/null +++ b/glance/locale/glance-log-critical.pot @@ -0,0 +1,19 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# FIRST AUTHOR , 2014. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: glance 2014.2.dev41.gb7968cf\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" + diff --git a/glance/locale/glance-log-error.pot b/glance/locale/glance-log-error.pot new file mode 100644 index 0000000000..83880c1c5b --- /dev/null +++ b/glance/locale/glance-log-error.pot @@ -0,0 +1,55 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# FIRST AUTHOR , 2014. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: glance 2014.2.dev41.gb7968cf\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" + +#: glance/openstack/common/db/api.py:72 +msgid "DB exceeded retry limit." +msgstr "" + +#: glance/openstack/common/db/api.py:76 +msgid "DB connection error." +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:460 +msgid "DB exception wrapped." +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:268 +#, python-format +msgid "Failed to migrate to version %(version)s on engine %(engine)s" +msgstr "" + +#: glance/store/s3.py:124 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d, " +"status=%(status)d, reason=%(reason)s" +msgstr "" + +#: glance/store/s3.py:133 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d due to " +"internal error: %(err)s" +msgstr "" + +#: glance/store/s3.py:593 +#, python-format +msgid "Some parts failed to upload to S3. Aborted the object key=%(obj_name)s" +msgstr "" + diff --git a/glance/locale/glance-log-info.pot b/glance/locale/glance-log-info.pot new file mode 100644 index 0000000000..704d2e3c3c --- /dev/null +++ b/glance/locale/glance-log-info.pot @@ -0,0 +1,60 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# FIRST AUTHOR , 2014. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: glance 2014.2.dev41.gb7968cf\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, " +"key=%(key)s, UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" + diff --git a/glance/locale/glance-log-warning.pot b/glance/locale/glance-log-warning.pot new file mode 100644 index 0000000000..68716c660c --- /dev/null +++ b/glance/locale/glance-log-warning.pot @@ -0,0 +1,54 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# FIRST AUTHOR , 2014. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: glance 2014.2.dev41.gb7968cf\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" + +#: glance/openstack/common/network_utils.py:146 +msgid "tcp_keepidle not available on your system" +msgstr "" + +#: glance/openstack/common/network_utils.py:153 +msgid "tcp_keepintvl not available on your system" +msgstr "" + +#: glance/openstack/common/network_utils.py:160 +msgid "tcp_keepknt not available on your system" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:506 +#, python-format +msgid "Database server has gone away: %s" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:559 +msgid "Unable to detect effective SQL mode" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:567 +#, python-format +msgid "MySQL SQL mode is '%s', consider enabling TRADITIONAL or STRICT_ALL_TABLES" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/session.py:673 +#, python-format +msgid "SQL connection failed. %s attempts left." +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/utils.py:97 +msgid "Id not in sort_keys; is sort_keys unique?" +msgstr "" + diff --git a/glance/locale/glance.pot b/glance/locale/glance.pot index c1dbd296e5..b554a2ad46 100644 --- a/glance/locale/glance.pot +++ b/glance/locale/glance.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: glance jenkins.glance.propose.translation.update.360\n" +"Project-Id-Version: glance 2014.2.dev41.gb7968cf\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2014-03-26 06:02+0000\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,284 +17,289 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 1.3\n" -#: glance/notifier.py:28 -msgid "" -"Notifications can be sent when images are create, updated or deleted. " -"There are three methods of sending notifications, logging (via the " -"log_file directive), rabbit (via a rabbitmq queue), qpid (via a Qpid " -"message queue), or noop (no notifications sent, the default). " -"(DEPRECATED)" +#: glance/location.py:79 +msgid "Invalid location" +msgstr "" + +#: glance/location.py:273 +msgid "Invalid locations" +msgstr "" + +#: glance/location.py:279 +#, python-format +msgid "Original locations is not empty: %s" +msgstr "" + +#: glance/location.py:342 glance/common/exception.py:345 +msgid "No image data could be found" +msgstr "" + +#: glance/location.py:351 +#, python-format +msgid "Get image %(id)s data failed: %(err)s." msgstr "" -#: glance/notifier.py:68 -msgid "notifier_strategy was deprecated in favor of `notification_driver`" +#: glance/location.py:356 +#, python-format +msgid "Glance tried all locations to get data for image %s but all have failed." msgstr "" -#: glance/notifier.py:229 glance/api/common.py:82 +#: glance/notifier.py:178 glance/api/common.py:86 #, python-format msgid "An error occurred during image.send notification: %(err)s" msgstr "" -#: glance/notifier.py:239 glance/api/v1/upload_utils.py:184 -#: glance/api/v2/image_data.py:107 +#: glance/notifier.py:195 glance/api/v1/upload_utils.py:185 +#: glance/api/v2/image_data.py:111 #, python-format msgid "Image storage media is full: %s" msgstr "" -#: glance/notifier.py:243 glance/api/v1/upload_utils.py:193 -#: glance/api/v2/image_data.py:128 +#: glance/notifier.py:199 glance/api/v1/upload_utils.py:194 +#: glance/api/v2/image_data.py:132 #, python-format msgid "Insufficient permissions on image storage media: %s" msgstr "" -#: glance/notifier.py:248 +#: glance/notifier.py:204 #, python-format msgid "Cannot save data for image %(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:254 +#: glance/notifier.py:211 #, python-format msgid "Unable to upload duplicate image data for image%(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:261 +#: glance/notifier.py:218 #, python-format msgid "Not allowed to upload image data for image %(image_id)s: %(error)s" msgstr "" -#: glance/notifier.py:267 +#: glance/notifier.py:224 #, python-format msgid "" "Image %(image_id)s could not be found after upload. The image may have " "been deleted during the upload: %(error)s" msgstr "" -#: glance/notifier.py:274 +#: glance/notifier.py:232 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to HTTP error: " "%(error)s" msgstr "" -#: glance/notifier.py:281 +#: glance/notifier.py:239 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to internal error:" " %(error)s" msgstr "" -#: glance/schema.py:58 +#: glance/schema.py:59 #, python-format msgid "custom properties (%(props)s) conflict with base properties" msgstr "" -#: glance/scrubber.py:37 glance/store/__init__.py:48 +#: glance/scrubber.py:38 glance/store/__init__.py:46 msgid "" "Directory that the scrubber will use to track information about what to " "delete. Make sure this is set in glance-api.conf and glance-" "scrubber.conf." msgstr "" -#: glance/scrubber.py:42 glance/store/__init__.py:58 +#: glance/scrubber.py:43 glance/store/__init__.py:56 msgid "The amount of time in seconds to delay before performing a delete." msgstr "" -#: glance/scrubber.py:45 +#: glance/scrubber.py:46 msgid "" "A boolean that determines if the scrubber should clean up the files it " "uses for taking data. Only one server in your deployment should be " "designated the cleanup host." msgstr "" -#: glance/scrubber.py:50 +#: glance/scrubber.py:51 msgid "" "Items must have a modified time that is older than this value in order to" " be candidates for cleanup." msgstr "" -#: glance/scrubber.py:134 +#: glance/scrubber.py:135 #, python-format msgid "%s file can not be read." msgstr "" -#: glance/scrubber.py:158 +#: glance/scrubber.py:159 #, python-format msgid "%s file can not be wrote." msgstr "" -#: glance/scrubber.py:183 glance/api/v1/images.py:1022 +#: glance/scrubber.py:184 glance/api/v1/images.py:1040 #, python-format msgid "Failed to find image to delete: %(e)s" msgstr "" -#: glance/scrubber.py:215 +#: glance/scrubber.py:216 #, python-format msgid "%s directory does not exist." msgstr "" -#: glance/scrubber.py:362 +#: glance/scrubber.py:363 #, python-format msgid "Starting Daemon: wakeup_time=%(wakeup_time)s threads=%(threads)s" msgstr "" -#: glance/scrubber.py:376 +#: glance/scrubber.py:377 msgid "Daemon Shutdown on KeyboardInterrupt" msgstr "" -#: glance/scrubber.py:380 -msgid "Running application" -msgstr "" - -#: glance/scrubber.py:383 -#, python-format -msgid "Next run scheduled in %s seconds" -msgstr "" - -#: glance/scrubber.py:388 +#: glance/scrubber.py:389 #, python-format msgid "Initializing scrubber with configuration: %s" msgstr "" -#: glance/scrubber.py:412 +#: glance/scrubber.py:413 #, python-format msgid "Can not %s scrub jobs from queue." msgstr "" -#: glance/scrubber.py:436 +#: glance/scrubber.py:437 #, python-format msgid "Scrubbing image %(id)s from %(count)d locations." msgstr "" -#: glance/scrubber.py:451 -#, python-format -msgid "Deleting URI from image %(image_id)s." -msgstr "" - -#: glance/scrubber.py:464 +#: glance/scrubber.py:465 #, python-format msgid "Failed to delete URI from image %(image_id)s" msgstr "" -#: glance/scrubber.py:476 +#: glance/scrubber.py:477 #, python-format msgid "%s file is not exists." msgstr "" -#: glance/scrubber.py:481 +#: glance/scrubber.py:482 #, python-format msgid "%s file contains conflicting cleanup timestamp." msgstr "" -#: glance/scrubber.py:500 +#: glance/scrubber.py:501 #, python-format msgid "%s file can not be created." msgstr "" -#: glance/scrubber.py:514 +#: glance/scrubber.py:516 #, python-format msgid "Getting images deleted before %s" msgstr "" -#: glance/api/authorization.py:118 glance/api/authorization.py:129 +#: glance/api/authorization.py:129 glance/api/authorization.py:140 #, python-format msgid "You cannot get image member for %s" msgstr "" -#: glance/api/authorization.py:137 +#: glance/api/authorization.py:148 #, python-format msgid "You cannot delete image member for %s" msgstr "" -#: glance/api/authorization.py:146 +#: glance/api/authorization.py:157 #, python-format msgid "You cannot add image member for %s" msgstr "" -#: glance/api/authorization.py:155 +#: glance/api/authorization.py:166 #, python-format msgid "You cannot update image member %s" msgstr "" -#: glance/api/authorization.py:174 +#: glance/api/authorization.py:185 #, python-format msgid "You are not permitted to create images owned by '%s'." msgstr "" -#: glance/api/authorization.py:192 +#: glance/api/authorization.py:203 msgid "You are not permitted to create image members for the image." msgstr "" -#: glance/api/authorization.py:197 glance/api/authorization.py:380 +#: glance/api/authorization.py:208 glance/api/authorization.py:399 msgid "Public images do not have members." msgstr "" -#: glance/api/authorization.py:213 +#: glance/api/authorization.py:224 #, python-format msgid "You are not permitted to modify '%(attr)s' on this %(resource)s." msgstr "" -#: glance/api/authorization.py:223 +#: glance/api/authorization.py:234 msgid "You are not permitted to modify locations for this image." msgstr "" -#: glance/api/authorization.py:247 +#: glance/api/authorization.py:258 #, python-format msgid "You are not permitted to modify '%s' on this image." msgstr "" -#: glance/api/authorization.py:251 +#: glance/api/authorization.py:262 msgid "You are not permitted to modify this image." msgstr "" -#: glance/api/authorization.py:264 +#: glance/api/authorization.py:275 msgid "You are not permitted to modify tags on this image." msgstr "" -#: glance/api/authorization.py:305 +#: glance/api/authorization.py:316 msgid "You are not permitted to delete this image." msgstr "" -#: glance/api/authorization.py:316 +#: glance/api/authorization.py:327 msgid "You are not permitted to upload data for this image." msgstr "" -#: glance/api/authorization.py:350 glance/api/authorization.py:354 -#: glance/api/authorization.py:358 +#: glance/api/authorization.py:364 glance/api/authorization.py:368 +#: glance/api/authorization.py:372 msgid "You are not permitted to set status on this task." msgstr "" -#: glance/api/authorization.py:420 +#: glance/api/authorization.py:431 #, python-format msgid "You are not permitted to create this task with owner as: %s" msgstr "" -#: glance/api/common.py:44 +#: glance/api/common.py:49 #, python-format msgid "" "An error occurred reading from backend storage for image %(image_id)s: " "%(err)s" msgstr "" -#: glance/api/common.py:51 +#: glance/api/common.py:55 #, python-format msgid "" "Backend storage for image %(image_id)s disconnected after writing only " "%(bytes_written)d bytes" msgstr "" -#: glance/api/common.py:56 +#: glance/api/common.py:60 #, python-format msgid "Corrupt image download for image %(image_id)s" msgstr "" -#: glance/api/common.py:134 +#: glance/api/common.py:112 +#, python-format +msgid "Invalid value for option user_storage_quota: %(users_quota)s" +msgstr "" + +#: glance/api/common.py:157 #, python-format msgid "" "User %(user)s attempted to upload an image of unknown size that will " "exceeed the quota. %(remaining)d bytes remaining." msgstr "" -#: glance/api/common.py:143 +#: glance/api/common.py:166 #, python-format msgid "" "User %(user)s attempted to upload an image of size %(size)d that will " @@ -309,22 +314,11 @@ msgstr "" msgid "The default policy to use." msgstr "" -#: glance/api/policy.py:83 -#, python-format -msgid "Loaded %(rule_type)spolicy rules: %(text_rules)s" -msgstr "" - #: glance/api/policy.py:96 msgid "Unable to find policy file" msgstr "" -#: glance/api/policy.py:106 -#, python-format -msgid "Loading policy from %s" -msgstr "" - -#: glance/api/policy.py:220 glance/quota/__init__.py:343 -#: glance/store/__init__.py:662 +#: glance/api/policy.py:220 glance/quota/__init__.py:344 #, python-format msgid "Invalid locations: %s" msgstr "" @@ -333,11 +327,6 @@ msgstr "" msgid "Initialized image cache middleware" msgstr "" -#: glance/api/middleware/cache.py:125 -#, python-format -msgid "Cache hit for image '%s'" -msgstr "" - #: glance/api/middleware/cache.py:132 #, python-format msgid "" @@ -350,11 +339,6 @@ msgstr "" msgid "could not find %s" msgstr "" -#: glance/api/middleware/cache.py:238 -#, python-format -msgid "Removing image %s from cache" -msgstr "" - #: glance/api/middleware/cache.py:250 msgid "Checksum header is missing." msgstr "" @@ -397,232 +381,105 @@ msgstr "" msgid "Determining version of request: %(method)s %(path)s Accept: %(accept)s" msgstr "" -#: glance/api/middleware/version_negotiation.py:53 -msgid "Using media-type versioning" -msgstr "" - -#: glance/api/middleware/version_negotiation.py:57 -msgid "Using url versioning" -msgstr "" - -#: glance/api/middleware/version_negotiation.py:64 -msgid "Unknown version. Returning version choices." -msgstr "" - -#: glance/api/middleware/version_negotiation.py:69 -#, python-format -msgid "Matched version: v%d" -msgstr "" - -#: glance/api/v1/controller.py:41 glance/api/v1/members.py:76 -#, python-format -msgid "Image with identifier %s not found" -msgstr "" - -#: glance/api/v1/controller.py:46 -msgid "Forbidden image access" -msgstr "" - -#: glance/api/v1/controller.py:59 -#, python-format -msgid "Image %s is not active" -msgstr "" - #: glance/api/v1/controller.py:81 #, python-format msgid "Store for image_id not found: %s" msgstr "" -#: glance/api/v1/images.py:73 +#: glance/api/v1/images.py:76 #, python-format msgid "Invalid disk format '%s' for image." msgstr "" -#: glance/api/v1/images.py:78 +#: glance/api/v1/images.py:81 #, python-format msgid "Invalid container format '%s' for image." msgstr "" -#: glance/api/v1/images.py:83 +#: glance/api/v1/images.py:86 #, python-format msgid "Image name too long: %d" msgstr "" -#: glance/api/v1/images.py:94 +#: glance/api/v1/images.py:97 msgid "" "Invalid mix of disk and container formats. When setting a disk or " "container format to one of 'aki', 'ari', or 'ami', the container and disk" " formats must match." msgstr "" -#: glance/api/v1/images.py:172 +#: glance/api/v1/images.py:175 #, python-format msgid "" "The limit has been exceeded on the number of allowed image properties. " "Attempted: %(num)s, Maximum: %(quota)s" msgstr "" -#: glance/api/v1/images.py:194 glance/api/v1/images.py:238 -#: glance/api/v1/images.py:272 -#, python-format -msgid "Property '%s' is protected" +#: glance/api/v1/images.py:338 +msgid "This operation is currently not permitted on Glance images details." msgstr "" -#: glance/api/v1/images.py:380 +#: glance/api/v1/images.py:389 #, python-format msgid "Bad value passed to filter %(filter)s got %(val)s" msgstr "" -#: glance/api/v1/images.py:420 -#, python-format -msgid "External sourcing not supported for store %s" -msgstr "" - -#: glance/api/v1/images.py:493 -#, python-format -msgid "Required store %s is invalid" -msgstr "" - -#: glance/api/v1/images.py:505 glance/api/v1/images.py:877 -#, python-format -msgid "Invalid location %s" -msgstr "" - -#: glance/api/v1/images.py:528 -#, python-format -msgid "An image with identifier %s already exists" -msgstr "" - -#: glance/api/v1/images.py:535 +#: glance/api/v1/images.py:544 #, python-format msgid "Failed to reserve image. Got error: %(e)s" msgstr "" -#: glance/api/v1/images.py:542 -msgid "Forbidden to reserve image." -msgstr "" - -#: glance/api/v1/images.py:569 -#, python-format -msgid "Copy from external source failed: %s" -msgstr "" - -#: glance/api/v1/images.py:578 -msgid "Content-Type must be application/octet-stream" -msgstr "" - -#: glance/api/v1/images.py:589 -#, python-format -msgid "Setting image %s to status 'saving'" -msgstr "" - -#: glance/api/v1/images.py:593 -#, python-format -msgid "Uploading image data for image %(image_id)s to %(scheme)s store" -msgstr "" - -#: glance/api/v1/images.py:636 -#, python-format -msgid "" -"duplicate operation - deleting image data for %(id)s " -"(location:%(location)s)" -msgstr "" - -#: glance/api/v1/images.py:644 -#, python-format -msgid "Failed to activate image. Got error: %(e)s" -msgstr "" - -#: glance/api/v1/images.py:683 -msgid "It's invalid to provide multiple image sources." -msgstr "" - -#: glance/api/v1/images.py:694 +#: glance/api/v1/images.py:706 msgid "Triggering asynchronous copy from external source" msgstr "" -#: glance/api/v1/images.py:709 -#, python-format -msgid "" -"Provided image size must match the stored image size. (provided size: " -"%(ps)d, stored size: %(ss)d)" -msgstr "" - -#: glance/api/v1/images.py:831 +#: glance/api/v1/images.py:849 msgid "Forbidden to update deleted image." msgstr "" -#: glance/api/v1/images.py:842 +#: glance/api/v1/images.py:860 #, python-format msgid "Forbidden to modify '%s' of active image." msgstr "" -#: glance/api/v1/images.py:860 +#: glance/api/v1/images.py:878 msgid "Cannot upload to an unqueued image" msgstr "" -#: glance/api/v1/images.py:884 +#: glance/api/v1/images.py:902 msgid "Attempted to update Location field for an image not in queued status." msgstr "" -#: glance/api/v1/images.py:924 glance/registry/api/v1/images.py:461 -#, python-format -msgid "Failed to update image metadata. Got error: %(e)s" -msgstr "" - -#: glance/api/v1/images.py:931 +#: glance/api/v1/images.py:949 #, python-format msgid "Failed to find image to update: %(e)s" msgstr "" -#: glance/api/v1/images.py:938 +#: glance/api/v1/images.py:956 #, python-format msgid "Forbidden to update image: %(e)s" msgstr "" -#: glance/api/v1/images.py:977 -msgid "Image is protected" -msgstr "" - -#: glance/api/v1/images.py:984 -#, python-format -msgid "Forbidden to delete a %s image." -msgstr "" - -#: glance/api/v1/images.py:989 -#, python-format -msgid "Image %s not found." -msgstr "" - -#: glance/api/v1/images.py:1029 +#: glance/api/v1/images.py:1047 #, python-format msgid "Forbidden to delete image: %(e)s" msgstr "" -#: glance/api/v1/images.py:1052 glance/store/__init__.py:231 -#, python-format -msgid "Store for scheme %s not found" -msgstr "" - -#: glance/api/v1/images.py:1091 glance/api/v1/upload_utils.py:202 +#: glance/api/v1/images.py:1109 glance/api/v1/upload_utils.py:203 #, python-format msgid "Denying attempt to upload image larger than %d bytes." msgstr "" -#: glance/api/v1/members.py:41 glance/registry/api/v1/members.py:32 +#: glance/api/v1/members.py:40 glance/registry/api/v1/members.py:32 msgid "No authenticated user" msgstr "" -#: glance/api/v1/members.py:53 +#: glance/api/v1/members.py:52 #, python-format msgid "Image with identifier %s has been deleted." msgstr "" -#: glance/api/v1/members.py:80 -msgid "Unauthorized image access" -msgstr "" - -#: glance/api/v1/members.py:117 glance/common/exception.py:287 +#: glance/api/v1/members.py:116 glance/common/exception.py:295 #, python-format msgid "" "The limit has been exceeded on the number of allowed image members for " @@ -634,332 +491,306 @@ msgstr "" msgid "Unable to kill image %(id)s: " msgstr "" -#: glance/api/v1/upload_utils.py:107 +#: glance/api/v1/upload_utils.py:108 #, python-format msgid "Cleaning up %s after exceeding the quota" msgstr "" -#: glance/api/v1/upload_utils.py:115 +#: glance/api/v1/upload_utils.py:116 #, python-format msgid "" "Supplied %(attr)s (%(supplied)s) and %(attr)s generated from uploaded " "image (%(actual)s) did not match. Setting image status to 'killed'." msgstr "" -#: glance/api/v1/upload_utils.py:135 -#, python-format -msgid "" -"Updating image %(image_id)s data. Checksum set to %(checksum)s, size set " -"to %(size)d" -msgstr "" - -#: glance/api/v1/upload_utils.py:148 +#: glance/api/v1/upload_utils.py:149 #, python-format msgid "" "Image %s could not be found after upload. The image may have been deleted" " during the upload." msgstr "" -#: glance/api/v1/upload_utils.py:164 -#, python-format -msgid "Attempt to upload duplicate image: %s" -msgstr "" - -#: glance/api/v1/upload_utils.py:175 -#, python-format -msgid "Forbidden upload attempt: %s" -msgstr "" - -#: glance/api/v1/upload_utils.py:212 glance/api/v2/images.py:132 +#: glance/api/v1/upload_utils.py:213 glance/api/v2/images.py:133 #, python-format msgid "Denying attempt to upload image because it exceeds the .quota: %s" msgstr "" -#: glance/api/v1/upload_utils.py:226 +#: glance/api/v1/upload_utils.py:227 #, python-format msgid "Received HTTP error while uploading image %s" msgstr "" -#: glance/api/v1/upload_utils.py:233 -msgid "Client disconnected before sending all data to backend" -msgstr "" - -#: glance/api/v1/upload_utils.py:241 +#: glance/api/v1/upload_utils.py:242 #, python-format msgid "Failed to upload image %s" msgstr "" -#: glance/api/v2/image_data.py:56 +#: glance/api/v2/image_data.py:57 #, python-format msgid "Unable to restore image %(image_id)s: %(e)s" msgstr "" -#: glance/api/v2/image_data.py:71 +#: glance/api/v2/image_data.py:73 #, python-format msgid "" "Image %(id)s could not be found after upload.The image may have been " "deleted during the upload: %(error)s Cleaning up the chunks uploaded" msgstr "" -#: glance/api/v2/image_data.py:98 -#, python-format -msgid "Not allowed to upload image data for image %s" -msgstr "" - -#: glance/api/v2/image_data.py:114 +#: glance/api/v2/image_data.py:118 #, python-format msgid "Image exceeds the storage quota: %s" msgstr "" -#: glance/api/v2/image_data.py:121 +#: glance/api/v2/image_data.py:125 #, python-format msgid "The incoming image is too large: %s" msgstr "" -#: glance/api/v2/image_data.py:135 +#: glance/api/v2/image_data.py:140 msgid "Failed to upload image data due to HTTP error" msgstr "" -#: glance/api/v2/image_data.py:140 +#: glance/api/v2/image_data.py:145 msgid "Failed to upload image data due to internal error" msgstr "" -#: glance/api/v2/image_members.py:189 glance/api/v2/images.py:287 +#: glance/api/v2/image_members.py:191 glance/api/v2/images.py:291 msgid "Body expected in request." msgstr "" -#: glance/api/v2/image_members.py:200 +#: glance/api/v2/image_members.py:202 msgid "Member to be added not specified" msgstr "" -#: glance/api/v2/image_members.py:203 +#: glance/api/v2/image_members.py:205 msgid "Member can't be empty" msgstr "" -#: glance/api/v2/image_members.py:212 +#: glance/api/v2/image_members.py:214 msgid "Status not specified" msgstr "" -#: glance/api/v2/image_members.py:267 +#: glance/api/v2/image_members.py:269 msgid "An identifier for the image member (tenantId)" msgstr "" -#: glance/api/v2/image_members.py:271 glance/api/v2/images.py:644 +#: glance/api/v2/image_members.py:273 glance/api/v2/images.py:650 msgid "An identifier for the image" msgstr "" -#: glance/api/v2/image_members.py:277 +#: glance/api/v2/image_members.py:279 msgid "Date and time of image member creation" msgstr "" -#: glance/api/v2/image_members.py:284 +#: glance/api/v2/image_members.py:286 msgid "Date and time of last modification of image member" msgstr "" -#: glance/api/v2/image_members.py:289 +#: glance/api/v2/image_members.py:291 msgid "The status of this image member" msgstr "" -#: glance/api/v2/images.py:156 glance/api/v2/images.py:184 +#: glance/api/v2/images.py:157 glance/api/v2/images.py:185 #, python-format msgid "Property %s does not exist." msgstr "" -#: glance/api/v2/images.py:168 +#: glance/api/v2/images.py:169 #, python-format msgid "Property %s already present." msgstr "" -#: glance/api/v2/images.py:179 +#: glance/api/v2/images.py:180 #, python-format msgid "Property %s may not be removed." msgstr "" -#: glance/api/v2/images.py:197 +#: glance/api/v2/images.py:198 #, python-format msgid "Failed to find image %(image_id)s to delete" msgstr "" -#: glance/api/v2/images.py:216 +#: glance/api/v2/images.py:217 msgid "Cannot replace locations from a non-empty list to a non-empty list." msgstr "" -#: glance/api/v2/images.py:239 +#: glance/api/v2/images.py:241 msgid "Invalid position for adding a location." msgstr "" -#: glance/api/v2/images.py:254 +#: glance/api/v2/images.py:257 msgid "Invalid position for removing a location." msgstr "" -#: glance/api/v2/images.py:295 glance/api/v2/images.py:394 +#: glance/api/v2/images.py:299 glance/api/v2/images.py:399 #, python-format msgid "Attribute '%s' is read-only." msgstr "" -#: glance/api/v2/images.py:319 glance/api/v2/images.py:341 +#: glance/api/v2/images.py:324 glance/api/v2/images.py:346 #, python-format msgid "Unable to find '%s' in JSON Schema change" msgstr "" -#: glance/api/v2/images.py:327 +#: glance/api/v2/images.py:332 msgid "" "Operation objects must contain only one member named \"add\", \"remove\"," " or \"replace\"." msgstr "" -#: glance/api/v2/images.py:332 +#: glance/api/v2/images.py:337 msgid "" "Operation objects must contain exactly one member named \"add\", " "\"remove\", or \"replace\"." msgstr "" -#: glance/api/v2/images.py:369 +#: glance/api/v2/images.py:374 #, python-format msgid "Pointer `%s` does not start with \"/\"." msgstr "" -#: glance/api/v2/images.py:372 +#: glance/api/v2/images.py:377 #, python-format msgid "Pointer `%s` contains adjacent \"/\"." msgstr "" -#: glance/api/v2/images.py:375 +#: glance/api/v2/images.py:380 #, python-format msgid "Pointer `%s` end with \"/\"." msgstr "" -#: glance/api/v2/images.py:378 +#: glance/api/v2/images.py:383 #, python-format msgid "Pointer `%s` does not contains valid token." msgstr "" -#: glance/api/v2/images.py:381 +#: glance/api/v2/images.py:386 #, python-format msgid "Pointer `%s` contains \"~\" not part of a recognized escape sequence." msgstr "" -#: glance/api/v2/images.py:387 +#: glance/api/v2/images.py:392 #, python-format msgid "Operation \"%s\" requires a member named \"value\"." msgstr "" -#: glance/api/v2/images.py:397 +#: glance/api/v2/images.py:402 #, python-format msgid "Attribute '%s' is reserved." msgstr "" -#: glance/api/v2/images.py:427 +#: glance/api/v2/images.py:432 #, python-format msgid "Invalid JSON pointer for this resource: '/%s'" msgstr "" -#: glance/api/v2/images.py:439 +#: glance/api/v2/images.py:444 msgid "Unrecognized JSON Schema draft version" msgstr "" -#: glance/api/v2/images.py:460 +#: glance/api/v2/images.py:465 msgid "Request body must be a JSON array of operation objects." msgstr "" -#: glance/api/v2/images.py:465 +#: glance/api/v2/images.py:470 msgid "Operations must be JSON objects." msgstr "" -#: glance/api/v2/images.py:487 glance/api/v2/tasks.py:164 -#: glance/registry/api/v1/images.py:246 +#: glance/api/v2/images.py:492 glance/api/v2/tasks.py:166 +#: glance/registry/api/v1/images.py:247 msgid "limit param must be an integer" msgstr "" -#: glance/api/v2/images.py:491 glance/api/v2/tasks.py:168 -#: glance/registry/api/v1/images.py:249 +#: glance/api/v2/images.py:496 glance/api/v2/tasks.py:170 +#: glance/registry/api/v1/images.py:250 msgid "limit param must be positive" msgstr "" -#: glance/api/v2/images.py:498 glance/api/v2/tasks.py:134 +#: glance/api/v2/images.py:503 glance/api/v2/tasks.py:136 #, python-format msgid "Invalid sort direction: %s" msgstr "" -#: glance/api/v2/images.py:505 +#: glance/api/v2/images.py:510 #, python-format msgid "Invalid status: %s" msgstr "" -#: glance/api/v2/images.py:514 +#: glance/api/v2/images.py:519 #, python-format msgid "Invalid visibility value: %s" msgstr "" -#: glance/api/v2/images.py:650 +#: glance/api/v2/images.py:656 msgid "Descriptive name for the image" msgstr "" -#: glance/api/v2/images.py:655 +#: glance/api/v2/images.py:661 msgid "Status of the image (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:661 +#: glance/api/v2/images.py:667 msgid "Scope of image accessibility" msgstr "" -#: glance/api/v2/images.py:666 +#: glance/api/v2/images.py:672 msgid "If true, image will not be deletable." msgstr "" -#: glance/api/v2/images.py:670 +#: glance/api/v2/images.py:676 msgid "md5 hash of image contents. (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:675 +#: glance/api/v2/images.py:681 msgid "Owner of the image" msgstr "" -#: glance/api/v2/images.py:680 +#: glance/api/v2/images.py:686 msgid "Size of image file in bytes (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:684 +#: glance/api/v2/images.py:690 msgid "Virtual size of image in bytes (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:688 +#: glance/api/v2/images.py:694 msgid "Format of the container" msgstr "" -#: glance/api/v2/images.py:693 +#: glance/api/v2/images.py:699 msgid "Format of the disk" msgstr "" -#: glance/api/v2/images.py:698 +#: glance/api/v2/images.py:704 msgid "Date and time of image registration (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:706 +#: glance/api/v2/images.py:712 msgid "Date and time of the last image modification (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:712 +#: glance/api/v2/images.py:718 msgid "List of strings related to the image" msgstr "" -#: glance/api/v2/images.py:720 +#: glance/api/v2/images.py:726 msgid "URL to access the image file kept in external store (READ-ONLY)" msgstr "" -#: glance/api/v2/images.py:725 +#: glance/api/v2/images.py:731 msgid "Amount of ram (in MB) required to boot image." msgstr "" -#: glance/api/v2/images.py:729 +#: glance/api/v2/images.py:735 msgid "Amount of disk space (in GB) required to boot image." msgstr "" -#: glance/api/v2/images.py:759 +#: glance/api/v2/images.py:765 msgid "A set of URLs to access the image file kept in external store" msgstr "" -#: glance/api/v2/images.py:798 +#: glance/api/v2/images.py:804 #, python-format msgid "" "Could not find schema properties file %s. Continuing without custom " @@ -971,84 +802,90 @@ msgstr "" msgid "Forbidden to create task. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:109 +#: glance/api/v2/tasks.py:104 #, python-format msgid "Failed to find task %(task_id)s. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:114 +#: glance/api/v2/tasks.py:109 #, python-format msgid "Forbidden to get task %(task_id)s. Reason: %(reason)s" msgstr "" -#: glance/api/v2/tasks.py:128 +#: glance/api/v2/tasks.py:116 +msgid "" +"This operation is currently not permitted on Glance Tasks. They are auto " +"deleted after reaching the time based on their expires_at property." +msgstr "" + +#: glance/api/v2/tasks.py:130 msgid "Body expected in request" msgstr "" -#: glance/api/v2/tasks.py:143 +#: glance/api/v2/tasks.py:145 #, python-format msgid "Invalid status value: %s" msgstr "" -#: glance/api/v2/tasks.py:149 +#: glance/api/v2/tasks.py:151 #, python-format msgid "Invalid type value: %s" msgstr "" -#: glance/api/v2/tasks.py:156 glance/registry/api/v1/images.py:258 +#: glance/api/v2/tasks.py:158 glance/registry/api/v1/images.py:259 msgid "Invalid marker format" msgstr "" -#: glance/api/v2/tasks.py:177 +#: glance/api/v2/tasks.py:179 #, python-format msgid "Task '%s' is required" msgstr "" -#: glance/api/v2/tasks.py:292 +#: glance/api/v2/tasks.py:302 msgid "An identifier for the task" msgstr "" -#: glance/api/v2/tasks.py:293 +#: glance/api/v2/tasks.py:303 msgid "" "^([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0" "-9a-fA-F]){12}$" msgstr "" -#: glance/api/v2/tasks.py:298 +#: glance/api/v2/tasks.py:308 msgid "The type of task represented by this content" msgstr "" -#: glance/api/v2/tasks.py:305 +#: glance/api/v2/tasks.py:315 msgid "The current status of this task" msgstr "" -#: glance/api/v2/tasks.py:315 +#: glance/api/v2/tasks.py:325 msgid "The parameters required by task, JSON blob" msgstr "" -#: glance/api/v2/tasks.py:319 +#: glance/api/v2/tasks.py:329 msgid "The result of current task, JSON blob" msgstr "" -#: glance/api/v2/tasks.py:323 +#: glance/api/v2/tasks.py:333 msgid "An identifier for the owner of this task" msgstr "" -#: glance/api/v2/tasks.py:327 +#: glance/api/v2/tasks.py:337 msgid "" "Human-readable informative message only included when appropriate " "(usually on failure)" msgstr "" -#: glance/api/v2/tasks.py:332 +#: glance/api/v2/tasks.py:342 msgid "Datetime when this resource would be subject to removal" msgstr "" -#: glance/api/v2/tasks.py:337 +#: glance/api/v2/tasks.py:347 msgid "Datetime when this resource was created" msgstr "" -#: glance/api/v2/tasks.py:341 +#: glance/api/v2/tasks.py:351 msgid "Datetime when this resource was updated" msgstr "" @@ -1066,12 +903,12 @@ msgstr "" msgid "Unable to increase file descriptor limit. Running as non-root?" msgstr "" -#: glance/cmd/control.py:161 +#: glance/cmd/control.py:160 #, python-format msgid "%(verb)sing %(serv)s" msgstr "" -#: glance/cmd/control.py:176 +#: glance/cmd/control.py:175 #, python-format msgid "unable to launch %(serv)s. Got error: %(e)s" msgstr "" @@ -1116,138 +953,87 @@ msgstr "" #: glance/cmd/control.py:346 #, python-format -msgid "Supressed respawn as %(serv)s was %(rsn)s." +msgid "Suppressed respawn as %(serv)s was %(rsn)s." msgstr "" -#: glance/cmd/replicator.py:55 -#, python-format +#: glance/cmd/manage.py:57 msgid "" -"The image %s is already present on the slave, but our check for it did " -"not find it. This indicates that we do not have permissions to see all " -"the images on the slave server." +"DEPRECATED. TO BE REMOVED IN THE JUNO RELEASE. Whether or not to enforce " +"that all DB tables have charset utf8. If your database tables do not have" +" charset utf8 you will need to convert before this option is removed. " +"This option is only relevant if your database engine is MySQL." msgstr "" -#: glance/cmd/replicator.py:105 -#, python-format +#: glance/cmd/manage.py:86 msgid "" -"Request: %(method)s http://%(server)s:%(port)s%(url)s with headers " -"%(headers)s" +"Warning: The db_enforce_mysql_charset option is now deprecated and will " +"be removed in the Juno release. Please migrate DB manually e.g. convert " +"data of all tables to UTF-8 charset." msgstr "" -#: glance/cmd/replicator.py:118 +#: glance/cmd/replicator.py:55 #, python-format -msgid "Response: %(code)s %(status)s %(headers)s" -msgstr "" - -#: glance/cmd/replicator.py:240 glance/cmd/replicator.py:259 -msgid "Image post done" +msgid "" +"The image %s is already present on the slave, but our check for it did " +"not find it. This indicates that we do not have permissions to see all " +"the images on the slave server." msgstr "" -#: glance/cmd/replicator.py:282 glance/cmd/replicator.py:319 -#: glance/cmd/replicator.py:404 glance/cmd/replicator.py:483 -#: glance/cmd/replicator.py:560 +#: glance/cmd/replicator.py:280 glance/cmd/replicator.py:312 +#: glance/cmd/replicator.py:383 glance/cmd/replicator.py:457 +#: glance/cmd/replicator.py:527 msgid "Too few arguments." msgstr "" -#: glance/cmd/replicator.py:287 glance/cmd/replicator.py:325 -#: glance/cmd/replicator.py:410 glance/cmd/replicator.py:490 -#: glance/cmd/replicator.py:567 -msgid "Bad format of the given arguments." -msgstr "" - -#: glance/cmd/replicator.py:298 -#, python-format -msgid "Considering image: %(image)s" -msgstr "" - -#: glance/cmd/replicator.py:303 +#: glance/cmd/replicator.py:296 #, python-format msgid "Total size is %(size)d bytes across %(img_count)d images" msgstr "" -#: glance/cmd/replicator.py:333 glance/cmd/replicator.py:423 +#: glance/cmd/replicator.py:321 glance/cmd/replicator.py:397 #, python-format msgid "Considering: %s" msgstr "" -#: glance/cmd/replicator.py:337 +#: glance/cmd/replicator.py:325 msgid "... storing" msgstr "" -#: glance/cmd/replicator.py:348 +#: glance/cmd/replicator.py:336 msgid "... image is active" msgstr "" -#: glance/cmd/replicator.py:368 -#, python-format -msgid "metadata diff -- master has extra keys: %(keys)s" -msgstr "" - -#: glance/cmd/replicator.py:374 -#, python-format -msgid "" -"metadata diff -- value differs for key %(key)s: master " -"\"%(master_value)s\" vs slave \"%(slave_value)s\"" -msgstr "" - -#: glance/cmd/replicator.py:432 -#, python-format -msgid "Stripping %(header)s from saved metadata" -msgstr "" - -#: glance/cmd/replicator.py:440 -#, python-format -msgid "Image %s already present" -msgstr "" - -#: glance/cmd/replicator.py:444 glance/cmd/replicator.py:524 -#: glance/cmd/replicator.py:590 -#, python-format -msgid "Stripping %(header)s from slave metadata" -msgstr "" - -#: glance/cmd/replicator.py:449 glance/cmd/replicator.py:529 +#: glance/cmd/replicator.py:423 glance/cmd/replicator.py:496 msgid "... metadata has changed" msgstr "" -#: glance/cmd/replicator.py:456 +#: glance/cmd/replicator.py:430 msgid "... dump is missing image data, skipping" msgstr "" -#: glance/cmd/replicator.py:505 +#: glance/cmd/replicator.py:472 #, python-format msgid "Considering %(id)s" msgstr "" -#: glance/cmd/replicator.py:508 glance/cmd/replicator.py:520 -#: glance/cmd/replicator.py:586 -#, python-format -msgid "Stripping %(header)s from master metadata" -msgstr "" - -#: glance/cmd/replicator.py:535 +#: glance/cmd/replicator.py:502 #, python-format msgid "%s is being synced" msgstr "" -#: glance/cmd/replicator.py:596 +#: glance/cmd/replicator.py:556 #, python-format msgid "" "%(image_id)s: field %(key)s differs (source is %(master_value)s, " "destination is %(slave_value)s)" msgstr "" -#: glance/cmd/replicator.py:606 -#, python-format -msgid "%(image_id)s is identical" -msgstr "" - -#: glance/cmd/replicator.py:610 +#: glance/cmd/replicator.py:570 #, python-format msgid "%s: entirely missing from the destination" msgstr "" -#: glance/cmd/replicator.py:717 +#: glance/cmd/replicator.py:677 #, python-format msgid "Unknown command: %s" msgstr "" @@ -1296,16 +1082,6 @@ msgstr "" msgid "The CA file you specified %s does not exist" msgstr "" -#: glance/common/client.py:309 -#, python-format -msgid "Configuring from URL: %s" -msgstr "" - -#: glance/common/client.py:321 -#, python-format -msgid "Appending doc_root %(doc_root)s to URL %(url)s" -msgstr "" - #: glance/common/client.py:410 #, python-format msgid "Constructed URL: %s" @@ -1400,52 +1176,51 @@ msgstr "" #: glance/common/config.py:103 msgid "" -"Set a system wide quota for every user. This value is the total number " -"of bytes that a user can use across all storage systems. A value of 0 " -"means unlimited." +"Set a system wide quota for every user. This value is the total capacity " +"that a user can use across all storage systems. A value of 0 means " +"unlimited.Optional unit can be specified for the value. Accepted units " +"are B, KB, MB, GB and TB representing Bytes, KiloBytes, MegaBytes, " +"GigaBytes and TeraBytesrespectively. If no unit is specified then Bytes " +"is assumed. Note that there should not be any space between value and " +"unit and units are case sensitive." msgstr "" -#: glance/common/config.py:107 +#: glance/common/config.py:113 msgid "Deploy the v1 OpenStack Images API." msgstr "" -#: glance/common/config.py:109 +#: glance/common/config.py:115 msgid "Deploy the v2 OpenStack Images API." msgstr "" -#: glance/common/config.py:111 +#: glance/common/config.py:117 msgid "Deploy the v1 OpenStack Registry API." msgstr "" -#: glance/common/config.py:113 +#: glance/common/config.py:119 msgid "Deploy the v2 OpenStack Registry API." msgstr "" -#: glance/common/config.py:115 +#: glance/common/config.py:121 msgid "The hostname/IP of the pydev process listening for debug connections" msgstr "" -#: glance/common/config.py:118 +#: glance/common/config.py:124 msgid "The port on which a pydev process is listening for connections." msgstr "" -#: glance/common/config.py:121 +#: glance/common/config.py:127 msgid "" "Key used for encrypting sensitive metadata while talking to the registry " "or database." msgstr "" -#: glance/common/config.py:179 +#: glance/common/config.py:185 #, python-format msgid "Unable to locate paste config file for %s." msgstr "" -#: glance/common/config.py:207 -#, python-format -msgid "Loading %(app_name)s from %(conf_file)s" -msgstr "" - -#: glance/common/config.py:218 +#: glance/common/config.py:224 #, python-format msgid "" "Unable to load %(app_name)s from configuration file %(conf_file)s.\n" @@ -1536,7 +1311,7 @@ msgid "Data supplied was not valid." msgstr "" #: glance/common/exception.py:138 -#: glance/openstack/common/db/sqlalchemy/utils.py:60 +#: glance/openstack/common/db/sqlalchemy/utils.py:58 msgid "Sort key supplied was not valid." msgstr "" @@ -1545,33 +1320,37 @@ msgid "Invalid configuration in property protection file." msgstr "" #: glance/common/exception.py:146 -msgid "Unable to filter using the specified range." +msgid "Invalid configuration in glance-swift conf file." msgstr "" #: glance/common/exception.py:150 +msgid "Unable to filter using the specified range." +msgstr "" + +#: glance/common/exception.py:154 #, python-format msgid "Attribute '%(property)s' is read-only." msgstr "" -#: glance/common/exception.py:154 +#: glance/common/exception.py:158 #, python-format msgid "Attribute '%(property)s' is reserved." msgstr "" -#: glance/common/exception.py:158 +#: glance/common/exception.py:162 #, python-format msgid "Redirecting to %(uri)s for authorization." msgstr "" -#: glance/common/exception.py:162 +#: glance/common/exception.py:166 msgid "There was an error connecting to a server" msgstr "" -#: glance/common/exception.py:166 +#: glance/common/exception.py:170 msgid "There was an error configuring the client." msgstr "" -#: glance/common/exception.py:170 +#: glance/common/exception.py:174 #, python-format msgid "" "The request returned a 302 Multiple Choices. This generally means that " @@ -1581,7 +1360,7 @@ msgid "" "%(body)s" msgstr "" -#: glance/common/exception.py:176 +#: glance/common/exception.py:180 #, python-format msgid "" "The request returned a 413 Request Entity Too Large. This generally means" @@ -1591,17 +1370,17 @@ msgid "" "%(body)s" msgstr "" -#: glance/common/exception.py:187 +#: glance/common/exception.py:191 msgid "" "The request returned 503 Service Unavilable. This generally occurs on " "service overload or other transient outage." msgstr "" -#: glance/common/exception.py:198 +#: glance/common/exception.py:202 msgid "The request returned 500 Internal Server Error." msgstr "" -#: glance/common/exception.py:202 +#: glance/common/exception.py:206 #, python-format msgid "" "The request returned an unexpected status: %(status)s.\n" @@ -1610,399 +1389,459 @@ msgid "" "%(body)s" msgstr "" -#: glance/common/exception.py:207 +#: glance/common/exception.py:211 #, python-format msgid "Invalid content type %(content_type)s" msgstr "" -#: glance/common/exception.py:211 +#: glance/common/exception.py:215 #, python-format msgid "Registry was not configured correctly on API server. Reason: %(reason)s" msgstr "" -#: glance/common/exception.py:216 +#: glance/common/exception.py:220 #, python-format msgid "Store %(store_name)s could not be configured correctly. Reason: %(reason)s" msgstr "" -#: glance/common/exception.py:221 +#: glance/common/exception.py:225 #, python-format msgid "" "Driver %(driver_name)s could not be configured correctly. Reason: " "%(reason)s" msgstr "" -#: glance/common/exception.py:226 +#: glance/common/exception.py:230 msgid "Deleting images from this store is not supported." msgstr "" -#: glance/common/exception.py:230 +#: glance/common/exception.py:234 msgid "Getting images from this store is not supported." msgstr "" -#: glance/common/exception.py:234 +#: glance/common/exception.py:238 msgid "Adding images to this store is not supported." msgstr "" -#: glance/common/exception.py:238 +#: glance/common/exception.py:242 msgid "Configuration for store failed. Adding images to this store is disabled." msgstr "" -#: glance/common/exception.py:243 +#: glance/common/exception.py:247 +msgid "Store is not configured." +msgstr "" + +#: glance/common/exception.py:251 #, python-format msgid "Maximum redirects (%(redirects)s) was exceeded." msgstr "" -#: glance/common/exception.py:247 +#: glance/common/exception.py:255 msgid "Received invalid HTTP redirect." msgstr "" -#: glance/common/exception.py:251 +#: glance/common/exception.py:259 msgid "Response from Keystone does not contain a Glance endpoint." msgstr "" -#: glance/common/exception.py:255 +#: glance/common/exception.py:263 #, python-format msgid "" "Multiple 'image' service matches for region %(region)s. This generally " "means that a region is required and you have not supplied one." msgstr "" -#: glance/common/exception.py:261 +#: glance/common/exception.py:269 #, python-format msgid "Server worker creation failed: %(reason)s." msgstr "" -#: glance/common/exception.py:265 +#: glance/common/exception.py:273 #, python-format msgid "Unable to load schema: %(reason)s" msgstr "" -#: glance/common/exception.py:269 +#: glance/common/exception.py:277 #, python-format msgid "Provided object does not match schema '%(schema)s': %(reason)s" msgstr "" -#: glance/common/exception.py:274 +#: glance/common/exception.py:282 #, python-format msgid "Provided header feature is unsupported: %(feature)s" msgstr "" -#: glance/common/exception.py:278 +#: glance/common/exception.py:286 msgid "" "The image cannot be deleted because it is in use through the backend " "store outside of Glance." msgstr "" -#: glance/common/exception.py:283 +#: glance/common/exception.py:291 msgid "The provided image is too large." msgstr "" -#: glance/common/exception.py:293 +#: glance/common/exception.py:301 #, python-format msgid "" "The limit has been exceeded on the number of allowed image properties. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:298 +#: glance/common/exception.py:306 #, python-format msgid "" "The limit has been exceeded on the number of allowed image tags. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:303 +#: glance/common/exception.py:311 #, python-format msgid "" "The limit has been exceeded on the number of allowed image locations. " "Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" -#: glance/common/exception.py:308 +#: glance/common/exception.py:316 #, python-format msgid "%(cls)s exception was raised in the last rpc call: %(val)s" msgstr "" -#: glance/common/exception.py:312 +#: glance/common/exception.py:320 msgid "An unknown task exception occurred" msgstr "" -#: glance/common/exception.py:316 +#: glance/common/exception.py:324 #, python-format msgid "Task with the given id %(task_id)s was not found" msgstr "" -#: glance/common/exception.py:320 +#: glance/common/exception.py:328 #, python-format msgid "Provided status of task is unsupported: %(status)s" msgstr "" -#: glance/common/exception.py:324 +#: glance/common/exception.py:332 #, python-format msgid "Provided type of task is unsupported: %(type)s" msgstr "" -#: glance/common/exception.py:328 +#: glance/common/exception.py:336 #, python-format msgid "Status transition from %(cur_status)s to %(new_status)s is not allowed" msgstr "" -#: glance/common/exception.py:333 +#: glance/common/exception.py:341 #, python-format msgid "The location %(location)s already exists" msgstr "" -#: glance/common/exception.py:337 glance/store/__init__.py:730 -msgid "No image data could be found" -msgstr "" - -#: glance/common/exception.py:341 +#: glance/common/exception.py:349 #, python-format msgid "Invalid value '%(value)s' for parameter '%(param)s': %(extra_msg)s" msgstr "" -#: glance/common/exception.py:346 +#: glance/common/exception.py:354 #, python-format msgid "" "Image status transition from %(cur_status)s to %(new_status)s is not " "allowed" msgstr "" -#: glance/common/property_utils.py:37 +#: glance/common/property_utils.py:36 msgid "The location of the property protection file." msgstr "" -#: glance/common/property_utils.py:40 +#: glance/common/property_utils.py:39 msgid "" "This config value indicates whether \"roles\" or \"policies\" are used in" " the property protection file." msgstr "" -#: glance/common/property_utils.py:75 +#: glance/common/property_utils.py:74 #, python-format msgid "Couldn't find property protection file %(file)s: %(error)s." msgstr "" -#: glance/common/property_utils.py:82 +#: glance/common/property_utils.py:81 #, python-format msgid "" "Invalid value '%s' for 'property_protection_rule_format'. The permitted " "values are 'roles' and 'policies'" msgstr "" -#: glance/common/property_utils.py:101 +#: glance/common/property_utils.py:100 #, python-format msgid "" "Multiple policies '%s' not allowedfor a given operation. Policies can be " "combined in the policy file" msgstr "" -#: glance/common/property_utils.py:114 +#: glance/common/property_utils.py:113 #, python-format msgid "" "Malformed property protection rule in [%(prop)s] %(op)s=%(perm)s: '@' and" " '!' are mutually exclusive" msgstr "" -#: glance/common/property_utils.py:127 +#: glance/common/property_utils.py:126 #, python-format msgid "" "Property protection on operation %(operation)s for rule %(rule)s is not " "found. No role will be allowed to perform this operation." msgstr "" -#: glance/common/property_utils.py:139 +#: glance/common/property_utils.py:138 #, python-format msgid "Encountered a malformed property protection rule %(rule)s: %(error)s." msgstr "" -#: glance/common/rpc.py:139 +#: glance/common/rpc.py:140 msgid "Request must be a list of commands" msgstr "" -#: glance/common/rpc.py:144 +#: glance/common/rpc.py:145 #, python-format msgid "Bad Command: %s" msgstr "" -#: glance/common/rpc.py:151 +#: glance/common/rpc.py:152 #, python-format msgid "Wrong command structure: %s" msgstr "" -#: glance/common/rpc.py:160 +#: glance/common/rpc.py:161 msgid "Command not found" msgstr "" -#: glance/common/rpc.py:182 +#: glance/common/rpc.py:183 #, python-format msgid "" "RPC Call Error: %(val)s\n" "%(tb)s" msgstr "" -#: glance/common/utils.py:103 -#, python-format -msgid "Error: cooperative_iter exception %s" +#: glance/common/swift_store_utils.py:29 +msgid "" +"The reference to the default swift account/backing store parameters to " +"use for adding new images." msgstr "" -#: glance/common/utils.py:251 +#: glance/common/swift_store_utils.py:32 +msgid "" +"The address where the Swift authentication service is " +"listening.(deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:35 +msgid "" +"The user to authenticate against the Swift authentication service " +"(deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:38 +msgid "" +"Auth key for the user authenticating against the Swift authentication " +"service. (deprecated)" +msgstr "" + +#: glance/common/swift_store_utils.py:41 +msgid "The config file that has the swift account(s)configs." +msgstr "" + +#: glance/common/swift_store_utils.py:83 +#, python-format +msgid "swift config file %(conf_file)s:%(exc)s not found" +msgstr "" + +#: glance/common/swift_store_utils.py:97 +msgid "Invalid format of swift store configcfg" +msgstr "" + +#: glance/common/utils.py:111 +#, python-format +msgid "Error: cooperative_iter exception %s" +msgstr "" + +#: glance/common/utils.py:258 #, python-format msgid "Bad header: %(header_name)s" msgstr "" -#: glance/common/utils.py:261 +#: glance/common/utils.py:268 #, python-format msgid "Cannot convert image %(key)s '%(value)s' to an integer." msgstr "" -#: glance/common/utils.py:268 +#: glance/common/utils.py:275 #, python-format msgid "Image %(key)s must be >= 0 ('%(value)s' specified)." msgstr "" -#: glance/common/utils.py:432 -msgid "Read-only access" +#: glance/common/utils.py:448 +msgid "" +"Error setting up the debug environment. Verify that the option " +"pydev_worker_debug_host is pointing to a valid hostname or IP on which a " +"pydev server is listening on the port indicated by " +"pydev_worker_debug_port." msgstr "" -#: glance/common/utils.py:478 +#: glance/common/utils.py:485 #, python-format msgid "Invalid backend: %s" msgstr "" -#: glance/common/utils.py:509 +#: glance/common/utils.py:518 #, python-format msgid "" "There is a problem with your %(error_key_name)s %(error_filename)s. " "Please verify it. Error: %(ioe)s" msgstr "" -#: glance/common/utils.py:516 +#: glance/common/utils.py:525 #, python-format msgid "" "There is a problem with your %(error_key_name)s %(error_filename)s. " "Please verify it. OpenSSL error: %(ce)s" msgstr "" -#: glance/common/utils.py:530 +#: glance/common/utils.py:539 #, python-format msgid "" "There is a problem with your key pair. Please verify that cert " "%(cert_file)s and key %(key_file)s belong together. OpenSSL error %(ce)s" msgstr "" -#: glance/common/wsgi.py:53 +#: glance/common/utils.py:617 +#, python-format +msgid "Host and port \"%s\" is not valid." +msgstr "" + +#: glance/common/utils.py:620 +#, python-format +msgid "Port \"%s\" is not valid." +msgstr "" + +#: glance/common/utils.py:629 +#, python-format +msgid "Host \"%s\" is not valid." +msgstr "" + +#: glance/common/utils.py:632 +#, python-format +msgid "" +"%s Please specify a host:port pair, where host is an IPv4 address, IPv6 " +"address, hostname, or FQDN. If using an IPv6 address, enclose it in " +"brackets separately from the port (i.e., \"[fe80::a:b:c]:9876\")." +msgstr "" + +#: glance/common/wsgi.py:54 msgid "" "Address to bind the server. Useful when selecting a particular network " "interface." msgstr "" -#: glance/common/wsgi.py:56 +#: glance/common/wsgi.py:57 msgid "The port on which the server will listen." msgstr "" -#: glance/common/wsgi.py:61 +#: glance/common/wsgi.py:62 msgid "The backlog value that will be used when creating the TCP listener socket." msgstr "" -#: glance/common/wsgi.py:64 +#: glance/common/wsgi.py:65 msgid "" "The value for the socket option TCP_KEEPIDLE. This is the time in " "seconds that the connection must be idle before TCP starts sending " "keepalive probes." msgstr "" -#: glance/common/wsgi.py:67 +#: glance/common/wsgi.py:68 msgid "CA certificate file to use to verify connecting clients." msgstr "" -#: glance/common/wsgi.py:69 +#: glance/common/wsgi.py:70 msgid "Certificate file to use when starting API server securely." msgstr "" -#: glance/common/wsgi.py:71 +#: glance/common/wsgi.py:72 msgid "Private key file to use when starting API server securely." msgstr "" -#: glance/common/wsgi.py:77 +#: glance/common/wsgi.py:78 msgid "" -"The number of child process workers that will be created to service API " +"The number of child process workers that will be created to service " "requests." msgstr "" -#: glance/common/wsgi.py:80 +#: glance/common/wsgi.py:81 msgid "" "Name of eventlet hub to use. Traditionally, we have only supported " "'poll', however 'selects' may be appropriate for some platforms. See " "http://eventlet.net/doc/hubs.html for more details." msgstr "" -#: glance/common/wsgi.py:85 +#: glance/common/wsgi.py:86 msgid "" "Maximum line size of message headers to be accepted. max_header_line may " "need to be increased when using large tokens (typically those generated " "by the Keystone v3 API with big service catalogs" msgstr "" -#: glance/common/wsgi.py:131 +#: glance/common/wsgi.py:132 msgid "" "When running server in SSL mode, you must specify both a cert_file and " "key_file option value in your configuration file" msgstr "" -#: glance/common/wsgi.py:169 +#: glance/common/wsgi.py:170 #, python-format msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds" msgstr "" -#: glance/common/wsgi.py:244 glance/openstack/common/service.py:240 +#: glance/common/wsgi.py:245 #, python-format msgid "Starting %d workers" msgstr "" -#: glance/common/wsgi.py:259 +#: glance/common/wsgi.py:260 #, python-format msgid "Removing dead child %s" msgstr "" -#: glance/common/wsgi.py:262 +#: glance/common/wsgi.py:263 #, python-format msgid "Not respawning child %d, cannot recover from termination" msgstr "" -#: glance/common/wsgi.py:266 +#: glance/common/wsgi.py:267 msgid "All workers have terminated. Exiting" msgstr "" -#: glance/common/wsgi.py:274 +#: glance/common/wsgi.py:275 msgid "Caught keyboard interrupt. Exiting." msgstr "" -#: glance/common/wsgi.py:278 -msgid "Exited" -msgstr "" - -#: glance/common/wsgi.py:300 +#: glance/common/wsgi.py:301 #, python-format msgid "Child %d exiting normally" msgstr "" -#: glance/common/wsgi.py:305 +#: glance/common/wsgi.py:306 #, python-format msgid "Started child %s" msgstr "" -#: glance/common/wsgi.py:318 +#: glance/common/wsgi.py:319 #, python-format msgid "eventlet '%s' hub is not available on this platform" msgstr "" -#: glance/common/wsgi.py:335 +#: glance/common/wsgi.py:336 msgid "Starting single process server" msgstr "" -#: glance/common/wsgi.py:552 +#: glance/common/wsgi.py:553 msgid "Malformed JSON in request body." msgstr "" @@ -2041,114 +1880,92 @@ msgid "" "option." msgstr "" -#: glance/db/__init__.py:64 glance/db/__init__.py:167 glance/db/__init__.py:179 -#: glance/db/sqlalchemy/api.py:181 +#: glance/db/__init__.py:67 glance/db/__init__.py:170 glance/db/__init__.py:182 #, python-format msgid "No image found with ID %s" msgstr "" -#: glance/db/__init__.py:238 +#: glance/db/__init__.py:241 #, python-format msgid "" "The target member %(member_id)s is already associated with image " "%(image_id)s." msgstr "" -#: glance/db/__init__.py:255 +#: glance/db/__init__.py:258 #, python-format msgid "The specified member %s could not be found" msgstr "" -#: glance/db/__init__.py:334 glance/db/__init__.py:360 -#: glance/db/__init__.py:377 glance/db/simple/api.py:762 +#: glance/db/__init__.py:336 glance/db/__init__.py:357 +#: glance/db/__init__.py:374 glance/db/simple/api.py:764 #, python-format msgid "Could not find task %s" msgstr "" -#: glance/db/simple/api.py:41 +#: glance/db/simple/api.py:43 #, python-format msgid "Calling %(funcname)s: args=%(args)s, kwargs=%(kwargs)s" msgstr "" -#: glance/db/simple/api.py:46 +#: glance/db/simple/api.py:48 #, python-format msgid "Returning %(funcname)s: %(output)s" msgstr "" -#: glance/db/simple/api.py:256 glance/db/sqlalchemy/api.py:407 +#: glance/db/simple/api.py:258 glance/db/sqlalchemy/api.py:408 msgid "Unable to filter on a range with a non-numeric value." msgstr "" -#: glance/db/simple/api.py:329 +#: glance/db/simple/api.py:331 #, python-format msgid "Could not find image %s" msgstr "" -#: glance/db/simple/api.py:333 +#: glance/db/simple/api.py:335 msgid "Unable to get deleted image" msgstr "" -#: glance/db/simple/api.py:337 +#: glance/db/simple/api.py:339 msgid "Unable to get unowned image" msgstr "" -#: glance/db/simple/api.py:425 glance/db/sqlalchemy/api.py:951 +#: glance/db/simple/api.py:427 glance/db/sqlalchemy/api.py:952 msgid "Image id is required." msgstr "" -#: glance/db/simple/api.py:740 glance/db/simple/api.py:790 -#: glance/db/sqlalchemy/api.py:1250 -#, python-format -msgid "No task found with ID %s" -msgstr "" - -#: glance/db/simple/api.py:767 +#: glance/db/simple/api.py:769 #, python-format msgid "Unable to get deleted task %s" msgstr "" -#: glance/db/simple/api.py:772 glance/db/sqlalchemy/api.py:1256 -#, python-format -msgid "Forbidding request, task %s is not visible" -msgstr "" - -#: glance/db/simple/api.py:890 +#: glance/db/simple/api.py:892 msgid "Task does not exist" msgstr "" -#: glance/db/simple/api.py:912 -#, python-format -msgid "No task info found with task id %s" -msgstr "" - -#: glance/db/simple/api.py:928 +#: glance/db/simple/api.py:930 #, python-format msgid "Could not find task info %s" msgstr "" -#: glance/db/sqlalchemy/api.py:84 +#: glance/db/sqlalchemy/api.py:85 msgid "Attempted to modify image user did not own." msgstr "" -#: glance/db/sqlalchemy/api.py:85 +#: glance/db/sqlalchemy/api.py:86 msgid "You do not own this image" msgstr "" -#: glance/db/sqlalchemy/api.py:187 -#, python-format -msgid "Forbidding request, image %s not visible" -msgstr "" - -#: glance/db/sqlalchemy/api.py:274 +#: glance/db/sqlalchemy/api.py:275 msgid "Id not in sort_keys; is sort_keys unique?" msgstr "" -#: glance/db/sqlalchemy/api.py:337 -#: glance/openstack/common/db/sqlalchemy/utils.py:121 +#: glance/db/sqlalchemy/api.py:338 +#: glance/openstack/common/db/sqlalchemy/utils.py:119 msgid "Unknown sort direction, must be 'desc' or 'asc'" msgstr "" -#: glance/db/sqlalchemy/api.py:682 +#: glance/db/sqlalchemy/api.py:683 #: glance/tests/unit/v2/test_registry_client.py:500 #, python-format msgid "" @@ -2156,11 +1973,6 @@ msgid "" "from_state=%(from)s)" msgstr "" -#: glance/db/sqlalchemy/api.py:1084 -#, python-format -msgid "TaskInfo was not found for task with id %(task_id)s" -msgstr "" - #: glance/db/sqlalchemy/migrate_repo/schema.py:96 #, python-format msgid "creating table %(table)s" @@ -2171,14 +1983,14 @@ msgstr "" msgid "dropping table %(table)s" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:58 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:88 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:60 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:90 #, python-format msgid "Invalid store uri for image: %(image_id)s. Details: %(reason)s" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:86 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:149 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:88 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:151 msgid "" "URI cannot contain more than one occurrence of a scheme.If you have " "specified a URI like " @@ -2187,164 +1999,132 @@ msgid "" "swift+http://user:pass@authurl.com/v1/container/obj" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:123 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:185 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:125 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:187 #, python-format msgid "Badly formed credentials '%(creds)s' in Swift URI" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:135 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:197 -#: glance/store/swift.py:246 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:137 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:199 +#: glance/store/swift.py:248 msgid "Badly formed credentials in Swift URI." msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:152 -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:214 +#: glance/db/sqlalchemy/migrate_repo/versions/015_quote_swift_credentials.py:154 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:216 #, python-format msgid "Badly formed S3 URI: %(uri)s" msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:65 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:66 msgid "" "'metadata_encryption_key' was not specified in the config file or a " "config file was not specified. This means that this migration is a NOOP." msgstr "" -#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:85 +#: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:86 #, python-format msgid "Failed to decrypt location value for image %(image_id)s" msgstr "" -#: glance/domain/__init__.py:59 +#: glance/domain/__init__.py:60 #, python-format msgid "new_image() got unexpected keywords %s" msgstr "" -#: glance/domain/__init__.py:129 +#: glance/domain/__init__.py:130 #, python-format msgid "__init__() got unexpected keyword argument '%s'" msgstr "" -#: glance/domain/__init__.py:151 +#: glance/domain/__init__.py:152 #, python-format msgid "Property %s must be set prior to saving data." msgstr "" -#: glance/domain/__init__.py:154 +#: glance/domain/__init__.py:155 #, python-format msgid "Properties %s must be set prior to saving data." msgstr "" -#: glance/domain/__init__.py:171 +#: glance/domain/__init__.py:172 msgid "Visibility must be either \"public\" or \"private\"" msgstr "" -#: glance/domain/__init__.py:190 +#: glance/domain/__init__.py:191 msgid "Attribute container_format can be only replaced for a queued image." msgstr "" -#: glance/domain/__init__.py:202 +#: glance/domain/__init__.py:203 msgid "Attribute disk_format can be only replaced for a queued image." msgstr "" -#: glance/domain/__init__.py:214 glance/domain/__init__.py:227 +#: glance/domain/__init__.py:215 glance/domain/__init__.py:228 msgid "Cannot be a negative value" msgstr "" -#: glance/domain/__init__.py:292 +#: glance/domain/__init__.py:293 msgid "Status must be \"pending\", \"accepted\" or \"rejected\"." msgstr "" -#: glance/domain/__init__.py:356 +#: glance/domain/__init__.py:369 #, python-format msgid "Task status changed from %(cur_status)s to %(new_status)s" msgstr "" -#: glance/domain/__init__.py:361 +#: glance/domain/__init__.py:374 #, python-format msgid "Task status failed to change from %(cur_status)s to %(new_status)s" msgstr "" -#: glance/domain/__init__.py:391 -msgid "task_id is required to create a new TaskDetails object" -msgstr "" - -#: glance/image_cache/__init__.py:34 +#: glance/image_cache/__init__.py:35 msgid "The driver to use for image cache management." msgstr "" -#: glance/image_cache/__init__.py:36 +#: glance/image_cache/__init__.py:37 msgid "The maximum size in bytes that the cache can use." msgstr "" -#: glance/image_cache/__init__.py:38 +#: glance/image_cache/__init__.py:39 msgid "" "The amount of time to let an image remain in the cache without being " "accessed." msgstr "" -#: glance/image_cache/__init__.py:41 +#: glance/image_cache/__init__.py:42 msgid "Base directory that the Image Cache uses." msgstr "" -#: glance/image_cache/__init__.py:63 +#: glance/image_cache/__init__.py:64 #, python-format msgid "Image cache loaded driver '%s'." msgstr "" -#: glance/image_cache/__init__.py:66 +#: glance/image_cache/__init__.py:67 #, python-format msgid "" "Image cache driver '%(driver_name)s' failed to load. Got error: " "'%(import_err)s." msgstr "" -#: glance/image_cache/__init__.py:73 glance/image_cache/__init__.py:92 +#: glance/image_cache/__init__.py:74 glance/image_cache/__init__.py:93 msgid "Defaulting to SQLite driver." msgstr "" -#: glance/image_cache/__init__.py:87 +#: glance/image_cache/__init__.py:88 #, python-format msgid "" "Image cache driver '%(driver_module)s' failed to configure. Got error: " "'%(config_err)s" msgstr "" -#: glance/image_cache/__init__.py:174 -msgid "Image cache has free space, skipping prune..." -msgstr "" - -#: glance/image_cache/__init__.py:178 -#, python-format -msgid "" -"Image cache currently %(overage)d bytes over max size. Starting prune to " -"max size of %(max_size)d " -msgstr "" - -#: glance/image_cache/__init__.py:187 -#, python-format -msgid "Pruning '%(image_id)s' to free %(size)d bytes" -msgstr "" - -#: glance/image_cache/__init__.py:195 -#, python-format -msgid "" -"Pruning finished pruning. Pruned %(total_files_pruned)d and " -"%(total_bytes_pruned)d." -msgstr "" - -#: glance/image_cache/__init__.py:234 -#, python-format -msgid "Tee'ing image '%s' into cache" -msgstr "" - -#: glance/image_cache/__init__.py:253 +#: glance/image_cache/__init__.py:254 #, python-format msgid "Checksum verification failed. Aborted caching of image '%s'." msgstr "" -#: glance/image_cache/__init__.py:263 +#: glance/image_cache/__init__.py:264 #, python-format msgid "" "Exception encountered while tee'ing image '%(image_id)s' into cache: " @@ -2367,20 +2147,6 @@ msgstr "" msgid "No metadata found for image '%s'" msgstr "" -#: glance/image_cache/prefetcher.py:56 -#, python-format -msgid "Caching image '%s'" -msgstr "" - -#: glance/image_cache/prefetcher.py:68 -msgid "Nothing to prefetch." -msgstr "" - -#: glance/image_cache/prefetcher.py:72 -#, python-format -msgid "Found %d images to prefetch" -msgstr "" - #: glance/image_cache/prefetcher.py:78 msgid "Failed to successfully cache all images in queue." msgstr "" @@ -2395,87 +2161,62 @@ msgstr "" msgid "Failed to read %s from config" msgstr "" -#: glance/image_cache/drivers/sqlite.py:39 +#: glance/image_cache/drivers/sqlite.py:40 msgid "" "The path to the sqlite file database that will be used for image cache " "management." msgstr "" -#: glance/image_cache/drivers/sqlite.py:121 +#: glance/image_cache/drivers/sqlite.py:122 #, python-format msgid "Failed to initialize the image cache database. Got error: %s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:160 -#: glance/image_cache/drivers/xattr.py:144 -msgid "Gathering cached image entries." -msgstr "" - -#: glance/image_cache/drivers/sqlite.py:303 -#: glance/image_cache/drivers/xattr.py:272 -#, python-format -msgid "Fetch finished, moving '%(incomplete_path)s' to '%(final_path)s'" -msgstr "" - -#: glance/image_cache/drivers/sqlite.py:327 -#: glance/image_cache/drivers/xattr.py:288 -#, python-format -msgid "" -"Fetch of cache file failed (%(e)s), rolling back by moving " -"'%(incomplete_path)s' to '%(invalid_path)s'" -msgstr "" - -#: glance/image_cache/drivers/sqlite.py:392 +#: glance/image_cache/drivers/sqlite.py:393 #, python-format msgid "Error executing SQLite call. Got error: %s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:408 -#: glance/image_cache/drivers/xattr.py:337 +#: glance/image_cache/drivers/sqlite.py:409 +#: glance/image_cache/drivers/xattr.py:338 #, python-format msgid "Not queueing image '%s'. Already cached." msgstr "" -#: glance/image_cache/drivers/sqlite.py:413 -#: glance/image_cache/drivers/xattr.py:342 +#: glance/image_cache/drivers/sqlite.py:414 +#: glance/image_cache/drivers/xattr.py:343 #, python-format msgid "Not queueing image '%s'. Already being written to cache" msgstr "" -#: glance/image_cache/drivers/sqlite.py:419 -#: glance/image_cache/drivers/xattr.py:348 +#: glance/image_cache/drivers/sqlite.py:420 +#: glance/image_cache/drivers/xattr.py:349 #, python-format msgid "Not queueing image '%s'. Already queued." msgstr "" -#: glance/image_cache/drivers/sqlite.py:437 +#: glance/image_cache/drivers/sqlite.py:438 #, python-format msgid "Removed invalid cache file %s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:451 +#: glance/image_cache/drivers/sqlite.py:452 #, python-format msgid "Removed stalled cache file %s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:453 +#: glance/image_cache/drivers/sqlite.py:454 #, python-format msgid "Failed to delete file %(path)s. Got error: %(e)s" msgstr "" -#: glance/image_cache/drivers/sqlite.py:487 -#: glance/image_cache/drivers/xattr.py:438 -#, python-format -msgid "Deleting image cache file '%s'" -msgstr "" - -#: glance/image_cache/drivers/sqlite.py:490 -#: glance/image_cache/drivers/xattr.py:441 +#: glance/image_cache/drivers/sqlite.py:491 +#: glance/image_cache/drivers/xattr.py:442 #, python-format msgid "Cached image file '%s' doesn't exist, unable to delete" msgstr "" -#: glance/image_cache/drivers/xattr.py:104 +#: glance/image_cache/drivers/xattr.py:105 #, python-format msgid "" "The device housing the image cache directory %(image_cache_dir)s does not" @@ -2484,27 +2225,7 @@ msgid "" "cache directory." msgstr "" -#: glance/image_cache/drivers/xattr.py:280 -#, python-format -msgid "Removing image '%s' from queue after caching it." -msgstr "" - -#: glance/image_cache/drivers/xattr.py:353 -#, python-format -msgid "Queueing image '%s'." -msgstr "" - -#: glance/image_cache/drivers/xattr.py:383 -#, python-format -msgid "No grace period, reaping '%(path)s' immediately" -msgstr "" - -#: glance/image_cache/drivers/xattr.py:388 -#, python-format -msgid "Cache entry '%(path)s' exceeds grace period, (%(age)i s > %(grace)i s)" -msgstr "" - -#: glance/image_cache/drivers/xattr.py:394 +#: glance/image_cache/drivers/xattr.py:395 #, python-format msgid "Reaped %(reaped)s %(entry_type)s cache entries" msgstr "" @@ -2524,11 +2245,11 @@ msgstr "" msgid "Reloading cached file %s" msgstr "" -#: glance/openstack/common/gettextutils.py:297 +#: glance/openstack/common/gettextutils.py:320 msgid "Message objects do not support addition." msgstr "" -#: glance/openstack/common/gettextutils.py:306 +#: glance/openstack/common/gettextutils.py:330 msgid "" "Message objects do not support str() because they may contain non-ascii " "characters. Please use unicode() or translate() instead." @@ -2574,44 +2295,26 @@ msgstr "" msgid "Semaphore / lock released \"%(function)s\"" msgstr "" -#: glance/openstack/common/log.py:313 +#: glance/openstack/common/log.py:325 #, python-format msgid "Deprecated: %s" msgstr "" -#: glance/openstack/common/log.py:416 +#: glance/openstack/common/log.py:436 #, python-format msgid "Error loading logging config %(log_config)s: %(err_msg)s" msgstr "" -#: glance/openstack/common/log.py:467 +#: glance/openstack/common/log.py:487 #, python-format msgid "syslog facility must be one of: %s" msgstr "" -#: glance/openstack/common/log.py:688 +#: glance/openstack/common/log.py:714 #, python-format msgid "Fatal call to deprecated config: %(msg)s" msgstr "" -#: glance/openstack/common/loopingcall.py:84 -#, python-format -msgid "task run outlasted interval by %s sec" -msgstr "" - -#: glance/openstack/common/loopingcall.py:91 -msgid "in fixed duration looping call" -msgstr "" - -#: glance/openstack/common/loopingcall.py:131 -#, python-format -msgid "Dynamic looping call sleeping for %.02f seconds" -msgstr "" - -#: glance/openstack/common/loopingcall.py:138 -msgid "in dynamic looping call" -msgstr "" - #: glance/openstack/common/policy.py:395 #, python-format msgid "Failed to understand rule %(rule)s" @@ -2661,135 +2364,92 @@ msgstr "" msgid "process_input not supported over SSH" msgstr "" -#: glance/openstack/common/service.py:112 -#: glance/openstack/common/service.py:275 -msgid "Full set of CONF:" -msgstr "" - -#: glance/openstack/common/service.py:121 -#: glance/openstack/common/service.py:218 -#, python-format -msgid "Caught %s, exiting" -msgstr "" - -#: glance/openstack/common/service.py:164 -msgid "Parent process has died unexpectedly, exiting" -msgstr "" - -#: glance/openstack/common/service.py:200 -msgid "Forking too fast, sleeping" -msgstr "" - -#: glance/openstack/common/service.py:223 -msgid "Unhandled exception" -msgstr "" - -#: glance/openstack/common/service.py:230 -#, python-format -msgid "Started child %d" -msgstr "" - -#: glance/openstack/common/service.py:257 -#, python-format -msgid "Child %(pid)d killed by signal %(sig)d" -msgstr "" - -#: glance/openstack/common/service.py:261 -#, python-format -msgid "Child %(pid)s exited with status %(code)d" -msgstr "" - -#: glance/openstack/common/service.py:265 -#, python-format -msgid "pid %d not in child list" -msgstr "" - -#: glance/openstack/common/service.py:293 -#, python-format -msgid "Caught %s, stopping children" -msgstr "" - -#: glance/openstack/common/service.py:304 -#, python-format -msgid "Waiting on %d children to exit" -msgstr "" - -#: glance/openstack/common/strutils.py:86 +#: glance/openstack/common/strutils.py:92 #, python-format msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s" msgstr "" -#: glance/openstack/common/strutils.py:188 +#: glance/openstack/common/strutils.py:197 #, python-format -msgid "Invalid string format: %s" +msgid "Invalid unit system: \"%s\"" msgstr "" -#: glance/openstack/common/strutils.py:195 +#: glance/openstack/common/strutils.py:206 #, python-format -msgid "Unknown byte multiplier: %s" +msgid "Invalid string format: %s" msgstr "" #: glance/openstack/common/db/exception.py:44 msgid "Invalid Parameter: Unicode is not supported by the current database." msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:188 +#: glance/openstack/common/db/sqlalchemy/migration.py:190 msgid "version should be an integer" msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:216 +#: glance/openstack/common/db/sqlalchemy/migration.py:219 #, python-format msgid "" "Tables \"%s\" have non utf8 collation, please make sure all tables are " "CHARSET=utf8" msgstr "" -#: glance/openstack/common/db/sqlalchemy/migration.py:240 +#: glance/openstack/common/db/sqlalchemy/migration.py:243 msgid "" "The database is not under version control, but has tables. Please stamp " "the current version of the schema manually." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:164 +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:92 +#, python-format +msgid "config_path is %s" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:197 +#, python-format +msgid "latest version is %s" +msgstr "" + +#: glance/openstack/common/db/sqlalchemy/utils.py:162 #, python-format msgid "" "There is no `deleted` column in `%s` table. Project doesn't use soft-" "deleted feature." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:176 +#: glance/openstack/common/db/sqlalchemy/utils.py:174 #, python-format msgid "Unrecognized read_deleted value '%s'" msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:183 +#: glance/openstack/common/db/sqlalchemy/utils.py:181 #, python-format msgid "There is no `project_id` column in `%s` table." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:241 +#: glance/openstack/common/db/sqlalchemy/utils.py:243 msgid "model should be a subclass of ModelBase" msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:284 +#: glance/openstack/common/db/sqlalchemy/utils.py:286 #, python-format msgid "" "Please specify column %s in col_name_col_instance param. It is required " "because column has unsupported type by sqlite)." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:290 +#: glance/openstack/common/db/sqlalchemy/utils.py:292 #, python-format msgid "" "col_name_col_instance param has wrong type of column instance for column " "%s It should be instance of sqlalchemy.Column." msgstr "" -#: glance/openstack/common/db/sqlalchemy/utils.py:391 +#: glance/openstack/common/db/sqlalchemy/utils.py:400 msgid "Unsupported id columns type" msgstr "" -#: glance/quota/__init__.py:316 +#: glance/quota/__init__.py:318 #, python-format msgid "Cleaning up %s after exceeding the quota." msgstr "" @@ -2802,135 +2462,135 @@ msgstr "" msgid "Port the registry server is listening on." msgstr "" -#: glance/registry/api/v1/images.py:105 +#: glance/registry/api/v1/images.py:106 #, python-format msgid "Invalid marker. Image %(id)s could not be found." msgstr "" -#: glance/registry/api/v1/images.py:107 glance/registry/api/v1/images.py:112 +#: glance/registry/api/v1/images.py:108 glance/registry/api/v1/images.py:113 msgid "Invalid marker. Image could not be found." msgstr "" -#: glance/registry/api/v1/images.py:110 glance/registry/api/v1/images.py:328 -#: glance/registry/api/v1/images.py:359 glance/registry/api/v1/images.py:478 +#: glance/registry/api/v1/images.py:111 glance/registry/api/v1/images.py:329 +#: glance/registry/api/v1/images.py:360 glance/registry/api/v1/images.py:479 #: glance/registry/api/v1/members.py:72 glance/registry/api/v1/members.py:106 #: glance/registry/api/v1/members.py:219 glance/registry/api/v1/members.py:279 #, python-format msgid "Access denied to image %(id)s but returning 'not found'" msgstr "" -#: glance/registry/api/v1/images.py:115 +#: glance/registry/api/v1/images.py:116 msgid "Unable to get images" msgstr "" -#: glance/registry/api/v1/images.py:147 +#: glance/registry/api/v1/images.py:148 msgid "Returning image list" msgstr "" -#: glance/registry/api/v1/images.py:165 +#: glance/registry/api/v1/images.py:166 msgid "Returning detailed image list" msgstr "" -#: glance/registry/api/v1/images.py:216 +#: glance/registry/api/v1/images.py:217 msgid "Unrecognized changes-since value" msgstr "" -#: glance/registry/api/v1/images.py:221 +#: glance/registry/api/v1/images.py:222 msgid "protected must be True, or False" msgstr "" -#: glance/registry/api/v1/images.py:268 +#: glance/registry/api/v1/images.py:269 #, python-format msgid "Unsupported sort_key. Acceptable values: %s" msgstr "" -#: glance/registry/api/v1/images.py:277 +#: glance/registry/api/v1/images.py:278 #, python-format msgid "Unsupported sort_dir. Acceptable values: %s" msgstr "" -#: glance/registry/api/v1/images.py:303 +#: glance/registry/api/v1/images.py:304 msgid "is_public must be None, True, or False" msgstr "" -#: glance/registry/api/v1/images.py:319 +#: glance/registry/api/v1/images.py:320 #, python-format msgid "Successfully retrieved image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:322 glance/registry/api/v1/images.py:363 -#: glance/registry/api/v1/images.py:466 glance/registry/api/v1/members.py:66 +#: glance/registry/api/v1/images.py:323 glance/registry/api/v1/images.py:364 +#: glance/registry/api/v1/images.py:467 glance/registry/api/v1/members.py:66 #: glance/registry/api/v1/members.py:100 glance/registry/api/v1/members.py:213 #: glance/registry/api/v1/members.py:273 #, python-format msgid "Image %(id)s not found" msgstr "" -#: glance/registry/api/v1/images.py:332 +#: glance/registry/api/v1/images.py:333 #, python-format msgid "Unable to show image %s" msgstr "" -#: glance/registry/api/v1/images.py:349 +#: glance/registry/api/v1/images.py:350 #, python-format msgid "Successfully deleted image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:353 +#: glance/registry/api/v1/images.py:354 #, python-format msgid "Delete denied for public image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:367 +#: glance/registry/api/v1/images.py:368 #, python-format msgid "Unable to delete image %s" msgstr "" -#: glance/registry/api/v1/images.py:392 +#: glance/registry/api/v1/images.py:393 #, python-format msgid "Rejecting image creation request for invalid image id '%(bad_id)s'" msgstr "" -#: glance/registry/api/v1/images.py:395 +#: glance/registry/api/v1/images.py:396 msgid "Invalid image id format" msgstr "" -#: glance/registry/api/v1/images.py:405 +#: glance/registry/api/v1/images.py:406 #, python-format msgid "Successfully created image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:409 +#: glance/registry/api/v1/images.py:410 #, python-format msgid "Image with identifier %s already exists!" msgstr "" -#: glance/registry/api/v1/images.py:413 +#: glance/registry/api/v1/images.py:414 #, python-format msgid "Failed to add image metadata. Got error: %(e)s" msgstr "" -#: glance/registry/api/v1/images.py:418 +#: glance/registry/api/v1/images.py:419 #, python-format msgid "Unable to create image %s" msgstr "" -#: glance/registry/api/v1/images.py:443 +#: glance/registry/api/v1/images.py:458 #, python-format -msgid "Updating image %(id)s with metadata: %(image_data)r" +msgid "Updating metadata for image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:457 +#: glance/registry/api/v1/images.py:462 #, python-format -msgid "Updating metadata for image %(id)s" +msgid "Failed to update image metadata. Got error: %(e)s" msgstr "" -#: glance/registry/api/v1/images.py:472 +#: glance/registry/api/v1/images.py:473 #, python-format msgid "Update denied for public image %(id)s" msgstr "" -#: glance/registry/api/v1/images.py:489 +#: glance/registry/api/v1/images.py:490 #, python-format msgid "Unable to update image %s" msgstr "" @@ -2973,11 +2633,6 @@ msgstr "" msgid "Successfully updated a membership for image %(id)s" msgstr "" -#: glance/registry/api/v1/members.py:297 -#, python-format -msgid "%(id)s is not a member of image %(image_id)s" -msgstr "" - #: glance/registry/api/v1/members.py:300 glance/registry/api/v1/members.py:317 msgid "Membership could not be found." msgstr "" @@ -3036,7 +2691,7 @@ msgid "" "registry request to complete. A value of 0 implies no timeout." msgstr "" -#: glance/registry/client/__init__.py:43 glance/store/__init__.py:55 +#: glance/registry/client/__init__.py:43 glance/store/__init__.py:53 msgid "" "Whether to pass through the user token when making requests to the " "registry." @@ -3084,45 +2739,24 @@ msgstr "" msgid "Could not find required configuration option" msgstr "" -#: glance/registry/client/v1/api.py:159 -msgid "Adding image metadata..." -msgstr "" - -#: glance/registry/client/v1/api.py:166 -#, python-format -msgid "Updating image metadata for image %s..." -msgstr "" - -#: glance/registry/client/v1/api.py:173 -#, python-format -msgid "Deleting image metadata for image %s..." -msgstr "" - -#: glance/registry/client/v1/client.py:110 -#, python-format -msgid "" -"Registry request %(method)s %(action)s HTTP %(status)s request id " -"%(request_id)s" -msgstr "" - -#: glance/registry/client/v1/client.py:118 +#: glance/registry/client/v1/client.py:120 #, python-format msgid "Registry client request %(method)s %(action)s raised %(exc_name)s" msgstr "" -#: glance/store/__init__.py:40 +#: glance/store/__init__.py:38 msgid "" "List of which store classes and store class locations are currently known" " to glance at startup." msgstr "" -#: glance/store/__init__.py:43 +#: glance/store/__init__.py:41 msgid "" "Default scheme to use to store image data. The scheme must be registered " "by one of the stores defined by the 'known_stores' config option." msgstr "" -#: glance/store/__init__.py:53 +#: glance/store/__init__.py:51 msgid "Turn on/off delayed delete." msgstr "" @@ -3131,246 +2765,193 @@ msgstr "" msgid "%s Skipping store driver." msgstr "" -#: glance/store/__init__.py:196 +#: glance/store/__init__.py:197 #, python-format msgid "" "%s not found in `known_store`. Stores need to be explicitly enabled in " "the configuration file." msgstr "" -#: glance/store/__init__.py:318 +#: glance/store/__init__.py:233 +#, python-format +msgid "Store for scheme %s not found" +msgstr "" + +#: glance/store/__init__.py:326 #, python-format msgid "Failed to delete image %s in store from URI" msgstr "" -#: glance/store/__init__.py:324 +#: glance/store/__init__.py:332 #, python-format msgid "Failed to delete image %(image_id)s from store (%(error)s)" msgstr "" -#: glance/store/__init__.py:359 +#: glance/store/__init__.py:367 #, python-format msgid "" "The image metadata key %(key)s has an invalid type of %(val)s. Only " "dict, list, and unicode are supported." msgstr "" -#: glance/store/__init__.py:383 +#: glance/store/__init__.py:391 #, python-format msgid "" "The storage driver %(store)s returned invalid metadata %(metadata)s. This" " must be a dictionary type" msgstr "" -#: glance/store/__init__.py:392 +#: glance/store/__init__.py:400 #, python-format msgid "" "A bad metadata structure was returned from the %(store)s storage driver: " "%(metadata)s. %(error)s." msgstr "" -#: glance/store/__init__.py:419 -msgid "Skipping store.set_acls... not implemented." -msgstr "" - -#: glance/store/__init__.py:469 -#, python-format -msgid "Invalid location: %s" -msgstr "" - -#: glance/store/__init__.py:667 -#, python-format -msgid "Original locations is not empty: %s" -msgstr "" - -#: glance/store/__init__.py:739 -#, python-format -msgid "Get image %(id)s data failed: %(err)s." -msgstr "" - -#: glance/store/__init__.py:744 -#, python-format -msgid "Glance tried all locations to get data for image %s but all have failed." -msgstr "" - -#: glance/store/base.py:35 glance/tests/unit/test_store_base.py:51 -#, python-format -msgid "Caught '%(exception)s' exception." -msgstr "" - -#: glance/store/base.py:56 +#: glance/store/base.py:57 #, python-format msgid "Failed to configure store correctly: %s Disabling add method." msgstr "" -#: glance/store/cinder.py:88 -#, python-format -msgid "Cinderclient connection created using URL: %s" -msgstr "" - -#: glance/store/cinder.py:118 -msgid "URI must start with cinder://" +#: glance/store/cinder.py:115 +msgid "URI must start with 'cinder://'" msgstr "" -#: glance/store/cinder.py:126 -#, python-format -msgid "URI contains invalid volume ID: %s" +#: glance/store/cinder.py:123 +msgid "URI contains invalid volume ID" msgstr "" -#: glance/store/cinder.py:149 +#: glance/store/cinder.py:146 msgid "Cinder storage requires a context." msgstr "" -#: glance/store/cinder.py:153 +#: glance/store/cinder.py:150 msgid "Cinder storage requires a service catalog." msgstr "" -#: glance/store/cinder.py:175 +#: glance/store/cinder.py:172 #, python-format msgid "Failed to get image size due to volume can not be found: %s" msgstr "" -#: glance/store/cinder.py:180 +#: glance/store/cinder.py:177 #, python-format msgid "Failed to get image size due to internal error: %s" msgstr "" -#: glance/store/filesystem.py:41 +#: glance/store/filesystem.py:42 msgid "Directory to which the Filesystem backend store writes images." msgstr "" -#: glance/store/filesystem.py:44 +#: glance/store/filesystem.py:45 msgid "" "List of directories and its priorities to which the Filesystem backend " "store writes images." msgstr "" -#: glance/store/filesystem.py:47 +#: glance/store/filesystem.py:48 msgid "" "The path to a file which contains the metadata to be returned with any " "location associated with this store. The file must contain a valid JSON " "dict." msgstr "" -#: glance/store/filesystem.py:78 -#, python-format -msgid "No path specified in URI: %s" +#: glance/store/filesystem.py:79 +msgid "No path specified in URI" msgstr "" -#: glance/store/filesystem.py:131 +#: glance/store/filesystem.py:132 #, python-format msgid "Permission to write in %s denied" msgstr "" -#: glance/store/filesystem.py:148 +#: glance/store/filesystem.py:149 #, python-format msgid "Directory to write image files does not exist (%s). Creating." msgstr "" -#: glance/store/filesystem.py:162 +#: glance/store/filesystem.py:163 #, python-format msgid "Unable to create datadir: %s" msgstr "" -#: glance/store/filesystem.py:176 +#: glance/store/filesystem.py:177 msgid "" "Specify at least 'filesystem_store_datadir' or " "'filesystem_store_datadirs' option" msgstr "" -#: glance/store/filesystem.py:183 +#: glance/store/filesystem.py:184 msgid "" "Specify either 'filesystem_store_datadir' or 'filesystem_store_datadirs' " "option" msgstr "" -#: glance/store/filesystem.py:220 +#: glance/store/filesystem.py:221 #, python-format msgid "" "Directory %(datadir_path)s specified multiple times in " "filesystem_store_datadirs option of filesystem configuration" msgstr "" -#: glance/store/filesystem.py:245 +#: glance/store/filesystem.py:246 #, python-format msgid "Invalid priority value %(priority)s in filesystem configuration" msgstr "" -#: glance/store/filesystem.py:252 +#: glance/store/filesystem.py:253 msgid "Invalid directory specified in filesystem configuration" msgstr "" -#: glance/store/filesystem.py:264 +#: glance/store/filesystem.py:265 #, python-format msgid "Image file %s not found" msgstr "" -#: glance/store/filesystem.py:279 +#: glance/store/filesystem.py:280 #, python-format msgid "" "The JSON in the metadata file %(file)s could not be used: %(error)s An " "empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:286 +#: glance/store/filesystem.py:287 #, python-format msgid "" "The path for the metadata file %(file)s could not be opened: %(error)s " "An empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:293 +#: glance/store/filesystem.py:294 #, python-format msgid "" "An error occurred processing the storage systems meta data file: %s. An " "empty dictionary will be returned to the client." msgstr "" -#: glance/store/filesystem.py:309 -#, python-format -msgid "Found image at %s. Returning in ChunkedFile." -msgstr "" - -#: glance/store/filesystem.py:324 -#, python-format -msgid "Found image at %s." -msgstr "" - -#: glance/store/filesystem.py:343 -#, python-format -msgid "Deleting image at %(fn)s" -msgstr "" - -#: glance/store/filesystem.py:346 +#: glance/store/filesystem.py:348 #, python-format msgid "You cannot delete file %s" msgstr "" -#: glance/store/filesystem.py:348 +#: glance/store/filesystem.py:350 #, python-format msgid "Image file %s does not exist" msgstr "" -#: glance/store/filesystem.py:393 +#: glance/store/filesystem.py:395 #, python-format msgid "" "There is no enough disk space left on the image storage media. " "requested=%s" msgstr "" -#: glance/store/filesystem.py:424 +#: glance/store/filesystem.py:426 #, python-format msgid "Image file %s already exists!" msgstr "" -#: glance/store/filesystem.py:450 -#, python-format -msgid "" -"Wrote %(bytes_written)d bytes to %(filepath)s with checksum " -"%(checksum_hex)s" -msgstr "" - -#: glance/store/filesystem.py:462 +#: glance/store/filesystem.py:464 #, python-format msgid "Unable to remove partial image data for image %(id)s: %(error)s" msgstr "" @@ -3379,419 +2960,361 @@ msgstr "" msgid "Missing dependencies: pymongo" msgstr "" -#: glance/store/gridfs.py:113 glance/store/s3.py:252 glance/store/swift.py:366 -#: glance/store/vmware_datastore.py:235 +#: glance/store/gridfs.py:113 glance/store/swift.py:422 +#: glance/store/vmware_datastore.py:257 #, python-format msgid "Could not find %(param)s in configuration options." msgstr "" -#: glance/store/gridfs.py:157 -#, python-format -msgid "Could not find %s image in GridFS" -msgstr "" - #: glance/store/gridfs.py:180 #, python-format msgid "GridFS already has an image at location %s" msgstr "" -#: glance/store/gridfs.py:183 -#, python-format -msgid "Adding a new image to GridFS with id %(id)s and size %(size)s" -msgstr "" - -#: glance/store/gridfs.py:196 -#, python-format -msgid "Uploaded image %(id)s, md5 %(md5)s, length %(length)s to GridFS" -msgstr "" - -#: glance/store/http.py:81 -#, python-format -msgid "Credentials '%s' not well-formatted." +#: glance/store/http.py:82 +msgid "Credentials are not well-formatted." msgstr "" #: glance/store/http.py:88 msgid "No address specified in HTTP URL" msgstr "" -#: glance/store/http.py:154 -#, python-format -msgid "The HTTP URL exceeded %s maximum redirects." +#: glance/store/http.py:150 +msgid "The HTTP URL is invalid." msgstr "" -#: glance/store/http.py:166 -#, python-format -msgid "HTTP URL returned a %s status code." +#: glance/store/http.py:174 +msgid "HTTP datastore could not find image at URI." msgstr "" -#: glance/store/http.py:173 +#: glance/store/http.py:177 #, python-format -msgid "The HTTP URL attempted to redirect with an invalid %s status code." +msgid "HTTP URL returned a %s status code." msgstr "" -#: glance/store/location.py:85 +#: glance/store/http.py:184 #, python-format -msgid "Registering scheme %(k)s with %(v)s" +msgid "The HTTP URL attempted to redirect with an invalid %s status code." msgstr "" -#: glance/store/rbd.py:51 +#: glance/store/rbd.py:55 msgid "" "RADOS images will be chunked into objects of this size (in megabytes). " "For best performance, this should be a power of two." msgstr "" -#: glance/store/rbd.py:55 +#: glance/store/rbd.py:59 msgid "RADOS pool in which images are stored." msgstr "" -#: glance/store/rbd.py:57 +#: glance/store/rbd.py:61 msgid "" "RADOS user to authenticate as (only applicable if using Cephx. If ," " a default will be chosen based on the client. section in " "rbd_store_ceph_conf)." msgstr "" -#: glance/store/rbd.py:61 +#: glance/store/rbd.py:65 msgid "" "Ceph configuration file path. If , librados will locate the default" " config. If using cephx authentication, this file should include a " "reference to the right keyring in a client. section." msgstr "" -#: glance/store/rbd.py:107 +#: glance/store/rbd.py:111 msgid "URI must start with rbd://" msgstr "" -#: glance/store/rbd.py:108 glance/store/rbd.py:117 glance/store/rbd.py:130 -#: glance/store/rbd.py:136 -#, python-format -msgid "Invalid URI: %(uri)s: %(reason)s" -msgstr "" - -#: glance/store/rbd.py:116 +#: glance/store/rbd.py:119 msgid "URI contains non-ascii characters" msgstr "" -#: glance/store/rbd.py:129 +#: glance/store/rbd.py:131 msgid "URI must have exactly 1 or 4 components" msgstr "" -#: glance/store/rbd.py:135 +#: glance/store/rbd.py:136 msgid "URI cannot contain empty components" msgstr "" -#: glance/store/rbd.py:171 glance/store/rbd.py:235 glance/store/rbd.py:295 +#: glance/store/rbd.py:171 glance/store/rbd.py:295 #, python-format msgid "RBD image %s does not exist" msgstr "" -#: glance/store/rbd.py:198 glance/store/sheepdog.py:197 -#: glance/store/sheepdog.py:205 +#: glance/store/rbd.py:198 glance/store/sheepdog.py:198 +#: glance/store/sheepdog.py:214 #, python-format msgid "Error in store configuration: %s" msgstr "" -#: glance/store/rbd.py:282 -#, python-format -msgid "snapshot %(image)s@%(snap)s could not be unprotected because it is in use" -msgstr "" - -#: glance/store/rbd.py:297 -#, python-format -msgid "image %s could not be removed because it is in use" -msgstr "" - -#: glance/store/rbd.py:328 +#: glance/store/rbd.py:331 msgid "" "since image size is zero we will be doing resize-before-write for each " "chunk which will be considerably slower than normal" msgstr "" -#: glance/store/rbd.py:337 +#: glance/store/rbd.py:340 #, python-format msgid "RBD image %s already exists" msgstr "" -#: glance/store/rbd.py:353 -#, python-format -msgid "resizing image to %s KiB" -msgstr "" - -#: glance/store/rbd.py:356 -#, python-format -msgid "writing chunk at offset %s" -msgstr "" - -#: glance/store/s3.py:37 +#: glance/store/s3.py:50 msgid "The host where the S3 server is listening." msgstr "" -#: glance/store/s3.py:39 +#: glance/store/s3.py:52 msgid "The S3 query token access key." msgstr "" -#: glance/store/s3.py:41 +#: glance/store/s3.py:54 msgid "The S3 query token secret key." msgstr "" -#: glance/store/s3.py:43 +#: glance/store/s3.py:56 msgid "The S3 bucket to be used to store the Glance data." msgstr "" -#: glance/store/s3.py:45 +#: glance/store/s3.py:58 msgid "" "The local directory where uploads will be staged before they are " "transferred into S3." msgstr "" -#: glance/store/s3.py:48 +#: glance/store/s3.py:61 msgid "" "A boolean to determine if the S3 bucket should be created on upload if it" " does not exist or if an error should be returned to the user." msgstr "" -#: glance/store/s3.py:52 +#: glance/store/s3.py:65 msgid "" "The S3 calling format used to determine the bucket. Either subdomain or " "path can be used." msgstr "" -#: glance/store/s3.py:115 +#: glance/store/s3.py:69 msgid "" -"URI cannot contain more than one occurrence of a scheme. If you have " -"specified a URI like " -"s3://accesskey:secretkey@https://s3.amazonaws.com/bucket/key-id, you need" -" to change it to use the s3+https:// scheme, like so: " -"s3+https://accesskey:secretkey@s3.amazonaws.com/bucket/key-id" -msgstr "" - -#: glance/store/s3.py:123 -#, python-format -msgid "Invalid store uri: %s" +"What size, in MB, should S3 start chunking image files and do a multipart" +" upload in S3." msgstr "" -#: glance/store/s3.py:149 -#, python-format -msgid "Badly formed S3 credentials %s" -msgstr "" - -#: glance/store/s3.py:162 -msgid "Badly formed S3 URI. Missing s3 service URL." +#: glance/store/s3.py:73 +msgid "" +"What multipart upload part size, in MB, should S3 use when uploading " +"parts. The size must be greater than or equal to 5M." msgstr "" -#: glance/store/s3.py:165 -#, python-format -msgid "Badly formed S3 URI: %s" +#: glance/store/s3.py:77 +msgid "The number of thread pools to perform a multipart upload in S3." msgstr "" -#: glance/store/s3.py:307 -#, python-format +#: glance/store/s3.py:198 msgid "" -"Retrieved image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" +"URI cannot contain more than one occurrence of a scheme. If you have " +"specified a URI like " +"s3://accesskey:secretkey@https://s3.amazonaws.com/bucket/key-id, you need" +" to change it to use the s3+https:// scheme, like so: " +"s3+https://accesskey:secretkey@s3.amazonaws.com/bucket/key-id" msgstr "" -#: glance/store/s3.py:367 -#, python-format -msgid "S3 already has an image at location %s" +#: glance/store/s3.py:232 +msgid "Badly formed S3 credentials" msgstr "" -#: glance/store/s3.py:371 -#, python-format -msgid "" -"Adding image object to S3 using (s3_host=%(s3_host)s, " -"access_key=%(access_key)s, bucket=%(bucket)s, key=%(obj_name)s)" +#: glance/store/s3.py:245 +msgid "Badly formed S3 URI. Missing s3 service URL." msgstr "" -#: glance/store/s3.py:393 -#, python-format -msgid "Writing request body file to temporary file for %s" +#: glance/store/s3.py:248 +msgid "Badly formed S3 URI" msgstr "" -#: glance/store/s3.py:405 +#: glance/store/s3.py:337 #, python-format -msgid "Uploading temporary file to S3 for %s" +msgid "" +"s3_store_large_object_chunk_size must be at least %(_s3_ck_min)d MB. You " +"configured it as %(_s3_ck_size)d MB" msgstr "" -#: glance/store/s3.py:414 +#: glance/store/s3.py:347 #, python-format -msgid "" -"Wrote %(size)d bytes to S3 key named %(obj_name)s with checksum " -"%(checksum_hex)s" +msgid "s3_store_thread_pools must be a positive integer. %s" msgstr "" -#: glance/store/s3.py:442 +#: glance/store/s3.py:471 #, python-format -msgid "" -"Deleting image object from S3 using (s3_host=%(s3_host)s, " -"access_key=%(accesskey)s, bucket=%(bucket)s, key=%(obj_name)s)" +msgid "S3 already has an image at location %s" msgstr "" -#: glance/store/s3.py:464 +#: glance/store/s3.py:596 #, python-format -msgid "Could not find bucket with ID %s" +msgid "Failed to add image object to S3. key=%(obj_name)s" msgstr "" -#: glance/store/s3.py:505 +#: glance/store/s3.py:684 #, python-format msgid "" "Failed to add bucket to S3.\n" "Got error from S3: %(e)s" msgstr "" -#: glance/store/s3.py:509 +#: glance/store/s3.py:688 #, python-format msgid "" "The bucket %(bucket)s does not exist in S3. Please set the " "s3_store_create_bucket_on_put option to add bucket to S3 automatically." msgstr "" -#: glance/store/s3.py:528 -#, python-format -msgid "Could not find key %(obj)s in bucket %(bucket)s" -msgstr "" - -#: glance/store/sheepdog.py:42 +#: glance/store/sheepdog.py:43 msgid "" "Images will be chunked into objects of this size (in megabytes). For best" " performance, this should be a power of two." msgstr "" -#: glance/store/sheepdog.py:46 +#: glance/store/sheepdog.py:47 msgid "Port of sheep daemon." msgstr "" -#: glance/store/sheepdog.py:48 +#: glance/store/sheepdog.py:49 msgid "IP address of sheep daemon." msgstr "" -#: glance/store/sheepdog.py:225 glance/store/sheepdog.py:244 -#: glance/store/sheepdog.py:305 +#: glance/store/sheepdog.py:150 #, python-format -msgid "Sheepdog image %s does not exist" +msgid "URI must start with '%s://'" msgstr "" -#: glance/store/sheepdog.py:266 -#, python-format -msgid "Sheepdog image %s already exists" +#: glance/store/sheepdog.py:154 +msgid "URI must contains well-formated image id" msgstr "" -#: glance/store/swift.py:49 -msgid "Whether to use ServiceNET to communicate with the Swift storage servers." +#: glance/store/sheepdog.py:204 +#, python-format +msgid "Invalid address configuration of sheepdog store: %s" msgstr "" -#: glance/store/swift.py:52 -msgid "The address where the Swift authentication service is listening." +#: glance/store/sheepdog.py:234 glance/store/sheepdog.py:253 +#: glance/store/sheepdog.py:314 +#, python-format +msgid "Sheepdog image %s does not exist" msgstr "" -#: glance/store/swift.py:55 -msgid "The user to authenticate against the Swift authentication service." +#: glance/store/sheepdog.py:275 +#, python-format +msgid "Sheepdog image %s already exists" msgstr "" -#: glance/store/swift.py:58 -msgid "" -"Auth key for the user authenticating against the Swift authentication " -"service." +#: glance/store/swift.py:53 +msgid "Whether to use ServiceNET to communicate with the Swift storage servers." msgstr "" -#: glance/store/swift.py:61 +#: glance/store/swift.py:56 msgid "" "Version of the authentication service to use. Valid versions are 2 for " -"keystone and 1 for swauth and rackspace." +"keystone and 1 for swauth and rackspace. (deprecated)" msgstr "" -#: glance/store/swift.py:65 +#: glance/store/swift.py:60 msgid "" "If True, swiftclient won't check for a valid SSL certificate when " "authenticating." msgstr "" -#: glance/store/swift.py:68 +#: glance/store/swift.py:63 msgid "" "The region of the swift endpoint to be used for single tenant. This " "setting is only necessary if the tenant has multiple swift endpoints." msgstr "" -#: glance/store/swift.py:72 +#: glance/store/swift.py:67 msgid "" "A string giving the endpoint type of the swift service to use (publicURL," " adminURL or internalURL). This setting is only used if " "swift_store_auth_version is 2." msgstr "" -#: glance/store/swift.py:77 +#: glance/store/swift.py:72 msgid "" "A string giving the service type of the swift service to use. This " "setting is only used if swift_store_auth_version is 2." msgstr "" -#: glance/store/swift.py:82 +#: glance/store/swift.py:77 msgid "" "Container within the account that the account should use for storing " "images in Swift." msgstr "" -#: glance/store/swift.py:86 +#: glance/store/swift.py:81 msgid "" "The size, in MB, that Glance will start chunking image files and do a " "large object manifest in Swift." msgstr "" -#: glance/store/swift.py:90 +#: glance/store/swift.py:85 msgid "" "The amount of data written to a temporary disk buffer during the process " "of chunking the image file." msgstr "" -#: glance/store/swift.py:93 +#: glance/store/swift.py:88 msgid "" "A boolean value that determines if we create the container if it does not" " exist." msgstr "" -#: glance/store/swift.py:96 +#: glance/store/swift.py:91 msgid "" "If set to True, enables multi-tenant storage mode which causes Glance " "images to be stored in tenant specific Swift accounts." msgstr "" -#: glance/store/swift.py:100 +#: glance/store/swift.py:95 msgid "" "A list of tenants that will be granted read/write access on all Swift " "containers created by Glance in multi-tenant mode." msgstr "" -#: glance/store/swift.py:104 +#: glance/store/swift.py:99 msgid "" "If set to False, disables SSL layer compression of https swift requests. " "Setting to False may improve performance for images which are already in " "a compressed format, eg qcow2." msgstr "" -#: glance/store/swift.py:109 +#: glance/store/swift.py:104 msgid "" "The number of times a Swift download will be retried before the request " "fails." msgstr "" -#: glance/store/swift.py:129 +#: glance/store/swift.py:126 #, python-format msgid "Swift exception raised %s" msgstr "" -#: glance/store/swift.py:134 +#: glance/store/swift.py:131 #, python-format msgid "Stopping Swift retries after %d attempts" msgstr "" -#: glance/store/swift.py:139 +#: glance/store/swift.py:136 #, python-format msgid "" "Retrying Swift connection (%(retries)d/%(max_retries)d) with " "range=%(start)d-%(end)d" msgstr "" -#: glance/store/swift.py:214 +#: glance/store/swift.py:223 +msgid "Badly formed Swift URI. Credentials not found foraccount reference" +msgstr "" + +#: glance/store/swift.py:274 +msgid "Badly formed Swift URI." +msgstr "" + +#: glance/store/swift.py:293 msgid "" "URI cannot contain more than one occurrence of a scheme. If you have " "specified a URI like " @@ -3800,77 +3323,43 @@ msgid "" "swift+http://user:pass@authurl.com/v1/container/obj" msgstr "" -#: glance/store/swift.py:220 -#, python-format -msgid "Invalid store URI: %(reason)s" -msgstr "" - -#: glance/store/swift.py:264 -msgid "Badly formed Swift URI." -msgstr "" - -#: glance/store/swift.py:328 +#: glance/store/swift.py:384 #, python-format msgid "Swift could not find object %s." msgstr "" -#: glance/store/swift.py:375 -#, python-format -msgid "Deleting chunk %s" -msgstr "" - -#: glance/store/swift.py:379 +#: glance/store/swift.py:435 #, python-format msgid "Failed to delete orphaned chunk %(container)s/%(chunk)s" msgstr "" -#: glance/store/swift.py:391 -#, python-format -msgid "Adding image object '%(obj_name)s' to Swift" -msgstr "" - -#: glance/store/swift.py:411 -msgid "Cannot determine image size. Adding as a segmented object to Swift." -msgstr "" - -#: glance/store/swift.py:440 +#: glance/store/swift.py:496 msgid "Error during chunked upload to backend, deleting stale chunks" msgstr "" -#: glance/store/swift.py:447 -#, python-format -msgid "" -"Wrote chunk %(chunk_name)s (%(chunk_id)d/%(total_chunks)s) of length " -"%(bytes_read)d to Swift returning MD5 of content: %(chunk_etag)s" -msgstr "" - -#: glance/store/swift.py:461 -msgid "Deleting final zero-length chunk" -msgstr "" - -#: glance/store/swift.py:498 +#: glance/store/swift.py:559 msgid "Swift already has an image at this location" msgstr "" -#: glance/store/swift.py:500 +#: glance/store/swift.py:561 #, python-format msgid "" "Failed to add object to Swift.\n" "Got error from Swift: %(e)s" msgstr "" -#: glance/store/swift.py:541 glance/store/swift.py:702 +#: glance/store/swift.py:602 glance/store/swift.py:787 msgid "Swift could not find image at URI." msgstr "" -#: glance/store/swift.py:562 +#: glance/store/swift.py:626 #, python-format msgid "" "Failed to add container to Swift.\n" "Got error from Swift: %(e)s" msgstr "" -#: glance/store/swift.py:566 +#: glance/store/swift.py:630 #, python-format msgid "" "The container %(container)s does not exist in Swift. Please set the " @@ -3878,20 +3367,32 @@ msgid "" "automatically." msgstr "" -#: glance/store/swift.py:610 +#: glance/store/swift.py:660 +msgid "A value for swift_store_auth_address is required." +msgstr "" + +#: glance/store/swift.py:673 +msgid "A value for swift_store_ref_params is required." +msgstr "" + +#: glance/store/swift.py:690 +msgid "Location credentials are invalid" +msgstr "" + +#: glance/store/swift.py:695 msgid "Location is missing user:password information." msgstr "" -#: glance/store/swift.py:622 +#: glance/store/swift.py:707 #, python-format msgid "Badly formed tenant:user '%(user)s' in Swift URI" msgstr "" -#: glance/store/swift.py:649 +#: glance/store/swift.py:734 msgid "Multi-tenant Swift storage requires a context." msgstr "" -#: glance/store/swift.py:653 +#: glance/store/swift.py:738 msgid "Multi-tenant Swift storage requires a service catalog." msgstr "" @@ -3942,63 +3443,53 @@ msgstr "" msgid "Allow to perform insecure SSL requests to ESX/VC." msgstr "" -#: glance/store/vmware_datastore.py:165 +#: glance/store/vmware_datastore.py:189 #, python-format -msgid "URI %(uri)s must start with %(scheme)s://" +msgid "URI must start with %s://" msgstr "" -#: glance/store/vmware_datastore.py:181 -#, python-format -msgid "Badly formed VMware datastore URI %(uri)s." +#: glance/store/vmware_datastore.py:204 +msgid "Badly formed VMware datastore URI" msgstr "" -#: glance/store/vmware_datastore.py:222 +#: glance/store/vmware_datastore.py:244 #, python-format msgid "Could not find datastore %(ds_name)s in datacenter %(dc_path)s" msgstr "" -#: glance/store/vmware_datastore.py:280 glance/store/vmware_datastore.py:288 +#: glance/store/vmware_datastore.py:304 glance/store/vmware_datastore.py:312 #, python-format msgid "Failed to upload content of image %(image)s" msgstr "" -#: glance/store/vmware_datastore.py:284 +#: glance/store/vmware_datastore.py:308 #, python-format msgid "Image file %(image_id)s already exists!" msgstr "" -#: glance/store/vmware_datastore.py:359 +#: glance/store/vmware_datastore.py:383 #, python-format msgid "Failed to delete image %(image)s content." msgstr "" -#: glance/store/vmware_datastore.py:364 -#, python-format -msgid "The HTTP URL exceeded %(max_redirects)s maximum redirects." -msgstr "" - -#: glance/store/vmware_datastore.py:374 +#: glance/store/vmware_datastore.py:398 #, python-format msgid "Failed to access image %(image)s content." msgstr "" -#: glance/store/vmware_datastore.py:378 -msgid "VMware datastore could not find image at URI." -msgstr "" - -#: glance/store/vmware_datastore.py:381 +#: glance/store/vmware_datastore.py:405 #, python-format msgid "HTTP request returned a %(status)s status code." msgstr "" -#: glance/store/vmware_datastore.py:388 +#: glance/store/vmware_datastore.py:412 #, python-format msgid "" "The HTTP URL %(path)s attempted to redirect with an invalid %(status)s " "status code." msgstr "" -#: glance/tests/unit/test_migrations.py:927 +#: glance/tests/unit/test_migrations.py:929 #, python-format msgid "location: %s data lost" msgstr "" diff --git a/glance/locale/ja/LC_MESSAGES/glance-log-critical.po b/glance/locale/ja/LC_MESSAGES/glance-log-critical.po new file mode 100644 index 0000000000..b838814545 --- /dev/null +++ b/glance/locale/ja/LC_MESSAGES/glance-log-critical.po @@ -0,0 +1,23 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-30 06:12+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Japanese (http://www.transifex.com/projects/p/glance/language/" +"ja/)\n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#~ msgid "DB exceeded retry limit." +#~ msgstr "DBへのリトライが上限に達しました。" diff --git a/glance/locale/ja/LC_MESSAGES/glance-log-error.po b/glance/locale/ja/LC_MESSAGES/glance-log-error.po new file mode 100644 index 0000000000..71d8387385 --- /dev/null +++ b/glance/locale/ja/LC_MESSAGES/glance-log-error.po @@ -0,0 +1,56 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Japanese (http://www.transifex.com/projects/p/glance/language/" +"ja/)\n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: glance/openstack/common/db/api.py:72 +msgid "DB exceeded retry limit." +msgstr "DBへのリトライが上限に達しました。" + +#: glance/openstack/common/db/api.py:76 +msgid "DB connection error." +msgstr "DB接続エラーが発生しました。" + +#: glance/openstack/common/db/sqlalchemy/session.py:460 +msgid "DB exception wrapped." +msgstr "DB 例外がラップされました。" + +#: glance/openstack/common/db/sqlalchemy/test_migrations.py:268 +#, python-format +msgid "Failed to migrate to version %(version)s on engine %(engine)s" +msgstr "" + +#: glance/store/s3.py:124 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d, status=" +"%(status)d, reason=%(reason)s" +msgstr "" + +#: glance/store/s3.py:133 +#, python-format +msgid "" +"Failed to upload part in S3 partnum=%(pnum)d, size=%(bsize)d due to internal " +"error: %(err)s" +msgstr "" + +#: glance/store/s3.py:593 +#, python-format +msgid "Some parts failed to upload to S3. Aborted the object key=%(obj_name)s" +msgstr "" diff --git a/glance/locale/pt_BR/LC_MESSAGES/glance-log-info.po b/glance/locale/pt_BR/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..5e344b8fca --- /dev/null +++ b/glance/locale/pt_BR/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/" +"glance/language/pt_BR/)\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "Excluindo linha duplicada com ID: %(id)s da tabela: %(table)s" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr "" diff --git a/glance/locale/zh_CN/LC_MESSAGES/glance-log-info.po b/glance/locale/zh_CN/LC_MESSAGES/glance-log-info.po new file mode 100644 index 0000000000..54b7d9383b --- /dev/null +++ b/glance/locale/zh_CN/LC_MESSAGES/glance-log-info.po @@ -0,0 +1,61 @@ +# Translations template for glance. +# Copyright (C) 2014 ORGANIZATION +# This file is distributed under the same license as the glance project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Glance\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2014-06-30 06:00+0000\n" +"PO-Revision-Date: 2014-05-28 21:28+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/glance/" +"language/zh_CN/)\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 1.3\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: glance/openstack/common/db/sqlalchemy/utils.py:379 +#, python-format +msgid "Deleting duplicated row with id: %(id)s from table: %(table)s" +msgstr "正在从表 %(table)s 中删除具有id %(id)s 的重复行" + +#: glance/store/rbd.py:112 glance/store/rbd.py:120 glance/store/rbd.py:132 +#: glance/store/rbd.py:137 +#, python-format +msgid "Invalid URI: %s" +msgstr "" + +#: glance/store/s3.py:108 +#, python-format +msgid "" +"Uploading upload part in S3 partnum=%(pnum)d, size=%(bsize)d, key=%(key)s, " +"UploadId=%(UploadId)s" +msgstr "" + +#: glance/store/s3.py:206 +#, python-format +msgid "Invalid store uri: %s" +msgstr "" + +#: glance/store/s3.py:579 +#, python-format +msgid "" +"Multipart complete key=%(obj_name)s UploadId=%(UploadId)s Wrote " +"%(total_size)d bytes to S3 keynamed %(obj_name)s with checksum " +"%(checksum_hex)s" +msgstr "" + +#: glance/store/swift.py:299 +#, python-format +msgid "Invalid store URI: %(reason)s" +msgstr "" + +#: glance/store/swift.py:621 +#, python-format +msgid "Creating swift container %(container)s" +msgstr ""