# English (United States) translations for glance. # Copyright (C) 2013 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-03-26 06:02+0000\n" "PO-Revision-Date: 2013-04-10 10:09+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: en_US \n" "Plural-Forms: nplurals=2; plural=(n != 1)\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/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)" msgstr "" #: glance/notifier.py:68 msgid "notifier_strategy was deprecated in favor of `notification_driver`" msgstr "" #: glance/notifier.py:229 glance/api/common.py:82 #, 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 #, 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 #, python-format msgid "Insufficient permissions on image storage media: %s" msgstr "Insufficient permissions on image storage media: %s" #: glance/notifier.py:248 #, python-format msgid "Cannot save data for image %(image_id)s: %(error)s" msgstr "" #: glance/notifier.py:254 #, python-format msgid "Unable to upload duplicate image data for image%(image_id)s: %(error)s" msgstr "" #: glance/notifier.py:261 #, python-format msgid "Not allowed to upload image data for image %(image_id)s: %(error)s" msgstr "" #: glance/notifier.py:267 #, 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 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to HTTP error: " "%(error)s" msgstr "" #: glance/notifier.py:281 #, python-format msgid "" "Failed to upload image data for image %(image_id)s due to internal error:" " %(error)s" msgstr "" #: glance/schema.py:58 #, 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 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 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 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 "" "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." #: glance/scrubber.py:50 msgid "" "Items must have a modified time that is older than this value in order to" " be candidates for cleanup." msgstr "" "Items must have a modified time that is older than this value in order to" " be candidates for cleanup." #: glance/scrubber.py:134 #, python-format msgid "%s file can not be read." msgstr "" #: glance/scrubber.py:158 #, python-format msgid "%s file can not be wrote." msgstr "" #: glance/scrubber.py:183 glance/api/v1/images.py:1022 #, python-format msgid "Failed to find image to delete: %(e)s" msgstr "Failed to find image to delete: %(e)s" #: glance/scrubber.py:215 #, python-format msgid "%s directory does not exist." msgstr "" #: glance/scrubber.py:362 #, 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 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 #, python-format msgid "Initializing scrubber with configuration: %s" msgstr "" #: glance/scrubber.py:412 #, python-format msgid "Can not %s scrub jobs from queue." msgstr "" #: glance/scrubber.py:436 #, 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 #, python-format msgid "Failed to delete URI from image %(image_id)s" msgstr "" #: glance/scrubber.py:476 #, python-format msgid "%s file is not exists." msgstr "" #: glance/scrubber.py:481 #, python-format msgid "%s file contains conflicting cleanup timestamp." msgstr "" #: glance/scrubber.py:500 #, python-format msgid "%s file can not be created." msgstr "" #: glance/scrubber.py:514 #, python-format msgid "Getting images deleted before %s" msgstr "Getting images deleted before %s" #: glance/api/authorization.py:118 glance/api/authorization.py:129 #, python-format msgid "You cannot get image member for %s" msgstr "You cannot get image member for %s" #: glance/api/authorization.py:137 #, python-format msgid "You cannot delete image member for %s" msgstr "You cannot delete image member for %s" #: glance/api/authorization.py:146 #, python-format msgid "You cannot add image member for %s" msgstr "You cannot add image member for %s" #: glance/api/authorization.py:155 #, python-format msgid "You cannot update image member %s" msgstr "You cannot update image member %s" #: glance/api/authorization.py:174 #, 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 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 msgid "Public images do not have members." msgstr "Public images do not have members." #: glance/api/authorization.py:213 #, python-format msgid "You are not permitted to modify '%(attr)s' on this %(resource)s." msgstr "" #: glance/api/authorization.py:223 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 #, 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 msgid "You are not permitted to modify this image." msgstr "You are not permitted to modify this image." #: glance/api/authorization.py:264 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 msgid "You are not permitted to delete this image." msgstr "You are not permitted to delete this image." #: glance/api/authorization.py:316 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 msgid "You are not permitted to set status on this task." msgstr "" #: glance/api/authorization.py:420 #, python-format msgid "You are not permitted to create this task with owner as: %s" msgstr "" #: glance/api/common.py:44 #, python-format msgid "" "An error occurred reading from backend storage for image %(image_id)s: " "%(err)s" msgstr "" "An error occurred reading from backend storage for image %(image_id)s: " "%(err)s" #: glance/api/common.py:51 #, python-format msgid "" "Backend storage for image %(image_id)s disconnected after writing only " "%(bytes_written)d bytes" msgstr "" "Backend storage for image %(image_id)s disconnected after writing only " "%(bytes_written)d bytes" #: glance/api/common.py:56 #, 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 #, 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 #, python-format msgid "" "User %(user)s attempted to upload an image of size %(size)d that will " "exceeed the quota. %(remaining)d bytes remaining." msgstr "" #: glance/api/policy.py:34 msgid "The location of the policy file." msgstr "The location of the policy file." #: glance/api/policy.py:36 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 #, python-format msgid "Invalid locations: %s" msgstr "" #: glance/api/middleware/cache.py:57 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 "" "Image cache contained image file for image '%s', however the registry did" " not contain metadata for that image!" msgstr "" "Image cache contained image file for image '%s', however the registry did" " not contain metadata for that image!" #: glance/api/middleware/cache.py:230 #, python-format 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." #: glance/api/middleware/cache_manage.py:72 msgid "Initialized image cache management middleware" msgstr "Initialized image cache management middleware" #: glance/api/middleware/context.py:28 msgid "" "When true, this option sets the owner of an image to be the tenant. " "Otherwise, the owner of the image will be the authenticated user issuing" " the request." msgstr "" "When true, this option sets the owner of an image to be the tenant. " "Otherwise, the owner of the image will be the authenticated user issuing" " the request." #: glance/api/middleware/context.py:33 msgid "Role used to identify an authenticated user as administrator." msgstr "Role used to identify an authenticated user as administrator." #: glance/api/middleware/context.py:36 msgid "" "Allow unauthenticated users to access the API with read-only privileges. " "This only applies when using ContextMiddleware." msgstr "" "Allow unauthenticated users to access the API with read-only privileges. " "This only applies when using ContextMiddleware." #: glance/api/middleware/context.py:52 msgid "Unable to retrieve request id from context" msgstr "Unable to retrieve request id from context" #: glance/api/middleware/context.py:109 msgid "Invalid service catalog json." msgstr "Invalid service catalog json." #: glance/api/middleware/gzip.py:33 msgid "Initialized gzip middleware" msgstr "" #: glance/api/middleware/version_negotiation.py:41 #, python-format 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 #, python-format msgid "Invalid disk format '%s' for image." msgstr "" #: glance/api/v1/images.py:78 #, python-format msgid "Invalid container format '%s' for image." msgstr "" #: glance/api/v1/images.py:83 #, python-format msgid "Image name too long: %d" msgstr "Image name too long: %d" #: glance/api/v1/images.py:94 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 "" "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." #: glance/api/v1/images.py:172 #, 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" msgstr "" #: glance/api/v1/images.py:380 #, 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 #, 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 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 msgid "Forbidden to update deleted image." msgstr "Forbidden to update deleted image." #: glance/api/v1/images.py:842 #, python-format msgid "Forbidden to modify '%s' of active image." msgstr "" #: glance/api/v1/images.py:860 msgid "Cannot upload to an unqueued image" msgstr "Cannot upload to an unqueued image" #: glance/api/v1/images.py:884 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 #, 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 #, 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 #, 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 #, 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 msgid "No authenticated user" msgstr "No authenticated user" #: glance/api/v1/members.py:53 #, 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 #, python-format msgid "" "The limit has been exceeded on the number of allowed image members for " "this image. Attempted: %(attempted)s, Maximum: %(maximum)s" msgstr "" #: glance/api/v1/upload_utils.py:72 #, python-format msgid "Unable to kill image %(id)s: " msgstr "" #: glance/api/v1/upload_utils.py:107 #, python-format msgid "Cleaning up %s after exceeding the quota" msgstr "" #: glance/api/v1/upload_utils.py:115 #, 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 "" "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 #, 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 #, python-format msgid "Denying attempt to upload image because it exceeds the .quota: %s" msgstr "" #: glance/api/v1/upload_utils.py:226 #, 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 #, python-format msgid "Failed to upload image %s" msgstr "" #: glance/api/v2/image_data.py:56 #, python-format msgid "Unable to restore image %(image_id)s: %(e)s" msgstr "" #: glance/api/v2/image_data.py:71 #, 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 #, python-format msgid "Image exceeds the storage quota: %s" msgstr "" #: glance/api/v2/image_data.py:121 #, python-format msgid "The incoming image is too large: %s" msgstr "" #: glance/api/v2/image_data.py:135 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 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 msgid "Body expected in request." msgstr "Body expected in request." #: glance/api/v2/image_members.py:200 msgid "Member to be added not specified" msgstr "Member to be added not specified" #: glance/api/v2/image_members.py:203 msgid "Member can't be empty" msgstr "" #: glance/api/v2/image_members.py:212 msgid "Status not specified" msgstr "Status not specified" #: glance/api/v2/image_members.py:267 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 msgid "An identifier for the image" msgstr "An identifier for the image" #: glance/api/v2/image_members.py:277 msgid "Date and time of image member creation" msgstr "Date and time of image member creation" #: glance/api/v2/image_members.py:284 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 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 #, python-format msgid "Property %s does not exist." msgstr "Property %s does not exist." #: glance/api/v2/images.py:168 #, python-format msgid "Property %s already present." msgstr "Property %s already present." #: glance/api/v2/images.py:179 #, python-format msgid "Property %s may not be removed." msgstr "Property %s may not be removed." #: glance/api/v2/images.py:197 #, python-format msgid "Failed to find image %(image_id)s to delete" msgstr "" #: glance/api/v2/images.py:216 msgid "Cannot replace locations from a non-empty list to a non-empty list." msgstr "" #: glance/api/v2/images.py:239 msgid "Invalid position for adding a location." msgstr "" #: glance/api/v2/images.py:254 msgid "Invalid position for removing a location." msgstr "" #: glance/api/v2/images.py:295 glance/api/v2/images.py:394 #, python-format msgid "Attribute '%s' is read-only." msgstr "" #: glance/api/v2/images.py:319 glance/api/v2/images.py:341 #, 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 msgid "" "Operation objects must contain only one member named \"add\", \"remove\"," " or \"replace\"." msgstr "" "Operation objects must contain only one member named \"add\", \"remove\"," " or \"replace\"." #: glance/api/v2/images.py:332 msgid "" "Operation objects must contain exactly one member named \"add\", " "\"remove\", or \"replace\"." msgstr "" "Operation objects must contain exactly one member named \"add\", " "\"remove\", or \"replace\"." #: glance/api/v2/images.py:369 #, python-format msgid "Pointer `%s` does not start with \"/\"." msgstr "Pointer `%s` does not start with \"/\"." #: glance/api/v2/images.py:372 #, python-format msgid "Pointer `%s` contains adjacent \"/\"." msgstr "" #: glance/api/v2/images.py:375 #, python-format msgid "Pointer `%s` end with \"/\"." msgstr "" #: glance/api/v2/images.py:378 #, python-format msgid "Pointer `%s` does not contains valid token." msgstr "" #: glance/api/v2/images.py:381 #, 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 #, python-format msgid "Operation \"%s\" requires a member named \"value\"." msgstr "Operation \"%s\" requires a member named \"value\"." #: glance/api/v2/images.py:397 #, python-format msgid "Attribute '%s' is reserved." msgstr "" #: glance/api/v2/images.py:427 #, python-format msgid "Invalid JSON pointer for this resource: '/%s'" msgstr "" #: glance/api/v2/images.py:439 msgid "Unrecognized JSON Schema draft version" msgstr "Unrecognized JSON Schema draft version" #: glance/api/v2/images.py:460 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 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 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 msgid "limit param must be positive" msgstr "limit param must be positive" #: glance/api/v2/images.py:498 glance/api/v2/tasks.py:134 #, python-format msgid "Invalid sort direction: %s" msgstr "Invalid sort direction: %s" #: glance/api/v2/images.py:505 #, python-format msgid "Invalid status: %s" msgstr "Invalid status: %s" #: glance/api/v2/images.py:514 #, python-format msgid "Invalid visibility value: %s" msgstr "Invalid visibility value: %s" #: glance/api/v2/images.py:650 msgid "Descriptive name for the image" msgstr "Descriptive name for the image" #: glance/api/v2/images.py:655 msgid "Status of the image (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:661 msgid "Scope of image accessibility" msgstr "Scope of image accessibility" #: glance/api/v2/images.py:666 msgid "If true, image will not be deletable." msgstr "If true, image will not be deletable." #: glance/api/v2/images.py:670 msgid "md5 hash of image contents. (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:675 msgid "Owner of the image" msgstr "" #: glance/api/v2/images.py:680 msgid "Size of image file in bytes (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:684 msgid "Virtual size of image in bytes (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:688 msgid "Format of the container" msgstr "" #: glance/api/v2/images.py:693 msgid "Format of the disk" msgstr "" #: glance/api/v2/images.py:698 msgid "Date and time of image registration (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:706 msgid "Date and time of the last image modification (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:712 msgid "List of strings related to the image" msgstr "List of strings related to the image" #: glance/api/v2/images.py:720 msgid "URL to access the image file kept in external store (READ-ONLY)" msgstr "" #: glance/api/v2/images.py:725 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 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 msgid "A set of URLs to access the image file kept in external store" msgstr "" #: glance/api/v2/images.py:798 #, python-format msgid "" "Could not find schema properties file %s. Continuing without custom " "properties" msgstr "" "Could not find schema properties file %s. Continuing without custom " "properties" #: glance/api/v2/tasks.py:66 #, python-format msgid "Forbidden to create task. Reason: %(reason)s" msgstr "" #: glance/api/v2/tasks.py:109 #, python-format msgid "Failed to find task %(task_id)s. Reason: %(reason)s" msgstr "" #: glance/api/v2/tasks.py:114 #, python-format msgid "Forbidden to get task %(task_id)s. Reason: %(reason)s" msgstr "" #: glance/api/v2/tasks.py:128 msgid "Body expected in request" msgstr "" #: glance/api/v2/tasks.py:143 #, python-format msgid "Invalid status value: %s" msgstr "" #: glance/api/v2/tasks.py:149 #, python-format msgid "Invalid type value: %s" msgstr "" #: glance/api/v2/tasks.py:156 glance/registry/api/v1/images.py:258 msgid "Invalid marker format" msgstr "Invalid marker format" #: glance/api/v2/tasks.py:177 #, python-format msgid "Task '%s' is required" msgstr "" #: glance/api/v2/tasks.py:292 msgid "An identifier for the task" msgstr "" #: glance/api/v2/tasks.py:293 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 msgid "The type of task represented by this content" msgstr "" #: glance/api/v2/tasks.py:305 msgid "The current status of this task" msgstr "" #: glance/api/v2/tasks.py:315 msgid "The parameters required by task, JSON blob" msgstr "" #: glance/api/v2/tasks.py:319 msgid "The result of current task, JSON blob" msgstr "" #: glance/api/v2/tasks.py:323 msgid "An identifier for the owner of this task" msgstr "" #: glance/api/v2/tasks.py:327 msgid "" "Human-readable informative message only included when appropriate " "(usually on failure)" msgstr "" #: glance/api/v2/tasks.py:332 msgid "Datetime when this resource would be subject to removal" msgstr "" #: glance/api/v2/tasks.py:337 msgid "Datetime when this resource was created" msgstr "" #: glance/api/v2/tasks.py:341 msgid "Datetime when this resource was updated" msgstr "" #: glance/cmd/control.py:102 #, python-format msgid "%(serv)s appears to already be running: %(pid)s" msgstr "" #: glance/cmd/control.py:106 #, python-format msgid "Removing stale pid file %s" msgstr "" #: glance/cmd/control.py:115 msgid "Unable to increase file descriptor limit. Running as non-root?" msgstr "" #: glance/cmd/control.py:161 #, python-format msgid "%(verb)sing %(serv)s" msgstr "" #: glance/cmd/control.py:176 #, python-format msgid "unable to launch %(serv)s. Got error: %(e)s" msgstr "" #: glance/cmd/control.py:206 #, python-format msgid "%(serv)s (pid %(pid)s) is running..." msgstr "" #: glance/cmd/control.py:209 #, python-format msgid "%s is stopped" msgstr "" #: glance/cmd/control.py:225 #, python-format msgid "" "Unable to create pid file %(pid)s. Running as non-root?\n" "Falling back to a temp file, you can stop %(service)s service using:\n" " %(file)s %(server)s stop --pid-file %(fb)s" msgstr "" #: glance/cmd/control.py:255 #, python-format msgid "Stopping %(serv)s (pid %(pid)s) with signal(%(sig)s)" msgstr "" #: glance/cmd/control.py:259 #, python-format msgid "Process %d not running" msgstr "" #: glance/cmd/control.py:266 #, python-format msgid "Waited 15 seconds for pid %(pid)s (%(file)s) to die; giving up" msgstr "" #: glance/cmd/control.py:269 #, python-format msgid "%s is already stopped" msgstr "" #: glance/cmd/control.py:346 #, python-format msgid "Supressed respawn as %(serv)s was %(rsn)s." msgstr "" #: glance/cmd/replicator.py:55 #, python-format 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:105 #, python-format msgid "" "Request: %(method)s http://%(server)s:%(port)s%(url)s with headers " "%(headers)s" msgstr "" #: glance/cmd/replicator.py:118 #, 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" 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 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 #, 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 #, python-format msgid "Considering: %s" msgstr "" #: glance/cmd/replicator.py:337 msgid "... storing" msgstr "" #: glance/cmd/replicator.py:348 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 msgid "... metadata has changed" msgstr "" #: glance/cmd/replicator.py:456 msgid "... dump is missing image data, skipping" msgstr "" #: glance/cmd/replicator.py:505 #, 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 #, python-format msgid "%s is being synced" msgstr "" #: glance/cmd/replicator.py:596 #, 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 #, python-format msgid "%s: entirely missing from the destination" msgstr "" #: glance/cmd/replicator.py:717 #, python-format msgid "Unknown command: %s" msgstr "" #: glance/common/auth.py:186 glance/common/auth.py:226 #, python-format msgid "Unexpected response: %s" msgstr "Unexpected response: %s" #: glance/common/auth.py:254 #, python-format msgid "Unknown auth strategy '%s'" msgstr "Unknown auth strategy '%s'" #: glance/common/auth.py:275 #, python-format msgid "Encountered service with no \"type\": %s" msgstr "Encountered service with no \"type\": %s" #: glance/common/client.py:240 msgid "" "You have selected to use SSL in connecting, and you have supplied a cert," " however you have failed to supply either a key_file parameter or set the" " GLANCE_CLIENT_KEY_FILE environ variable" msgstr "" "You have selected to use SSL in connecting, and you have supplied a cert," " however you have failed to supply either a key_file parameter or set the" " GLANCE_CLIENT_KEY_FILE environ variable" #: glance/common/client.py:248 msgid "" "You have selected to use SSL in connecting, and you have supplied a key, " "however you have failed to supply either a cert_file parameter or set the" " GLANCE_CLIENT_CERT_FILE environ variable" msgstr "" "You have selected to use SSL in connecting, and you have supplied a key, " "however you have failed to supply either a cert_file parameter or set the" " GLANCE_CLIENT_CERT_FILE environ variable" #: glance/common/client.py:257 #, python-format msgid "The key file you specified %s does not exist" msgstr "The key file you specified %s does not exist" #: glance/common/client.py:264 #, python-format msgid "The cert file you specified %s does not exist" msgstr "The cert file you specified %s does not exist" #: glance/common/client.py:271 #, python-format 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" msgstr "Constructed URL: %s" #: glance/common/config.py:34 msgid "" "Partial name of a pipeline in your paste configuration file with the " "service name removed. For example, if your paste section name is " "[pipeline:glance-api-keystone] use the value \"keystone\"" msgstr "" "Partial name of a pipeline in your paste configuration file with the " "service name removed. For example, if your paste section name is " "[pipeline:glance-api-keystone] use the value \"keystone\"" #: glance/common/config.py:40 msgid "Name of the paste configuration file." msgstr "Name of the paste configuration file." #: glance/common/config.py:45 msgid "Supported values for the 'container_format' image attribute" msgstr "" #: glance/common/config.py:52 msgid "Supported values for the 'disk_format' image attribute" msgstr "" #: glance/common/config.py:60 msgid "Time in hours for which a task lives after, either succeeding or failing" msgstr "" #: glance/common/config.py:67 msgid "" "Whether to allow users to specify image properties beyond what the image " "schema provides" msgstr "" "Whether to allow users to specify image properties beyond what the image " "schema provides" #: glance/common/config.py:70 msgid "" "Maximum number of image members per image. Negative values evaluate to " "unlimited." msgstr "" #: glance/common/config.py:73 msgid "" "Maximum number of properties allowed on an image. Negative values " "evaluate to unlimited." msgstr "" #: glance/common/config.py:76 msgid "" "Maximum number of tags allowed on an image. Negative values evaluate to " "unlimited." msgstr "" #: glance/common/config.py:79 msgid "" "Maximum number of locations allowed on an image. Negative values evaluate" " to unlimited." msgstr "" #: glance/common/config.py:82 msgid "Python module path of data access API" msgstr "Python module path of data access API" #: glance/common/config.py:84 msgid "" "Default value for the number of items returned by a request if not " "specified explicitly in the request" msgstr "" "Default value for the number of items returned by a request if not " "specified explicitly in the request" #: glance/common/config.py:87 msgid "Maximum permissible number of items that could be returned by a request" msgstr "Maximum permissible number of items that could be returned by a request" #: glance/common/config.py:90 msgid "" "Whether to include the backend image storage location in image " "properties. Revealing storage location can be a security risk, so use " "this setting with caution!" msgstr "" #: glance/common/config.py:95 msgid "" "Whether to include the backend image locations in image properties. " "Revealing storage location can be a security risk, so use this setting " "with caution! The overrides show_image_direct_url." msgstr "" #: glance/common/config.py:100 msgid "" "Maximum size of image a user can upload in bytes. Defaults to " "1099511627776 bytes (1 TB)." msgstr "" "Maximum size of image a user can upload in bytes. Defaults to " "1099511627776 bytes (1 TB)." #: 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." msgstr "" #: glance/common/config.py:107 msgid "Deploy the v1 OpenStack Images API." msgstr "" #: glance/common/config.py:109 msgid "Deploy the v2 OpenStack Images API." msgstr "" #: glance/common/config.py:111 msgid "Deploy the v1 OpenStack Registry API." msgstr "" #: glance/common/config.py:113 msgid "Deploy the v2 OpenStack Registry API." msgstr "" #: glance/common/config.py:115 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 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 msgid "" "Key used for encrypting sensitive metadata while talking to the registry " "or database." msgstr "" "Key used for encrypting sensitive metadata while talking to the registry " "or database." #: glance/common/config.py:179 #, 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 #, python-format msgid "" "Unable to load %(app_name)s from configuration file %(conf_file)s.\n" "Got: %(e)r" msgstr "" "Unable to load %(app_name)s from configuration file %(conf_file)s.\n" "Got: %(e)r" #: glance/common/exception.py:38 msgid "An unknown exception occurred" msgstr "An unknown exception occurred" #: glance/common/exception.py:63 #, python-format msgid "Missing required credential: %(required)s" msgstr "Missing required credential: %(required)s" #: glance/common/exception.py:67 #, python-format msgid "" "Incorrect auth strategy, expected \"%(expected)s\" but received " "\"%(received)s\"" msgstr "" "Incorrect auth strategy, expected \"%(expected)s\" but received " "\"%(received)s\"" #: glance/common/exception.py:72 msgid "An object with the specified identifier was not found." msgstr "An object with the specified identifier was not found." #: glance/common/exception.py:76 #, python-format msgid "Unknown scheme '%(scheme)s' found in URI" msgstr "Unknown scheme '%(scheme)s' found in URI" #: glance/common/exception.py:80 msgid "The Store URI was malformed." msgstr "The Store URI was malformed." #: glance/common/exception.py:84 msgid "An object with the same identifier already exists." msgstr "An object with the same identifier already exists." #: glance/common/exception.py:88 msgid "An object with the same identifier is currently being operated on." msgstr "" #: glance/common/exception.py:93 msgid "There is not enough disk space on the image storage media." msgstr "There is not enough disk space on the image storage media." #: glance/common/exception.py:97 #, python-format msgid "" "The size of the data %(image_size)s will exceed the limit. %(remaining)s " "bytes remaining." msgstr "" #: glance/common/exception.py:102 msgid "Permission to write image storage media denied." msgstr "Permission to write image storage media denied." #: glance/common/exception.py:106 #, python-format msgid "Connect error/bad request to Auth service at URL %(url)s." msgstr "Connect error/bad request to Auth service at URL %(url)s." #: glance/common/exception.py:110 #, python-format msgid "Auth service at URL %(url)s not found." msgstr "Auth service at URL %(url)s not found." #: glance/common/exception.py:114 msgid "Authorization failed." msgstr "Authorization failed." #: glance/common/exception.py:118 msgid "You are not authenticated." msgstr "You are not authenticated." #: glance/common/exception.py:122 glance/common/exception.py:126 msgid "You are not authorized to complete this action." msgstr "You are not authorized to complete this action." #: glance/common/exception.py:130 #, python-format msgid "Image %(image_id)s is protected and cannot be deleted." msgstr "Image %(image_id)s is protected and cannot be deleted." #: glance/common/exception.py:134 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 msgid "Sort key supplied was not valid." msgstr "Sort key supplied was not valid." #: glance/common/exception.py:142 msgid "Invalid configuration in property protection file." msgstr "" #: glance/common/exception.py:146 msgid "Unable to filter using the specified range." msgstr "Unable to filter using the specified range." #: glance/common/exception.py:150 #, python-format msgid "Attribute '%(property)s' is read-only." msgstr "Attribute '%(property)s' is read-only." #: glance/common/exception.py:154 #, python-format msgid "Attribute '%(property)s' is reserved." msgstr "Attribute '%(property)s' is reserved." #: glance/common/exception.py:158 #, python-format msgid "Redirecting to %(uri)s for authorization." msgstr "Redirecting to %(uri)s for authorization." #: glance/common/exception.py:162 msgid "There was an error connecting to a server" msgstr "There was an error connecting to a server" #: glance/common/exception.py:166 msgid "There was an error configuring the client." msgstr "There was an error configuring the client." #: glance/common/exception.py:170 #, python-format msgid "" "The request returned a 302 Multiple Choices. This generally means that " "you have not included a version indicator in a request URI.\n" "\n" "The body of response returned:\n" "%(body)s" msgstr "" "The request returned a 302 Multiple Choices. This generally means that " "you have not included a version indicator in a request URI.\n" "\n" "The body of response returned:\n" "%(body)s" #: glance/common/exception.py:176 #, python-format msgid "" "The request returned a 413 Request Entity Too Large. This generally means" " that rate limiting or a quota threshold was breached.\n" "\n" "The response body:\n" "%(body)s" msgstr "" "The request returned a 413 Request Entity Too Large. This generally means" " that rate limiting or a quota threshold was breached.\n" "\n" "The response body:\n" "%(body)s" #: glance/common/exception.py:187 msgid "" "The request returned 503 Service Unavilable. This generally occurs on " "service overload or other transient outage." msgstr "" "The request returned 503 Service Unavilable. This generally occurs on " "service overload or other transient outage." #: glance/common/exception.py:198 msgid "The request returned 500 Internal Server Error." msgstr "The request returned 500 Internal Server Error." #: glance/common/exception.py:202 #, python-format msgid "" "The request returned an unexpected status: %(status)s.\n" "\n" "The response body:\n" "%(body)s" msgstr "" "The request returned an unexpected status: %(status)s.\n" "\n" "The response body:\n" "%(body)s" #: glance/common/exception.py:207 #, python-format msgid "Invalid content type %(content_type)s" msgstr "Invalid content type %(content_type)s" #: glance/common/exception.py:211 #, 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 #, 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 #, python-format msgid "" "Driver %(driver_name)s could not be configured correctly. Reason: " "%(reason)s" msgstr "" "Driver %(driver_name)s could not be configured correctly. Reason: " "%(reason)s" #: glance/common/exception.py:226 msgid "Deleting images from this store is not supported." msgstr "Deleting images from this store is not supported." #: glance/common/exception.py:230 msgid "Getting images from this store is not supported." msgstr "" #: glance/common/exception.py:234 msgid "Adding images to this store is not supported." msgstr "" #: glance/common/exception.py:238 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 #, python-format msgid "Maximum redirects (%(redirects)s) was exceeded." msgstr "Maximum redirects (%(redirects)s) was exceeded." #: glance/common/exception.py:247 msgid "Received invalid HTTP redirect." msgstr "Received invalid HTTP redirect." #: glance/common/exception.py:251 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 #, 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 "" "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 #, python-format msgid "Server worker creation failed: %(reason)s." msgstr "Server worker creation failed: %(reason)s." #: glance/common/exception.py:265 #, python-format msgid "Unable to load schema: %(reason)s" msgstr "Unable to load schema: %(reason)s" #: glance/common/exception.py:269 #, 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 #, python-format msgid "Provided header feature is unsupported: %(feature)s" msgstr "Provided header feature is unsupported: %(feature)s" #: glance/common/exception.py:278 msgid "" "The image cannot be deleted because it is in use through the backend " "store outside of Glance." msgstr "" "The image cannot be deleted because it is in use through the backend " "store outside of Glance." #: glance/common/exception.py:283 msgid "The provided image is too large." msgstr "The provided image is too large." #: glance/common/exception.py:293 #, 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 #, 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 #, 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 #, python-format msgid "%(cls)s exception was raised in the last rpc call: %(val)s" msgstr "" #: glance/common/exception.py:312 msgid "An unknown task exception occurred" msgstr "" #: glance/common/exception.py:316 #, python-format msgid "Task with the given id %(task_id)s was not found" msgstr "" #: glance/common/exception.py:320 #, python-format msgid "Provided status of task is unsupported: %(status)s" msgstr "" #: glance/common/exception.py:324 #, python-format msgid "Provided type of task is unsupported: %(type)s" msgstr "" #: glance/common/exception.py:328 #, python-format msgid "Status transition from %(cur_status)s to %(new_status)s is not allowed" msgstr "" #: glance/common/exception.py:333 #, 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 #, python-format msgid "Invalid value '%(value)s' for parameter '%(param)s': %(extra_msg)s" msgstr "" #: glance/common/exception.py:346 #, python-format msgid "" "Image status transition from %(cur_status)s to %(new_status)s is not " "allowed" msgstr "" #: glance/common/property_utils.py:37 msgid "The location of the property protection file." msgstr "" #: glance/common/property_utils.py:40 msgid "" "This config value indicates whether \"roles\" or \"policies\" are used in" " the property protection file." msgstr "" #: glance/common/property_utils.py:75 #, python-format msgid "Couldn't find property protection file %(file)s: %(error)s." msgstr "" #: glance/common/property_utils.py:82 #, 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 #, 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 #, 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 #, 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 #, python-format msgid "Encountered a malformed property protection rule %(rule)s: %(error)s." msgstr "" #: glance/common/rpc.py:139 msgid "Request must be a list of commands" msgstr "" #: glance/common/rpc.py:144 #, python-format msgid "Bad Command: %s" msgstr "" #: glance/common/rpc.py:151 #, python-format msgid "Wrong command structure: %s" msgstr "" #: glance/common/rpc.py:160 msgid "Command not found" msgstr "" #: glance/common/rpc.py:182 #, 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" msgstr "Error: cooperative_iter exception %s" #: glance/common/utils.py:251 #, python-format msgid "Bad header: %(header_name)s" msgstr "" #: glance/common/utils.py:261 #, python-format msgid "Cannot convert image %(key)s '%(value)s' to an integer." msgstr "" #: glance/common/utils.py:268 #, 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:478 #, python-format msgid "Invalid backend: %s" msgstr "Invalid backend: %s" #: glance/common/utils.py:509 #, 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 #, 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 #, 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." 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/wsgi.py:61 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 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 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 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 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 msgid "" "The number of child process workers that will be created to service API " "requests." msgstr "" "The number of child process workers that will be created to service API " "requests." #: glance/common/wsgi.py:80 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 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 msgid "" "When running server in SSL mode, you must specify both a cert_file and " "key_file option value in your configuration file" 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 #, 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 #, python-format msgid "Starting %d workers" msgstr "Starting %d workers" #: glance/common/wsgi.py:259 #, python-format msgid "Removing dead child %s" msgstr "Removing dead child %s" #: glance/common/wsgi.py:262 #, 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 msgid "All workers have terminated. Exiting" msgstr "All workers have terminated. Exiting" #: glance/common/wsgi.py:274 msgid "Caught keyboard interrupt. Exiting." msgstr "Caught keyboard interrupt. Exiting." #: glance/common/wsgi.py:278 msgid "Exited" msgstr "Exited" #: glance/common/wsgi.py:300 #, python-format msgid "Child %d exiting normally" msgstr "Child %d exiting normally" #: glance/common/wsgi.py:305 #, python-format msgid "Started child %s" msgstr "Started child %s" #: glance/common/wsgi.py:318 #, python-format msgid "eventlet '%s' hub is not available on this platform" msgstr "" #: glance/common/wsgi.py:335 msgid "Starting single process server" msgstr "Starting single process server" #: glance/common/wsgi.py:552 msgid "Malformed JSON in request body." msgstr "Malformed JSON in request body." #: glance/common/location_strategy/__init__.py:25 msgid "" "This value sets what strategy will be used to determine the image " "location order. Currently two strategies are packaged with Glance " "'location_order' and 'store_type'." msgstr "" #: glance/common/location_strategy/__init__.py:52 #, python-format msgid "" "%(strategy)s is registered as a module twice. %(module)s is not being " "used." msgstr "" #: glance/common/location_strategy/__init__.py:61 #, python-format msgid "Failed to load location strategy module %(module)s: %(e)s" msgstr "" #: glance/common/location_strategy/__init__.py:74 #, python-format msgid "" "Invalid location_strategy option: %(name)s. The valid strategy option(s) " "is(are): %(strategies)s" msgstr "" #: glance/common/location_strategy/store_type.py:25 msgid "" "The store names to use to get store preference order. The name must be " "registered by one of the stores defined by the 'known_stores' config " "option. This option will be applied when you using 'store_type' option as" " image location strategy defined by the 'location_strategy' config " "option." msgstr "" #: glance/db/__init__.py:64 glance/db/__init__.py:167 glance/db/__init__.py:179 #: glance/db/sqlalchemy/api.py:181 #, python-format msgid "No image found with ID %s" msgstr "" #: glance/db/__init__.py:238 #, python-format msgid "" "The target member %(member_id)s is already associated with image " "%(image_id)s." msgstr "" #: glance/db/__init__.py:255 #, 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 #, python-format msgid "Could not find task %s" msgstr "" #: glance/db/simple/api.py:41 #, 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 #, 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 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 #, python-format msgid "Could not find image %s" msgstr "Could not find image %s" #: glance/db/simple/api.py:333 msgid "Unable to get deleted image" msgstr "Unable to get deleted image" #: glance/db/simple/api.py:337 msgid "Unable to get unowned image" msgstr "Unable to get unowned image" #: glance/db/simple/api.py:425 glance/db/sqlalchemy/api.py:951 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 #, 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 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 #, python-format msgid "Could not find task info %s" msgstr "" #: glance/db/sqlalchemy/api.py:84 msgid "Attempted to modify image user did not own." msgstr "Attempted to modify image user did not own." #: glance/db/sqlalchemy/api.py:85 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 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 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/tests/unit/v2/test_registry_client.py:500 #, python-format msgid "" "cannot transition from %(current)s to %(next)s in update (wanted " "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" msgstr "creating table %(table)s" #: glance/db/sqlalchemy/migrate_repo/schema.py:102 #, python-format 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 #, 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 msgid "" "URI cannot contain more than one occurrence of a scheme.If you have " "specified a URI like " "swift://user:pass@http://authurl.com/v1/container/obj, you need to change" " it to use the swift+http:// scheme, like so: " "swift+http://user:pass@authurl.com/v1/container/obj" msgstr "" "URI cannot contain more than one occurrence of a scheme.If you have " "specified a URI like " "swift://user:pass@http://authurl.com/v1/container/obj, you need to change" " 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 #, 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 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 #, python-format msgid "Badly formed S3 URI: %(uri)s" msgstr "" #: glance/db/sqlalchemy/migrate_repo/versions/017_quote_encrypted_swift_credentials.py:65 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 "" "'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 #, python-format msgid "Failed to decrypt location value for image %(image_id)s" msgstr "" #: glance/domain/__init__.py:59 #, python-format msgid "new_image() got unexpected keywords %s" msgstr "" #: glance/domain/__init__.py:129 #, python-format msgid "__init__() got unexpected keyword argument '%s'" msgstr "" #: glance/domain/__init__.py:151 #, 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 #, 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 msgid "Visibility must be either \"public\" or \"private\"" msgstr "" #: glance/domain/__init__.py:190 msgid "Attribute container_format can be only replaced for a queued image." msgstr "" #: glance/domain/__init__.py:202 msgid "Attribute disk_format can be only replaced for a queued image." msgstr "" #: glance/domain/__init__.py:214 glance/domain/__init__.py:227 msgid "Cannot be a negative value" msgstr "" #: glance/domain/__init__.py:292 msgid "Status must be \"pending\", \"accepted\" or \"rejected\"." msgstr "Status must be \"pending\", \"accepted\" or \"rejected\"." #: glance/domain/__init__.py:356 #, python-format msgid "Task status changed from %(cur_status)s to %(new_status)s" msgstr "" #: glance/domain/__init__.py:361 #, 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 msgid "The driver to use for image cache management." msgstr "The driver to use for image cache management." #: glance/image_cache/__init__.py:36 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 msgid "" "The amount of time to let an image remain in the cache without being " "accessed." msgstr "" #: glance/image_cache/__init__.py:41 msgid "Base directory that the Image Cache uses." msgstr "Base directory that the Image Cache uses." #: glance/image_cache/__init__.py:63 #, python-format msgid "Image cache loaded driver '%s'." msgstr "Image cache loaded driver '%s'." #: glance/image_cache/__init__.py:66 #, python-format msgid "" "Image cache driver '%(driver_name)s' failed to load. Got error: " "'%(import_err)s." 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 msgid "Defaulting to SQLite driver." msgstr "Defaulting to SQLite driver." #: glance/image_cache/__init__.py:87 #, python-format msgid "" "Image cache driver '%(driver_module)s' failed to configure. Got error: " "'%(config_err)s" 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 #, 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 #, python-format msgid "" "Exception encountered while tee'ing image '%(image_id)s' into cache: " "%(error)s. Continuing with response." msgstr "" #: glance/image_cache/client.py:117 msgid "" "--os_auth_url option or OS_AUTH_URL environment variable required when " "keystone authentication strategy is enabled\n" msgstr "" #: glance/image_cache/prefetcher.py:46 #, python-format msgid "Image '%s' is not active. Not caching." msgstr "Image '%s' is not active. Not caching." #: glance/image_cache/prefetcher.py:51 #, python-format 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." #: glance/image_cache/prefetcher.py:82 #, python-format msgid "Successfully cached all %d images" msgstr "Successfully cached all %d images" #: glance/image_cache/drivers/base.py:54 #, python-format msgid "Failed to read %s from config" msgstr "Failed to read %s from config" #: glance/image_cache/drivers/sqlite.py:39 msgid "" "The path to the sqlite file database that will be used for image cache " "management." msgstr "" "The path to the sqlite file database that will be used for image cache " "management." #: glance/image_cache/drivers/sqlite.py:121 #, 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 #, 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 #, 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 #, 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 #, python-format msgid "Not queueing image '%s'. Already queued." msgstr "Not queueing image '%s'. Already queued." #: glance/image_cache/drivers/sqlite.py:437 #, python-format msgid "Removed invalid cache file %s" msgstr "Removed invalid cache file %s" #: glance/image_cache/drivers/sqlite.py:451 #, python-format msgid "Removed stalled cache file %s" msgstr "Removed stalled cache file %s" #: glance/image_cache/drivers/sqlite.py:453 #, 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 #, 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 #, python-format msgid "" "The device housing the image cache directory %(image_cache_dir)s does not" " support xattr. It is likely you need to edit your fstab and add the " "user_xattr option to the appropriate line for the device housing the " "cache directory." msgstr "" "The device housing the image cache directory %(image_cache_dir)s does not" " support xattr. It is likely you need to edit your fstab and add the " "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 #, python-format msgid "Reaped %(reaped)s %(entry_type)s cache entries" msgstr "Reaped %(reaped)s %(entry_type)s cache entries" #: glance/openstack/common/excutils.py:62 #, python-format msgid "Original exception being dropped: %s" msgstr "" #: glance/openstack/common/excutils.py:91 #, python-format msgid "Unexpected exception occurred %d time(s)... retrying." msgstr "" #: glance/openstack/common/fileutils.py:63 #, python-format msgid "Reloading cached file %s" msgstr "" #: glance/openstack/common/gettextutils.py:297 msgid "Message objects do not support addition." msgstr "" #: glance/openstack/common/gettextutils.py:306 msgid "" "Message objects do not support str() because they may contain non-ascii " "characters. Please use unicode() or translate() instead." msgstr "" #: glance/openstack/common/lockutils.py:103 #, python-format msgid "Could not release the acquired lock `%s`" msgstr "" #: glance/openstack/common/lockutils.py:168 #, python-format msgid "Got semaphore \"%(lock)s\"" msgstr "" #: glance/openstack/common/lockutils.py:177 #, python-format msgid "Attempting to grab file lock \"%(lock)s\"" msgstr "" #: glance/openstack/common/lockutils.py:187 #, python-format msgid "Created lock path: %s" msgstr "" #: glance/openstack/common/lockutils.py:205 #, python-format msgid "Got file lock \"%(lock)s\" at %(path)s" msgstr "" #: glance/openstack/common/lockutils.py:209 #, python-format msgid "Released file lock \"%(lock)s\" at %(path)s" msgstr "" #: glance/openstack/common/lockutils.py:247 #, python-format msgid "Got semaphore / lock \"%(function)s\"" msgstr "" #: glance/openstack/common/lockutils.py:251 #, python-format msgid "Semaphore / lock released \"%(function)s\"" msgstr "" #: glance/openstack/common/log.py:313 #, python-format msgid "Deprecated: %s" msgstr "Deprecated: %s" #: glance/openstack/common/log.py:416 #, python-format msgid "Error loading logging config %(log_config)s: %(err_msg)s" msgstr "" #: glance/openstack/common/log.py:467 #, python-format msgid "syslog facility must be one of: %s" msgstr "syslog facility must be one of: %s" #: glance/openstack/common/log.py:688 #, 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" msgstr "Failed to understand rule %(rule)s" #: glance/openstack/common/policy.py:405 #, python-format msgid "No handler for matches of kind %s" msgstr "No handler for matches of kind %s" #: glance/openstack/common/policy.py:680 #, python-format msgid "Failed to understand rule %(rule)r" msgstr "Failed to understand rule %(rule)r" #: glance/openstack/common/processutils.py:127 #, python-format msgid "Got unknown keyword args to utils.execute: %r" msgstr "" #: glance/openstack/common/processutils.py:142 #, python-format msgid "Running cmd (subprocess): %s" msgstr "" #: glance/openstack/common/processutils.py:167 #: glance/openstack/common/processutils.py:240 #, python-format msgid "Result was %s" msgstr "" #: glance/openstack/common/processutils.py:179 #, python-format msgid "%r failed. Retrying." msgstr "" #: glance/openstack/common/processutils.py:219 #, python-format msgid "Running cmd (SSH): %s" msgstr "" #: glance/openstack/common/processutils.py:221 msgid "Environment not supported over SSH" msgstr "" #: glance/openstack/common/processutils.py:225 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 #, python-format msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s" msgstr "" #: glance/openstack/common/strutils.py:188 #, python-format msgid "Invalid string format: %s" msgstr "" #: glance/openstack/common/strutils.py:195 #, python-format msgid "Unknown byte multiplier: %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 msgid "version should be an integer" msgstr "" #: glance/openstack/common/db/sqlalchemy/migration.py:216 #, 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 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 #, 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 #, python-format msgid "Unrecognized read_deleted value '%s'" msgstr "" #: glance/openstack/common/db/sqlalchemy/utils.py:183 #, python-format msgid "There is no `project_id` column in `%s` table." msgstr "" #: glance/openstack/common/db/sqlalchemy/utils.py:241 msgid "model should be a subclass of ModelBase" msgstr "" #: glance/openstack/common/db/sqlalchemy/utils.py:284 #, 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 #, 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 msgid "Unsupported id columns type" msgstr "" #: glance/quota/__init__.py:316 #, python-format msgid "Cleaning up %s after exceeding the quota." msgstr "" #: glance/registry/__init__.py:25 msgid "Address to find the registry server." msgstr "Address to find the registry server." #: glance/registry/__init__.py:27 msgid "Port the registry server is listening on." msgstr "Port the registry server is listening on." #: glance/registry/api/v1/images.py:105 #, 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 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/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 msgid "Unable to get images" msgstr "" #: glance/registry/api/v1/images.py:147 msgid "Returning image list" msgstr "Returning image list" #: glance/registry/api/v1/images.py:165 msgid "Returning detailed image list" msgstr "Returning detailed image list" #: glance/registry/api/v1/images.py:216 msgid "Unrecognized changes-since value" msgstr "Unrecognized changes-since value" #: glance/registry/api/v1/images.py:221 msgid "protected must be True, or False" msgstr "protected must be True, or False" #: glance/registry/api/v1/images.py:268 #, python-format msgid "Unsupported sort_key. Acceptable values: %s" msgstr "Unsupported sort_key. Acceptable values: %s" #: glance/registry/api/v1/images.py:277 #, python-format msgid "Unsupported sort_dir. Acceptable values: %s" msgstr "Unsupported sort_dir. Acceptable values: %s" #: glance/registry/api/v1/images.py:303 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 #, 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/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 #, python-format msgid "Unable to show image %s" msgstr "" #: glance/registry/api/v1/images.py:349 #, python-format msgid "Successfully deleted image %(id)s" msgstr "Successfully deleted image %(id)s" #: glance/registry/api/v1/images.py:353 #, 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 #, python-format msgid "Unable to delete image %s" msgstr "" #: glance/registry/api/v1/images.py:392 #, 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 msgid "Invalid image id format" msgstr "Invalid image id format" #: glance/registry/api/v1/images.py:405 #, python-format msgid "Successfully created image %(id)s" msgstr "Successfully created image %(id)s" #: glance/registry/api/v1/images.py:409 #, python-format msgid "Image with identifier %s already exists!" msgstr "Image with identifier %s already exists!" #: glance/registry/api/v1/images.py:413 #, 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 #, 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 #, python-format msgid "Updating metadata for image %(id)s" msgstr "Updating metadata for image %(id)s" #: glance/registry/api/v1/images.py:472 #, 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 #, python-format msgid "Unable to update image %s" msgstr "" #: glance/registry/api/v1/members.py:77 #, python-format msgid "Returning member list for image %(id)s" msgstr "Returning member list for image %(id)s" #: glance/registry/api/v1/members.py:112 glance/registry/api/v1/members.py:225 #: glance/registry/api/v1/members.py:285 #, python-format msgid "User lacks permission to share image %(id)s" msgstr "User lacks permission to share image %(id)s" #: glance/registry/api/v1/members.py:114 glance/registry/api/v1/members.py:227 #: glance/registry/api/v1/members.py:287 msgid "No permission to share that image" msgstr "No permission to share that image" #: glance/registry/api/v1/members.py:122 glance/registry/api/v1/members.py:138 #: glance/registry/api/v1/members.py:237 #, python-format msgid "Invalid membership association specified for image %(id)s" msgstr "Invalid membership association specified for image %(id)s" #: glance/registry/api/v1/members.py:125 glance/registry/api/v1/members.py:141 #: glance/registry/api/v1/members.py:240 #, python-format msgid "Invalid membership association: %s" msgstr "Invalid membership association: %s" #: glance/registry/api/v1/members.py:189 #, python-format msgid "Successfully updated memberships for image %(id)s" msgstr "Successfully updated memberships for image %(id)s" #: glance/registry/api/v1/members.py:258 #, python-format 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." #: glance/registry/api/v1/members.py:304 #, python-format msgid "Successfully deleted a membership from image %(id)s" msgstr "Successfully deleted a membership from image %(id)s" #: glance/registry/api/v1/members.py:315 #, python-format msgid "Member %(id)s not found" msgstr "Member %(id)s not found" #: glance/registry/api/v1/members.py:320 #, python-format msgid "Returning list of images shared with member %(id)s" msgstr "Returning list of images shared with member %(id)s" #: glance/registry/api/v2/rpc.py:42 #, python-format msgid "Registry service can't use %s" msgstr "" #: glance/registry/client/__init__.py:20 msgid "" "The protocol to use for communication with the registry server. Either " "http or https." msgstr "" "The protocol to use for communication with the registry server. Either " "http or https." #: glance/registry/client/__init__.py:23 msgid "The path to the key file to use in SSL connections to the registry server." msgstr "The path to the key file to use in SSL connections to the registry server." #: glance/registry/client/__init__.py:26 msgid "" "The path to the cert file to use in SSL connections to the registry " "server." msgstr "" "The path to the cert file to use in SSL connections to the registry " "server." #: glance/registry/client/__init__.py:29 msgid "" "The path to the certifying authority cert file to use in SSL connections " "to the registry server." msgstr "" "The path to the certifying authority cert file to use in SSL connections " "to the registry server." #: glance/registry/client/__init__.py:32 msgid "" "When using SSL in connections to the registry server, do not require " "validation via a certifying authority." msgstr "" "When using SSL in connections to the registry server, do not require " "validation via a certifying authority." #: glance/registry/client/__init__.py:36 msgid "" "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." 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 msgid "" "Whether to pass through the user token when making requests to the " "registry." msgstr "" #: glance/registry/client/__init__.py:46 msgid "The administrators user name." msgstr "The administrators user name." #: glance/registry/client/__init__.py:48 msgid "The administrators password." msgstr "The administrators password." #: glance/registry/client/__init__.py:50 msgid "The tenant name of the administrative user." msgstr "" #: glance/registry/client/__init__.py:52 msgid "The URL to the keystone service." msgstr "The URL to the keystone service." #: glance/registry/client/__init__.py:54 msgid "The strategy to use for authentication." msgstr "The strategy to use for authentication." #: glance/registry/client/__init__.py:56 msgid "The region for the authentication service." msgstr "The region for the authentication service." #: glance/registry/client/v1/api.py:33 msgid "" "Whether to pass through headers containing user and tenant information " "when making requests to the registry. This allows the registry to use the" " context middleware without the keystoneclients' auth_token middleware, " "removing calls to the keystone auth service. It is recommended that when " "using this option, secure communication between glance api and glance " "registry is ensured by means other than auth_token middleware." msgstr "" #: glance/registry/client/v1/api.py:78 glance/registry/client/v2/api.py:60 msgid "Configuration option was not valid" msgstr "Configuration option was not valid" #: glance/registry/client/v1/api.py:82 glance/registry/client/v2/api.py:64 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 #, 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 msgid "" "List of which store classes and store class locations are currently known" " to glance at startup." msgstr "" "List of which store classes and store class locations are currently known" " to glance at startup." #: glance/store/__init__.py:43 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 "" "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 msgid "Turn on/off delayed delete." msgstr "Turn on/off delayed delete." #: glance/store/__init__.py:191 #, python-format msgid "%s Skipping store driver." msgstr "" #: glance/store/__init__.py:196 #, 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 #, python-format msgid "Failed to delete image %s in store from URI" msgstr "" #: glance/store/__init__.py:324 #, python-format msgid "Failed to delete image %(image_id)s from store (%(error)s)" msgstr "" #: glance/store/__init__.py:359 #, 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 #, 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 #, 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 #, 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" 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" msgstr "" #: glance/store/cinder.py:149 msgid "Cinder storage requires a context." msgstr "" #: glance/store/cinder.py:153 msgid "Cinder storage requires a service catalog." msgstr "" #: glance/store/cinder.py:175 #, python-format msgid "Failed to get image size due to volume can not be found: %s" msgstr "" #: glance/store/cinder.py:180 #, python-format msgid "Failed to get image size due to internal error: %s" msgstr "" #: glance/store/filesystem.py:41 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 msgid "" "List of directories and its priorities to which the Filesystem backend " "store writes images." msgstr "" #: glance/store/filesystem.py:47 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:131 #, python-format msgid "Permission to write in %s denied" msgstr "" #: glance/store/filesystem.py:148 #, 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 #, python-format msgid "Unable to create datadir: %s" msgstr "Unable to create datadir: %s" #: glance/store/filesystem.py:176 msgid "" "Specify at least 'filesystem_store_datadir' or " "'filesystem_store_datadirs' option" msgstr "" #: glance/store/filesystem.py:183 msgid "" "Specify either 'filesystem_store_datadir' or 'filesystem_store_datadirs' " "option" msgstr "" #: glance/store/filesystem.py:220 #, python-format msgid "" "Directory %(datadir_path)s specified multiple times in " "filesystem_store_datadirs option of filesystem configuration" msgstr "" #: glance/store/filesystem.py:245 #, python-format msgid "Invalid priority value %(priority)s in filesystem configuration" msgstr "" #: glance/store/filesystem.py:252 msgid "Invalid directory specified in filesystem configuration" msgstr "" #: glance/store/filesystem.py:264 #, python-format msgid "Image file %s not found" msgstr "Image file %s not found" #: glance/store/filesystem.py:279 #, 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 #, 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 #, 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 #, python-format msgid "You cannot delete file %s" msgstr "You cannot delete file %s" #: glance/store/filesystem.py:348 #, python-format msgid "Image file %s does not exist" msgstr "Image file %s does not exist" #: glance/store/filesystem.py:393 #, python-format msgid "" "There is no enough disk space left on the image storage media. " "requested=%s" msgstr "" #: glance/store/filesystem.py:424 #, 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 #, python-format msgid "Unable to remove partial image data for image %(id)s: %(error)s" msgstr "" #: glance/store/gridfs.py:97 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 #, 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" 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." msgstr "" #: glance/store/http.py:166 #, python-format msgid "HTTP URL returned a %s status code." msgstr "HTTP URL returned a %s status code." #: glance/store/http.py:173 #, 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 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 msgid "RADOS pool in which images are stored." msgstr "RADOS pool in which images are stored." #: glance/store/rbd.py:57 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 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 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 msgid "URI contains non-ascii characters" msgstr "URI contains non-ascii characters" #: glance/store/rbd.py:129 msgid "URI must have exactly 1 or 4 components" msgstr "URI must have exactly 1 or 4 components" #: glance/store/rbd.py:135 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 #, 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 #, 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 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 #, 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 msgid "The host where the S3 server is listening." msgstr "The host where the S3 server is listening." #: glance/store/s3.py:39 msgid "The S3 query token access key." msgstr "The S3 query token access key." #: glance/store/s3.py:41 msgid "The S3 query token secret key." msgstr "The S3 query token secret key." #: glance/store/s3.py:43 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 msgid "" "The local directory where uploads will be staged before they are " "transferred into S3." msgstr "" #: glance/store/s3.py:48 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 "" "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 msgid "" "The S3 calling format used to determine the bucket. Either subdomain or " "path can be used." msgstr "" "The S3 calling format used to determine the bucket. Either subdomain or " "path can be used." #: glance/store/s3.py:115 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 "" "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" #: glance/store/s3.py:123 #, python-format msgid "Invalid store uri: %s" 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 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)" 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 #, 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)" 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 #, 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" msgstr "" "Wrote %(size)d bytes to S3 key named %(obj_name)s with checksum " "%(checksum_hex)s" #: glance/store/s3.py:442 #, 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)" #: glance/store/s3.py:464 #, python-format msgid "Could not find bucket with ID %s" msgstr "" #: glance/store/s3.py:505 #, python-format msgid "" "Failed to add bucket to S3.\n" "Got error from S3: %(e)s" msgstr "" "Failed to add bucket to S3.\n" "Got error from S3: %(e)s" #: glance/store/s3.py:509 #, 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 "" "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 msgid "" "Images will be chunked into objects of this size (in megabytes). For best" " performance, this should be a power of two." 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 msgid "Port of sheep daemon." msgstr "" #: glance/store/sheepdog.py:48 msgid "IP address of sheep daemon." msgstr "" #: glance/store/sheepdog.py:225 glance/store/sheepdog.py:244 #: glance/store/sheepdog.py:305 #, python-format msgid "Sheepdog image %s does not exist" msgstr "" #: glance/store/sheepdog.py:266 #, python-format msgid "Sheepdog image %s already exists" msgstr "" #: glance/store/swift.py:49 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 msgid "" "Version of the authentication service to use. Valid versions are 2 for " "keystone and 1 for swauth and rackspace." msgstr "" #: glance/store/swift.py:65 msgid "" "If True, swiftclient won't check for a valid SSL certificate when " "authenticating." msgstr "" #: glance/store/swift.py:68 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 "" "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 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 "" "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." #: glance/store/swift.py:77 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 "" "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 msgid "" "Container within the account that the account should use for storing " "images in Swift." msgstr "" "Container within the account that the account should use for storing " "images in Swift." #: glance/store/swift.py:86 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 msgid "" "The amount of data written to a temporary disk buffer during the process " "of chunking the image file." msgstr "" "The amount of data written to a temporary disk buffer during the process " "of chunking the image file." #: glance/store/swift.py:93 msgid "" "A boolean value that determines if we create the container if it does not" " exist." msgstr "" "A boolean value that determines if we create the container if it does not" " exist." #: glance/store/swift.py:96 msgid "" "If set to True, enables multi-tenant storage mode which causes Glance " "images to be stored in tenant specific Swift accounts." 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 msgid "" "A list of tenants that will be granted read/write access on all Swift " "containers created by Glance in multi-tenant mode." 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 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 msgid "" "The number of times a Swift download will be retried before the request " "fails." msgstr "" #: glance/store/swift.py:129 #, python-format msgid "Swift exception raised %s" msgstr "" #: glance/store/swift.py:134 #, python-format msgid "Stopping Swift retries after %d attempts" msgstr "" #: glance/store/swift.py:139 #, python-format msgid "" "Retrying Swift connection (%(retries)d/%(max_retries)d) with " "range=%(start)d-%(end)d" msgstr "" #: glance/store/swift.py:214 msgid "" "URI cannot contain more than one occurrence of a scheme. If you have " "specified a URI like " "swift://user:pass@http://authurl.com/v1/container/obj, you need to change" " it to use the swift+http:// scheme, like so: " "swift+http://user:pass@authurl.com/v1/container/obj" msgstr "" "URI cannot contain more than one occurrence of a scheme. If you have " "specified a URI like " "swift://user:pass@http://authurl.com/v1/container/obj, you need to change" " 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 #, 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 #, 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 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 msgid "Swift already has an image at this location" msgstr "Swift already has an image at this location" #: glance/store/swift.py:500 #, python-format msgid "" "Failed to add object to Swift.\n" "Got error from Swift: %(e)s" msgstr "" "Failed to add object to Swift.\n" "Got error from Swift: %(e)s" #: glance/store/swift.py:541 glance/store/swift.py:702 msgid "Swift could not find image at URI." msgstr "Swift could not find image at URI." #: glance/store/swift.py:562 #, python-format msgid "" "Failed to add container to Swift.\n" "Got error from Swift: %(e)s" msgstr "" "Failed to add container to Swift.\n" "Got error from Swift: %(e)s" #: glance/store/swift.py:566 #, python-format msgid "" "The container %(container)s does not exist in Swift. Please set the " "swift_store_create_container_on_put optionto add container to Swift " "automatically." msgstr "" "The container %(container)s does not exist in Swift. Please set the " "swift_store_create_container_on_put optionto add container to Swift " "automatically." #: glance/store/swift.py:610 msgid "Location is missing user:password information." msgstr "Location is missing user:password information." #: glance/store/swift.py:622 #, 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 msgid "Multi-tenant Swift storage requires a context." msgstr "Multi-tenant Swift storage requires a context." #: glance/store/swift.py:653 msgid "Multi-tenant Swift storage requires a service catalog." msgstr "Multi-tenant Swift storage requires a service catalog." #: glance/store/vmware_datastore.py:48 msgid "" "ESX/ESXi or vCenter Server target system. The server value can be an IP " "address or a DNS name." msgstr "" #: glance/store/vmware_datastore.py:51 msgid "Username for authenticating with VMware ESX/VC server." msgstr "" #: glance/store/vmware_datastore.py:54 msgid "Password for authenticating with VMware ESX/VC server." msgstr "" #: glance/store/vmware_datastore.py:59 msgid "" "Inventory path to a datacenter. If the vmware_server_host specified is an" " ESX/ESXi, the vmware_datacenter_path is optional. If specified, it " "should be \"ha-datacenter\"." msgstr "" #: glance/store/vmware_datastore.py:64 msgid "Datastore associated with the datacenter." msgstr "" #: glance/store/vmware_datastore.py:67 msgid "" "Number of times VMware ESX/VC server API must be retried upon connection " "related issues." msgstr "" #: glance/store/vmware_datastore.py:71 msgid "" "The interval used for polling remote tasks invoked on VMware ESX/VC " "server." msgstr "" #: glance/store/vmware_datastore.py:75 msgid "" "The name of the directory where the glance images will be stored in the " "VMware datastore." msgstr "" #: glance/store/vmware_datastore.py:79 msgid "Allow to perform insecure SSL requests to ESX/VC." msgstr "" #: glance/store/vmware_datastore.py:165 #, python-format msgid "URI %(uri)s must start with %(scheme)s://" msgstr "" #: glance/store/vmware_datastore.py:181 #, python-format msgid "Badly formed VMware datastore URI %(uri)s." msgstr "" #: glance/store/vmware_datastore.py:222 #, 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 #, python-format msgid "Failed to upload content of image %(image)s" msgstr "" #: glance/store/vmware_datastore.py:284 #, python-format msgid "Image file %(image_id)s already exists!" msgstr "" #: glance/store/vmware_datastore.py:359 #, 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 #, 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 #, python-format msgid "HTTP request returned a %(status)s status code." msgstr "" #: glance/store/vmware_datastore.py:388 #, 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 #, python-format msgid "location: %s data lost" msgstr "location: %s data lost"