# Translations template for senlin.
# Copyright (C) 2015 ORGANIZATION
# This file is distributed under the same license as the senlin project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2015.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: senlin 2015.2.0.dev2300\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2015-09-10 03:34-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.0\n"

#: senlin/api/middleware/webhook.py:113
#, python-format
msgid "Webhook failed authentication: %s."
msgstr ""

#: senlin/api/openstack/v1/actions.py:39
msgid "No action name specified"
msgstr ""

#: senlin/api/openstack/v1/actions.py:44
msgid "No target specified"
msgstr ""

#: senlin/api/openstack/v1/actions.py:49
#: senlin/api/openstack/v1/clusters.py:271
msgid "No action specified"
msgstr ""

#: senlin/api/openstack/v1/clusters.py:72
msgid "No cluster name specified."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:75
msgid "No cluster desired capacity provided."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:79
msgid "No cluster profile provided."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:82
#: senlin/api/openstack/v1/clusters.py:98
msgid ""
"Cluster min_size, if specified, must be less than or equal to its desired"
" capacity."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:88
#: senlin/api/openstack/v1/clusters.py:104
msgid ""
"Cluster max_size, if specified, must be greater than or equal to its "
"desired capacity. Setting max_size to -1 means no upper limit on cluster "
"size."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:113 senlin/engine/service.py:472
msgid ""
"Cluster max_size, if specified, must be greater than or equal to its "
"min_size. Setting max_size to -1 means no upper limit on cluster size."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:183
#: senlin/api/openstack/v1/clusters.py:209
msgid "Malformed request data, missing 'cluster' key in request body."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:234
msgid "Missing number value for resize operation."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:239
msgid "Missing adjustment_type value for resize operation."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:252
#, python-format
msgid ""
"The specified min_size (%(n)s) is greater than the specified max_size "
"(%(m)s)."
msgstr ""

#: senlin/api/openstack/v1/clusters.py:274
msgid "Multiple actions specified"
msgstr ""

#: senlin/api/openstack/v1/clusters.py:278
#, python-format
msgid "Unrecognized action '%s' specified"
msgstr ""

#: senlin/api/openstack/v1/clusters.py:284
msgid "No node to add"
msgstr ""

#: senlin/api/openstack/v1/clusters.py:290
msgid "No node to delete"
msgstr ""

#: senlin/api/openstack/v1/clusters.py:330
msgid "Failed deleting cluster."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:44
msgid "No node name specified."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:52
msgid "No profile ID provided."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:124 senlin/api/openstack/v1/nodes.py:150
msgid "Malformed request data, missing 'node' key in request body."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:154
msgid ""
"Updating cluster_id is not allowed, please invoke node join/leave actions"
" if needed."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:173
msgid "No action specified."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:176
msgid "Multiple actions specified."
msgstr ""

#: senlin/api/openstack/v1/nodes.py:180
#, python-format
msgid "Unrecognized action \"%s\" specified"
msgstr ""

#: senlin/api/openstack/v1/nodes.py:186
msgid "No cluster specified."
msgstr ""

#: senlin/api/openstack/v1/policies.py:35
msgid "No policy name specified"
msgstr ""

#: senlin/api/openstack/v1/policies.py:40
msgid "No policy spec provided"
msgstr ""

#: senlin/api/openstack/v1/policies.py:105
#: senlin/api/openstack/v1/policies.py:124
msgid "Malformed request data, missing 'policy' key in request body."
msgstr ""

#: senlin/api/openstack/v1/policies.py:129
#: senlin/tests/unit/apiv1/test_policies.py:516
msgid ""
"Updating the spec of a policy is not supported because it may cause state"
" conflicts in engine."
msgstr ""

#: senlin/api/openstack/v1/profiles.py:36
msgid "No profile name specified"
msgstr ""

#: senlin/api/openstack/v1/profiles.py:41
msgid "No profile spec provided"
msgstr ""

#: senlin/api/openstack/v1/profiles.py:109
#: senlin/api/openstack/v1/profiles.py:133
msgid "Malformed request data, missing 'profile' key in request body."
msgstr ""

#: senlin/api/openstack/v1/triggers.py:41
msgid "No trigger name specified."
msgstr ""

#: senlin/api/openstack/v1/triggers.py:44
msgid "No trigger spec provided."
msgstr ""

#: senlin/api/openstack/v1/triggers.py:96
msgid "Sorting direction (sort_dir) must be either 'asc' or 'desc'."
msgstr ""

#: senlin/api/openstack/v1/triggers.py:118
msgid "Malformed request data, missing 'trigger' key in request body."
msgstr ""

#: senlin/api/openstack/v1/webhooks.py:48
msgid "No obj_id provided."
msgstr ""

#: senlin/api/openstack/v1/webhooks.py:53
msgid "No obj_type provided."
msgstr ""

#: senlin/api/openstack/v1/webhooks.py:58
msgid "No action provided."
msgstr ""

#: senlin/api/openstack/v1/webhooks.py:63
msgid "No credential provided."
msgstr ""

#: senlin/api/openstack/v1/webhooks.py:128
msgid "Malformed request data, missing 'webhook' key in request body."
msgstr ""

#: senlin/cmd/manage.py:61
msgid "How long to preserve deleted data."
msgstr ""

#: senlin/cmd/manage.py:65
msgid "Granularity to use for age argument, defaults to days."
msgstr ""

#: senlin/common/config.py:30
msgid "The API paste config file to use."
msgstr ""

#: senlin/common/config.py:35
msgid "Seconds between running periodic tasks."
msgstr ""

#: senlin/common/config.py:37
msgid "Default region name used to get services endpoints."
msgstr ""

#: senlin/common/config.py:40
msgid "Maximum raw byte size of data from web response."
msgstr ""

#: senlin/common/config.py:43
msgid "Maximum depth allowed when using nested clusters."
msgstr ""

#: senlin/common/config.py:46
msgid "Number of senlin-engine processes to fork and run."
msgstr ""

#: senlin/common/config.py:51
msgid "The directory to search for environment files."
msgstr ""

#: senlin/common/config.py:54
msgid "Maximum nodes allowed per top-level cluster."
msgstr ""

#: senlin/common/config.py:57
msgid "Maximum number of clusters any one project may have active at one time."
msgstr ""

#: senlin/common/config.py:61
msgid ""
"Maximum events per cluster. Older events will be deleted when this is "
"reached.  Set to 0 for unlimited events per cluster."
msgstr ""

#: senlin/common/config.py:66
msgid "Timeout in seconds for actions."
msgstr ""

#: senlin/common/config.py:69
msgid "Default priority for policies attached to a cluster."
msgstr ""

#: senlin/common/config.py:72
msgid "Number of times trying to grab a lock."
msgstr ""

#: senlin/common/config.py:75
msgid "Number of seconds between lock retries."
msgstr ""

#: senlin/common/config.py:78
msgid "Error wait time in seconds for cluster action (ie. create or update)."
msgstr ""

#: senlin/common/config.py:82
msgid ""
"RPC timeout for the engine liveness check that is used for cluster "
"locking."
msgstr ""

#: senlin/common/config.py:88
msgid ""
"Name of the engine node. This can be an opaque identifier. It is not "
"necessarily a hostname, FQDN, or IP address."
msgstr ""

#: senlin/common/config.py:95
msgid "Default cloud backend to use."
msgstr ""

#: senlin/common/config.py:100
msgid "Complete public identity V3 API endpoint."
msgstr ""

#: senlin/common/config.py:102
msgid "Senlin service user name"
msgstr ""

#: senlin/common/config.py:104
msgid "Password specified for the Senlin service user."
msgstr ""

#: senlin/common/config.py:106
msgid "Name of the service project."
msgstr ""

#: senlin/common/config.py:108
msgid "Name of the domain for the service user."
msgstr ""

#: senlin/common/config.py:110
msgid "Name of the domain for the service project."
msgstr ""

#: senlin/common/config.py:116
msgid "Senlin API revision."
msgstr ""

#: senlin/common/config.py:118
msgid "Senlin engine revision."
msgstr ""

#: senlin/common/config.py:168
msgid "Unable to locate config file"
msgstr ""

#: senlin/common/config.py:180
#, python-format
msgid ""
"Unable to load %(app_name)s from configuration file %(conf_file)s.\n"
"Got: %(e)r"
msgstr ""

#: senlin/common/constraints.py:65
msgid "AllowedValues must be a list or a string"
msgstr ""

#: senlin/common/constraints.py:72
#, python-format
msgid "Allowed values: %s"
msgstr ""

#: senlin/common/constraints.py:76
#, python-format
msgid "\"%(value)s\" must be one of the allowed values: %(allowed)s"
msgstr ""

#: senlin/common/exception.py:41
msgid "An unknown exception occurred."
msgstr ""

#: senlin/common/exception.py:72
msgid "System SIGHUP signal received."
msgstr ""

#: senlin/common/exception.py:76
msgid "You are not authenticated."
msgstr ""

#: senlin/common/exception.py:80
msgid "You are not authorized to complete this action."
msgstr ""

#: senlin/common/exception.py:84
#: senlin/tests/unit/engine/service/test_clusters.py:752
#, python-format
msgid "The request is malformed: %(msg)s"
msgstr ""

#: senlin/common/exception.py:88
#, python-format
msgid ""
"Multiple results found matching the query criteria %(arg)s. Please be "
"more specific."
msgstr ""

#: senlin/common/exception.py:93
#, python-format
msgid "Invalid value '%(value)s' specified for '%(name)s'"
msgstr ""

#: senlin/common/exception.py:97
#, python-format
msgid "The cluster (%(cluster)s) could not be found."
msgstr ""

#: senlin/common/exception.py:101
#, python-format
msgid "The node (%(node)s) could not be found."
msgstr ""

#: senlin/common/exception.py:105
#, python-format
msgid "Profile type (%(profile_type)s) is not found."
msgstr ""

#: senlin/common/exception.py:109 senlin/common/exception.py:121
#: senlin/common/exception.py:125 senlin/common/exception.py:154
#: senlin/common/exception.py:158 senlin/common/exception.py:206
#: senlin/common/exception.py:261 senlin/common/exception.py:265
#, python-format
msgid "%(message)s"
msgstr ""

#: senlin/common/exception.py:113
#, python-format
msgid "The profile (%(profile)s) could not be found."
msgstr ""

#: senlin/common/exception.py:117
msgid "Profile not specified."
msgstr ""

#: senlin/common/exception.py:129 senlin/engine/actions/cluster_action.py:525
#: senlin/engine/actions/cluster_action.py:570
#: senlin/engine/actions/cluster_action.py:594
msgid "Policy not specified."
msgstr ""

#: senlin/common/exception.py:133
#, python-format
msgid "Policy type (%(policy_type)s) is not found."
msgstr ""

#: senlin/common/exception.py:137
#, python-format
msgid "The policy (%(policy)s) could not be found."
msgstr ""

#: senlin/common/exception.py:141
#, python-format
msgid ""
"The policy (%(policy)s) is not found attached to the specified cluster "
"(%(identity)s)."
msgstr ""

#: senlin/common/exception.py:146
#, python-format
msgid "The policy with type (%(policy_type)s) already exists."
msgstr ""

#: senlin/common/exception.py:150
#, python-format
msgid "Trigger type (%(trigger_type)s) is not found."
msgstr ""

#: senlin/common/exception.py:162
#, python-format
msgid "The trigger (%(trigger)s) could not be found."
msgstr ""

#: senlin/common/exception.py:166
#, python-format
msgid "%(feature)s is not supported."
msgstr ""

#: senlin/common/exception.py:177
#, python-format
msgid "The %(resource_type)s (%(resource_id)s) is still in use."
msgstr ""

#: senlin/common/exception.py:181
#, python-format
msgid "Invalid content type %(content_type)s"
msgstr ""

#: senlin/common/exception.py:185
#, python-format
msgid "Request limit exceeded: %(message)s"
msgstr ""

#: senlin/common/exception.py:189
#, python-format
msgid "The webhook (%(webhook)s) could not be found."
msgstr ""

#: senlin/common/exception.py:193
#, python-format
msgid "The action (%(action)s) could not be found."
msgstr ""

#: senlin/common/exception.py:197
#, python-format
msgid "Cluster %(cluster_name)s already has an action (%(action)s) in progress."
msgstr ""

#: senlin/common/exception.py:202
#, python-format
msgid "The event (%(event)s) could not be found."
msgstr ""

#: senlin/common/exception.py:216
#, python-format
msgid "ERROR %(code)s happens for %(message)s."
msgstr ""

#: senlin/common/exception.py:217
msgid "Internal error happens"
msgstr ""

#: senlin/common/exception.py:227
#, python-format
msgid "The %(resource_type)s (%(resource_id)s) is busy now."
msgstr ""

#: senlin/common/exception.py:232
#, python-format
msgid "The trust for trustor (%(trustor)s) could not be found."
msgstr ""

#: senlin/common/exception.py:237
#, python-format
msgid "Failed in creating %(rtype)s."
msgstr ""

#: senlin/common/exception.py:242
#, python-format
msgid "Failed in updating %(resource)s."
msgstr ""

#: senlin/common/exception.py:247
#, python-format
msgid "Failed in deleting %(resource)s."
msgstr ""

#: senlin/common/exception.py:252 senlin/tests/unit/engine/test_webhook.py:339
#: senlin/tests/unit/engine/test_webhook.py:356
#, python-format
msgid "The resource (%(resource)s) could not be found."
msgstr ""

#: senlin/common/exception.py:256
#, python-format
msgid ""
"The resource %(resource_id)s is in error status - '%(status)s' due to "
"'%(reason)s'."
msgstr ""

#: senlin/common/exception.py:269
#, python-format
msgid ""
"The policy (%(policy)s) is not attached to the specified cluster "
"(%(cluster)s)."
msgstr ""

#: senlin/common/scaleutils.py:57
#, python-format
msgid "Truncating shrinkage to specified min_size (%s)."
msgstr ""

#: senlin/common/scaleutils.py:62
#, python-format
msgid "Truncating shrinkage to cluster's min_size (%s)."
msgstr ""

#: senlin/common/scaleutils.py:67
#, python-format
msgid "Truncating growth to specified max_size (%s)."
msgstr ""

#: senlin/common/scaleutils.py:73
#, python-format
msgid "Truncating growth to cluster's max_size (%s)."
msgstr ""

#: senlin/common/scaleutils.py:92
#, python-format
msgid "The target capacity (%(d)s) is less than the specified min_size (%(m)s)."
msgstr ""

#: senlin/common/scaleutils.py:97
#, python-format
msgid "The target capacity (%(d)s) is less than the cluster's min_size (%(m)s)."
msgstr ""

#: senlin/common/scaleutils.py:103
#, python-format
msgid ""
"The target capacity (%(d)s) is greater than the specified max_size "
"(%(m)s)."
msgstr ""

#: senlin/common/scaleutils.py:109
#, python-format
msgid ""
"The target capacity (%(d)s) is greater than the cluster's max_size "
"(%(m)s)."
msgstr ""

#: senlin/common/scaleutils.py:114
msgid "The specified min_size is greater than the specified max_size."
msgstr ""

#: senlin/common/scaleutils.py:119
msgid ""
"The specified min_size is greater than the current max_size of the "
"cluster."
msgstr ""

#: senlin/common/scaleutils.py:123
msgid ""
"The specified min_size is greater than the current desired_capacity of "
"the cluster."
msgstr ""

#: senlin/common/scaleutils.py:129
msgid "The specified max_size is less than the current min_size of the cluster."
msgstr ""

#: senlin/common/scaleutils.py:134
msgid ""
"The specified max_size is less than the current desired_capacity of the "
"cluster."
msgstr ""

#: senlin/common/schema.py:33
#, python-format
msgid "Invalid key %s"
msgstr ""

#: senlin/common/schema.py:67
#, python-format
msgid "Schema valid only for List or Map, not \"%s\""
msgstr ""

#: senlin/common/schema.py:98
#, python-format
msgid "Invalid default %(default)s (%(exc)s)"
msgstr ""

#: senlin/common/schema.py:174
#, python-format
msgid "The value \"%s\" is not a valid Boolean"
msgstr ""

#: senlin/common/schema.py:199
#, python-format
msgid "%s is not an intger."
msgstr ""

#: senlin/common/schema.py:207 senlin/tests/unit/test_common_constraints.py:283
#, python-format
msgid "The value \"%s\" cannot be converted into an integer."
msgstr ""

#: senlin/common/schema.py:236
#, python-format
msgid "The value \"%s\" cannot be converted into a string."
msgstr ""

#: senlin/common/schema.py:299 senlin/common/schema.py:305
#, python-format
msgid "\"%s\" is not a List"
msgstr ""

#: senlin/common/schema.py:313 senlin/common/schema.py:345
#: senlin/common/schema.py:351 senlin/common/schema.py:357
#, python-format
msgid "\"%s\" is not a Map"
msgstr ""

#: senlin/common/schema.py:377
#, python-format
msgid "Spec validation error (%(key)s): %(err)s"
msgstr ""

#: senlin/common/schema.py:383 senlin/tests/unit/test_common_constraints.py:296
#, python-format
msgid "Unrecognizable spec item \"%s\""
msgstr ""

#: senlin/common/schema.py:388
#, python-format
msgid "Invalid spec item: \"%s\""
msgstr ""

#: senlin/common/schema.py:397 senlin/tests/unit/test_common_constraints.py:309
#, python-format
msgid "Required spec item \"%s\" not assigned"
msgstr ""

#: senlin/common/schema.py:419
msgid "The provided spec is not a map."
msgstr ""

#: senlin/common/schema.py:423
msgid "The 'type' key is missing from the provided spec map."
msgstr ""

#: senlin/common/schema.py:427
msgid "The 'version' key is missing from the provided spec map."
msgstr ""

#: senlin/common/utils.py:85
#, python-format
msgid "Invalid URL scheme %s"
msgstr ""

#: senlin/common/utils.py:91 senlin/common/utils.py:114
#, python-format
msgid "Failed to retrieve data: %s"
msgstr ""

#: senlin/common/wsgi.py:62
msgid ""
"Address to bind the server. Useful when selecting a particular network "
"interface."
msgstr ""

#: senlin/common/wsgi.py:65
msgid "The port on which the server will listen."
msgstr ""

#: senlin/common/wsgi.py:67
msgid "Number of backlog requests to configure the socket with."
msgstr ""

#: senlin/common/wsgi.py:70
msgid "Location of the SSL certificate file to use for SSL mode."
msgstr ""

#: senlin/common/wsgi.py:73
msgid "Location of the SSL key file to use for enabling SSL mode."
msgstr ""

#: senlin/common/wsgi.py:76
msgid "Number of workers for Senlin service."
msgstr ""

#: senlin/common/wsgi.py:78
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 ""

#: senlin/common/wsgi.py:83
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 ""

#: senlin/common/wsgi.py:93
msgid "If false, closes the client socket explicitly."
msgstr ""

#: senlin/common/wsgi.py:95
msgid ""
"Timeout for client connections' socket operations. If an incoming "
"connection is idle for this number of seconds it will be closed. A value "
"of '0' indicates waiting forever."
msgstr ""

#: senlin/common/wsgi.py:105
msgid ""
"Maximum raw byte size of JSON request body. Should be larger than "
"max_template_size."
msgstr ""

#: senlin/common/wsgi.py:143
msgid ""
"When running server in SSL mode, you must specify both a cert_file and "
"key_file option value in your configuration file"
msgstr ""

#: senlin/common/wsgi.py:159
#, python-format
msgid "Could not bind to %(bind_addr)s after trying  30 seconds"
msgstr ""

#: senlin/common/wsgi.py:662
#, python-format
msgid ""
"JSON body size (%(len)s bytes) exceeds maximum allowed size (%(limit)s "
"bytes)."
msgstr ""

#: senlin/common/wsgi.py:726
msgid ""
"The server could not comply with the request since it is either malformed"
" or otherwise incorrect."
msgstr ""

#: senlin/db/sqlalchemy/api.py:411
#, python-format
msgid "Node %(node)s: %(reason)s"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1214
msgid "The action is waiting for its dependency being completed."
msgstr ""

#: senlin/db/sqlalchemy/api.py:1226 senlin/db/sqlalchemy/api.py:1328
#: senlin/db/sqlalchemy/api.py:1368
#, python-format
msgid "Action with id \"%s\" not found"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1235
msgid "The action becomes ready due to all dependencies have been satisfied."
msgstr ""

#: senlin/db/sqlalchemy/api.py:1242 senlin/db/sqlalchemy/api.py:1274
msgid "Multiple dependencies between lists not support"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1314
msgid "Action completed successfully."
msgstr ""

#: senlin/db/sqlalchemy/api.py:1353
msgid "Action execution failed"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1357
#, python-format
msgid "Action %(id)s failed: %(reason)s"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1373
msgid "Dependent action was cancelled"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1391
msgid "Action execution was cancelled"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1413
#, python-format
msgid "The action is not in an executable status: %s"
msgstr ""

#: senlin/db/sqlalchemy/api.py:1420
msgid "The action is being processed."
msgstr ""

#: senlin/db/sqlalchemy/api.py:1438
msgid "The action was abandoned."
msgstr ""

#: senlin/drivers/openstack/lbaas.py:75
#, python-format
msgid "Waiting for loadbalancer %(lb)s to become ready"
msgstr ""

#: senlin/drivers/openstack/lbaas.py:229
msgid "LB deletion succeeded"
msgstr ""

#: senlin/engine/environment.py:93
#, python-format
msgid "environment has unknown section \"%s\""
msgstr ""

#: senlin/engine/environment.py:113
#, python-format
msgid "%s type name not specified"
msgstr ""

#: senlin/engine/environment.py:116
#, python-format
msgid "%s type name is not a string"
msgstr ""

#: senlin/engine/environment.py:169
#, python-format
msgid "Driver plugin %(name)s is not found."
msgstr ""

#: senlin/engine/event.py:232
#, python-format
msgid "%(name)s[%(id)s] %(action)s - %(status)s: %(reason)s"
msgstr ""

#: senlin/engine/node.py:236
#, python-format
msgid "Profile failed in %(action)s resource (%(id)s) due to: %(msg)s"
msgstr ""

#: senlin/engine/node.py:241
#, python-format
msgid "Profile failed in creating node due to: %(msg)s"
msgstr ""

#: senlin/engine/parser.py:94
#, python-format
msgid "Error parsing input: %s"
msgstr ""

#: senlin/engine/parser.py:101
msgid "The input is not a JSON object or YAML mapping."
msgstr ""

#: senlin/engine/service.py:130
msgid "Attempting to stop engine service..."
msgstr ""

#: senlin/engine/service.py:459
msgid ""
"Cluster min_size, if specified, must be lesser than or equal to its "
"desired_capacity."
msgstr ""

#: senlin/engine/service.py:465
msgid ""
"Cluster max_size, if specified, must be greater than or equal to its "
"desired_capacity. Setting max_size to -1 means no upper limit on cluster "
"size."
msgstr ""

#: senlin/engine/service.py:562
msgid "Cannot update a cluster when it is in error state."
msgstr ""

#: senlin/engine/service.py:568
msgid "Cannot update a cluster to a different profile type, operation aborted."
msgstr ""

#: senlin/engine/service.py:628
#: senlin/tests/unit/engine/service/test_clusters.py:805
#, python-format
msgid "Profile type of nodes %s does not match with cluster"
msgstr ""

#: senlin/engine/service.py:632
#: senlin/tests/unit/engine/service/test_clusters.py:770
#: senlin/tests/unit/engine/service/test_clusters.py:780
#, python-format
msgid ""
"Nodes %s owned by other cluster, need to delete them from those clusters "
"first."
msgstr ""

#: senlin/engine/service.py:636
#: senlin/tests/unit/engine/service/test_clusters.py:751
#, python-format
msgid "Nodes are not ACTIVE: %s"
msgstr ""

#: senlin/engine/service.py:638 senlin/engine/service.py:676
#, python-format
msgid "Nodes not found: %s"
msgstr ""

#: senlin/engine/service.py:640
#, python-format
msgid "No nodes to add: %s"
msgstr ""

#: senlin/engine/service.py:678
#, python-format
msgid "Nodes not members of specified cluster: %s"
msgstr ""

#: senlin/engine/service.py:680
msgid "No nodes specified."
msgstr ""

#: senlin/engine/service.py:734
msgid "Missing number value for size adjustment."
msgstr ""

#: senlin/engine/service.py:738
msgid "Missing adjustment_type value for size adjustment."
msgstr ""

#: senlin/engine/service.py:851
#, python-format
msgid ""
"Cluster %(id)s is not allowed to be deleted without detaching all "
"policies."
msgstr ""

#: senlin/engine/service.py:919 senlin/engine/service.py:1024
msgid "Node and cluster have different profile type, operation aborted."
msgstr ""

#: senlin/engine/service.py:975
msgid "Cannot update a node to a different profile type, operation aborted."
msgstr ""

#: senlin/engine/service.py:1045
#, python-format
msgid "Node is already an orphan node: %s."
msgstr ""

#: senlin/engine/service.py:1239
#, python-format
msgid "Webhook obj_type %s is not supported."
msgstr ""

#: senlin/engine/service.py:1257
#, python-format
msgid "Illegal action name (%s) specified."
msgstr ""

#: senlin/engine/service.py:1262
#, python-format
msgid "Action %(a)s is not applicable to object of type %(t)s."
msgstr ""

#: senlin/engine/webhook.py:191 senlin/tests/unit/engine/test_webhook.py:338
msgid "service:type=clustering,name=senlin"
msgstr ""

#: senlin/engine/webhook.py:197 senlin/tests/unit/engine/test_webhook.py:351
#, python-format
msgid "endpoint: service=%(service)s,region=%(region)s,visibility=%(interface)s"
msgstr ""

#: senlin/engine/actions/base.py:267
#, python-format
msgid ""
"Action (%(action)s) is in unexpected status (%(actual)s) while expected "
"status should be one of (%(expected)s)."
msgstr ""

#: senlin/engine/actions/base.py:362
#, python-format
msgid "Failed policy '%(name)s': %(reason)s."
msgstr ""

#: senlin/engine/actions/base.py:405
msgid "Completed policy checking."
msgstr ""

#: senlin/engine/actions/base.py:425
#, python-format
msgid "Policy %(id)s cooldown is still in progress."
msgstr ""

#: senlin/engine/actions/base.py:498
#, python-format
msgid ""
"Unexpected exception occurred during action %(action)s (%(id)s) "
"execution: %(reason)s"
msgstr ""

#: senlin/engine/actions/cluster_action.py:59
#, python-format
msgid "%(action)s [%(id)s] failed"
msgstr ""

#: senlin/engine/actions/cluster_action.py:67
#, python-format
msgid "%(action)s [%(id)s] cancelled"
msgstr ""

#: senlin/engine/actions/cluster_action.py:74
#, python-format
msgid "%(action)s [%(id)s] timeout"
msgstr ""

#: senlin/engine/actions/cluster_action.py:141
msgid "Cluster creation failed."
msgstr ""

#: senlin/engine/actions/cluster_action.py:148
msgid "Cluster creation succeeded."
msgstr ""

#: senlin/engine/actions/cluster_action.py:179
msgid "Cluster update completed."
msgstr ""

#: senlin/engine/actions/cluster_action.py:224
msgid "Deletion in progress."
msgstr ""

#: senlin/engine/actions/cluster_action.py:240
msgid "Cannot delete cluster object."
msgstr ""

#: senlin/engine/actions/cluster_action.py:259
#: senlin/engine/actions/cluster_action.py:311
#, python-format
msgid "Node [%s] is not found."
msgstr ""

#: senlin/engine/actions/cluster_action.py:267
#, python-format
msgid "Node [%(n)s] is already owned by cluster [%(c)s]."
msgstr ""

#: senlin/engine/actions/cluster_action.py:272
#, python-format
msgid "Node [%s] is not in ACTIVE status."
msgstr ""

#: senlin/engine/actions/cluster_action.py:279
msgid "Completed adding nodes."
msgstr ""

#: senlin/engine/actions/cluster_action.py:319
msgid "Completed deleting nodes."
msgstr ""

#: senlin/engine/actions/cluster_action.py:353
msgid "Cluster properties updated."
msgstr ""

#: senlin/engine/actions/cluster_action.py:415
msgid "Cluster resize succeeded."
msgstr ""

#: senlin/engine/actions/cluster_action.py:431
#, python-format
msgid "Invalid count (%s) for scaling out."
msgstr ""

#: senlin/engine/actions/cluster_action.py:451
#: senlin/engine/actions/cluster_action.py:510
msgid "Cluster scaling succeeded."
msgstr ""

#: senlin/engine/actions/cluster_action.py:474
#, python-format
msgid "Invalid count (%s) for scaling in."
msgstr ""

#: senlin/engine/actions/cluster_action.py:481
#, python-format
msgid ""
"Triming count (%(count)s) to current cluster size (%(curr)s) for scaling "
"in"
msgstr ""

#: senlin/engine/actions/cluster_action.py:532
msgid "Policy already attached."
msgstr ""

#: senlin/engine/actions/cluster_action.py:536
#, python-format
msgid ""
"Only one instance of policy type (%(ptype)s) can be attached to a "
"cluster, but another instance (%(existing)s) is found attached to the "
"cluster (%(cluster)s) already."
msgstr ""

#: senlin/engine/actions/cluster_action.py:563
msgid "Policy attached."
msgstr ""

#: senlin/engine/actions/cluster_action.py:579
#: senlin/engine/actions/cluster_action.py:603
msgid "Policy not attached."
msgstr ""

#: senlin/engine/actions/cluster_action.py:589
msgid "Policy detached."
msgstr ""

#: senlin/engine/actions/cluster_action.py:619
msgid "No update is needed."
msgstr ""

#: senlin/engine/actions/cluster_action.py:624
msgid "Policy updated."
msgstr ""

#: senlin/engine/actions/cluster_action.py:630
#: senlin/engine/actions/cluster_action.py:649
#, python-format
msgid "Policy check failure: %s"
msgstr ""

#: senlin/engine/actions/cluster_action.py:639
#, python-format
msgid "Unsupported action: %s."
msgstr ""

#: senlin/engine/actions/cluster_action.py:667
#, python-format
msgid "Cluster (%(id)s) is not found"
msgstr ""

#: senlin/engine/actions/cluster_action.py:677
msgid "Failed in locking cluster."
msgstr ""

#: senlin/engine/actions/node_action.py:42
msgid "Node created successfully"
msgstr ""

#: senlin/engine/actions/node_action.py:44
msgid "Node creation failed"
msgstr ""

#: senlin/engine/actions/node_action.py:49
msgid "Node deleted successfully"
msgstr ""

#: senlin/engine/actions/node_action.py:51
msgid "Node deletion failed"
msgstr ""

#: senlin/engine/actions/node_action.py:57
msgid "Node updated successfully"
msgstr ""

#: senlin/engine/actions/node_action.py:59
msgid "Node update failed"
msgstr ""

#: senlin/engine/actions/node_action.py:76
msgid "Node successfully joined cluster"
msgstr ""

#: senlin/engine/actions/node_action.py:78
msgid "Node failed in joining cluster"
msgstr ""

#: senlin/engine/actions/node_action.py:94
msgid "Node successfully left cluster"
msgstr ""

#: senlin/engine/actions/node_action.py:96
msgid "Node failed in leaving cluster"
msgstr ""

#: senlin/engine/actions/node_action.py:104
#, python-format
msgid "Unsupported action: %s"
msgstr ""

#: senlin/engine/actions/node_action.py:114
#, python-format
msgid "Node with id (%s) is not found"
msgstr ""

#: senlin/engine/actions/node_action.py:123
msgid "Failed in locking cluster"
msgstr ""

#: senlin/engine/actions/node_action.py:140
msgid "Failed in locking node"
msgstr ""

#: senlin/policies/base.py:93 senlin/profiles/base.py:40
msgid "Name of the policy type."
msgstr ""

#: senlin/policies/base.py:97 senlin/profiles/base.py:44
msgid "Version number of the policy type."
msgstr ""

#: senlin/policies/base.py:101
msgid "A text description of policy."
msgstr ""

#: senlin/policies/base.py:105 senlin/profiles/base.py:48
msgid "Properties for the policy."
msgstr ""

#: senlin/policies/base.py:286
#, python-format
msgid "Policy not applicable on profile type: %s"
msgstr ""

#: senlin/policies/batch_policy.py:66
msgid "Minimum number of nodes in service when performing updates."
msgstr ""

#: senlin/policies/batch_policy.py:70
msgid "Maximum number of nodes that can be updated at the same time."
msgstr ""

#: senlin/policies/batch_policy.py:75
msgid "Number of seconds between update batches if any."
msgstr ""

#: senlin/policies/deletion_policy.py:83
msgid "Criteria used in selecting candidates for deletion"
msgstr ""

#: senlin/policies/deletion_policy.py:90
msgid ""
"Whethere a node should be completely destroyed after deletion. Default to"
" True"
msgstr ""

#: senlin/policies/deletion_policy.py:95
msgid "Number of seconds before real deletion happens."
msgstr ""

#: senlin/policies/deletion_policy.py:99
msgid ""
"Whether the desired capacity of the cluster should be reduced along the "
"deletion. Default to False."
msgstr ""

#: senlin/policies/deletion_policy.py:172
msgid "Candidates generated"
msgstr ""

#: senlin/policies/health_policy.py:81
msgid "Policy aspect for node failure detection."
msgstr ""

#: senlin/policies/health_policy.py:84
msgid "Type of node failure detection."
msgstr ""

#: senlin/policies/health_policy.py:93
msgid ""
"Number of seconds between pollings. Only required when type is "
"'NODE_STATUS_POLLING'."
msgstr ""

#: senlin/policies/health_policy.py:103
msgid "Policy aspect for node failure recovery."
msgstr ""

#: senlin/policies/health_policy.py:106
msgid "List of actions to try for node recovery."
msgstr ""

#: senlin/policies/health_policy.py:108
msgid "Action to try for node recovery."
msgstr ""

#: senlin/policies/health_policy.py:115
msgid "List of services to be fenced."
msgstr ""

#: senlin/policies/health_policy.py:117
msgid "Service to be fenced."
msgstr ""

#: senlin/policies/lb_policy.py:98
msgid "LB pool properties."
msgstr ""

#: senlin/policies/lb_policy.py:101
msgid "Protocol used for load balancing."
msgstr ""

#: senlin/policies/lb_policy.py:108
msgid "Port on which servers are running on the nodes."
msgstr ""

#: senlin/policies/lb_policy.py:112
msgid "Name or ID of subnet for the port on which nodes can be connected."
msgstr ""

#: senlin/policies/lb_policy.py:117
msgid "Load balancing algorithm."
msgstr ""

#: senlin/policies/lb_policy.py:124
msgid "Administrative state of the pool."
msgstr ""

#: senlin/policies/lb_policy.py:128
msgid "Session pesistence configuration."
msgstr ""

#: senlin/policies/lb_policy.py:131
msgid "Type of session persistence implementation."
msgstr ""

#: senlin/policies/lb_policy.py:137
msgid "Name of cookie if type set to APP_COOKIE."
msgstr ""

#: senlin/policies/lb_policy.py:145
msgid "VIP address and port of the pool."
msgstr ""

#: senlin/policies/lb_policy.py:148
msgid "Name or ID of Subnet on which the VIP address will be allocated."
msgstr ""

#: senlin/policies/lb_policy.py:153
msgid "IP address of the VIP."
msgstr ""

#: senlin/policies/lb_policy.py:157
msgid "Maximum number of connections per second allowed for this VIP"
msgstr ""

#: senlin/policies/lb_policy.py:162
msgid "Protocol used for VIP."
msgstr ""

#: senlin/policies/lb_policy.py:169
msgid "TCP port to listen on."
msgstr ""

#: senlin/policies/lb_policy.py:173
msgid "Administrative state of the VIP."
msgstr ""

#: senlin/policies/lb_policy.py:246
msgid "LB resources deletion succeeded."
msgstr ""

#: senlin/policies/lb_policy.py:307
msgid "Failed in removing deleted node from lb pool"
msgstr ""

#: senlin/policies/lb_policy.py:325
msgid "Failed in adding new node into lb pool"
msgstr ""

#: senlin/policies/scaling_policy.py:63
msgid ""
"Event that will trigger this policy. Must be one of CLUSTER_SCALE_IN and "
"CLUSTER_SCALE_OUT."
msgstr ""

#: senlin/policies/scaling_policy.py:71
msgid "Detailed specification for scaling adjustments."
msgstr ""

#: senlin/policies/scaling_policy.py:74
msgid "Type of adjustment when scaling is triggered."
msgstr ""

#: senlin/policies/scaling_policy.py:81
msgid "A number specifying the amount of adjustment."
msgstr ""

#: senlin/policies/scaling_policy.py:85
msgid ""
"When adjustment type is set to \"CHANGE_IN_PERCENTAGE\", this specifies "
"the cluster size will be decreased by at least this number of nodes."
msgstr ""

#: senlin/policies/scaling_policy.py:91
msgid ""
"Whether do best effort scaling when new size of cluster will break the "
"size limitation"
msgstr ""

#: senlin/policies/scaling_policy.py:131
msgid "Scaling request validated."
msgstr ""

#: senlin/policies/scaling_policy.py:149
#, python-format
msgid "Count (%(count)s) invalid for action %(action)s."
msgstr ""

#: senlin/policies/scaling_policy.py:158 senlin/policies/scaling_policy.py:167
#: senlin/tests/unit/policies/test_scaling_policy.py:276
msgid "Do best effort scaling."
msgstr ""

#: senlin/policies/scaling_policy.py:161
#: senlin/tests/unit/policies/test_scaling_policy.py:255
msgid "Attempted scaling below minimum size."
msgstr ""

#: senlin/policies/scaling_policy.py:170
msgid "Attempted scaling above maximum size."
msgstr ""

#: senlin/profiles/os/heat/stack.py:45
msgid "A dictionary for specifying the customized context for stack operations"
msgstr ""

#: senlin/profiles/os/heat/stack.py:50
msgid "Heat stack template."
msgstr ""

#: senlin/profiles/os/heat/stack.py:54
msgid "Parameters to be passed to Heat for stack operations."
msgstr ""

#: senlin/profiles/os/heat/stack.py:58
msgid "Contents of files referenced by the template, if any."
msgstr ""

#: senlin/profiles/os/heat/stack.py:62
msgid ""
"A integer that specifies the number of minutes that a stack operation "
"times out."
msgstr ""

#: senlin/profiles/os/heat/stack.py:66
msgid "A boolean specifying whether a stack operation can be rolled back."
msgstr ""

#: senlin/profiles/os/heat/stack.py:71
msgid "A map that specifies the environment used for stack operations."
msgstr ""

#: senlin/profiles/os/heat/stack.py:107
#, python-format
msgid "Failed validate stack template due to \"%s\""
msgstr ""

#: senlin/profiles/os/nova/server.py:75
msgid "Customized security context for operating servers."
msgstr ""

#: senlin/profiles/os/nova/server.py:78
msgid "Password for the administrator account."
msgstr ""

#: senlin/profiles/os/nova/server.py:81
msgid "Whether the disk partition is done automatically."
msgstr ""

#: senlin/profiles/os/nova/server.py:85
msgid "Name of availability zone for running the server."
msgstr ""

#: senlin/profiles/os/nova/server.py:88
msgid ""
"A list specifying the properties of block devices to be used for this "
"server."
msgstr ""

#: senlin/profiles/os/nova/server.py:91
msgid ""
"A map specifying the properties of a block device to be used by the "
"server."
msgstr ""

#: senlin/profiles/os/nova/server.py:95
msgid "Block device name, should be <=255 chars."
msgstr ""

#: senlin/profiles/os/nova/server.py:98
msgid "Block device size in GB."
msgstr ""

#: senlin/profiles/os/nova/server.py:104
msgid "Whether config drive should be enabled for the server."
msgstr ""

#: senlin/profiles/os/nova/server.py:107
msgid "ID of flavor used for the server."
msgstr ""

#: senlin/profiles/os/nova/server.py:113
msgid "ID of image to be used for the new server."
msgstr ""

#: senlin/profiles/os/nova/server.py:116
msgid "Name of Nova keypair to be injected to server."
msgstr ""

#: senlin/profiles/os/nova/server.py:119
msgid ""
"A collection of key/value pairs to be associated with the server created."
" Both key and value should be <=255 chars."
msgstr ""

#: senlin/profiles/os/nova/server.py:123
msgid "Name of the server."
msgstr ""

#: senlin/profiles/os/nova/server.py:127
msgid "List of networks for the server."
msgstr ""

#: senlin/profiles/os/nova/server.py:129
msgid "A map specifying the properties of a network for uses."
msgstr ""

#: senlin/profiles/os/nova/server.py:132
msgid "Name or ID of network to create a port on."
msgstr ""

#: senlin/profiles/os/nova/server.py:135
msgid "Port ID to be used by the network."
msgstr ""

#: senlin/profiles/os/nova/server.py:138
msgid "Fixed IP to be used by the network."
msgstr ""

#: senlin/profiles/os/nova/server.py:144
msgid "List of files to be injected into the server, where each."
msgstr ""

#: senlin/profiles/os/nova/server.py:146
msgid "A map specifying the path & contents for an injected file."
msgstr ""

#: senlin/profiles/os/nova/server.py:150
msgid "In-instance path for the file to be injected."
msgstr ""

#: senlin/profiles/os/nova/server.py:154
msgid "Contents of the file to be injected."
msgstr ""

#: senlin/profiles/os/nova/server.py:161
msgid ""
"A collection of key/value pairs to be associated with the Scheduler "
"hints. Both key and value should be <=255 chars."
msgstr ""

#: senlin/profiles/os/nova/server.py:166
msgid "List of security groups."
msgstr ""

#: senlin/profiles/os/nova/server.py:168
msgid "Name of a security group"
msgstr ""

#: senlin/profiles/os/nova/server.py:173
msgid "Time out threshold for server operations."
msgstr ""

#: senlin/profiles/os/nova/server.py:177
msgid "User data to be exposed by the metadata server."
msgstr ""

#: senlin/profiles/os/nova/server.py:193
#, python-format
msgid "Value of the 'timeout' property must be lower than the upper limit (%s)."
msgstr ""

#: senlin/profiles/os/nova/server.py:286
#, python-format
msgid "Failed in creating server: %s"
msgstr ""

#: senlin/tests/functional/test_cluster_scaling.py:82
msgid "The target capacity (6) is greater than the cluster's max_size (5)."
msgstr ""

#: senlin/tests/functional/test_cluster_scaling.py:119
msgid "The target capacity (0) is less than the cluster's min_size (1)."
msgstr ""

#: senlin/tests/functional/common/client.py:46
#, python-format
msgid ""
"%(msg)s\n"
"Status Code: %(status)s\n"
"Body: %(body)s"
msgstr ""

#: senlin/tests/functional/common/client.py:113
#, python-format
msgid "Doing authentication: auth_url %(auth_url)s, status %(http_status)s."
msgstr ""

#: senlin/tests/functional/common/client.py:118
#, python-format
msgid "Authentication failed: %s"
msgstr ""

#: senlin/tests/functional/common/client.py:143
#, python-format
msgid "Admin endpoint of clustering service in %(region)s was not found."
msgstr ""

#: senlin/tests/functional/common/client.py:156
#, python-format
msgid "request url %(url)s, status_code %(status)s, response body %(body)s"
msgstr ""

#: senlin/tests/functional/utils/senlin_test_profile.py:29
msgid "A dictionary for specifying the customized context"
msgstr ""

#: senlin/tests/functional/utils/senlin_test_profile.py:33
msgid "The first key of Senlin test profile schema"
msgstr ""

#: senlin/tests/functional/utils/senlin_test_profile.py:37
msgid "The second key of Senlin test profile schema"
msgstr ""

#: senlin/tests/unit/test_common_exception.py:23
#, python-format
msgid "Testing message %(text)s"
msgstr ""

#: senlin/tests/unit/apiv1/test_clusters.py:791
msgid "Invalid value '10min' specified for 'timeout'"
msgstr ""

#: senlin/tests/unit/apiv1/test_webhooks.py:335
#, python-format
msgid "webhook obj_type %s is unsupported"
msgstr ""

#: senlin/tests/unit/apiv1/test_webhooks.py:408
#, python-format
msgid "illegal action name %s"
msgstr ""

#: senlin/tests/unit/apiv1/test_webhooks.py:446
#, python-format
msgid "Action %(action)s is not applicable to object %(obj_type)s"
msgstr ""

#: senlin/tests/unit/apiv1/test_webhooks.py:481
msgid "The credential parameter is missing"
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:164
#, python-format
msgid "Failed in creating load balancer (%s)."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:177
msgid "Failed in getting subnet: GET FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:186
msgid "Failed in creating loadbalancer: CREATE FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:211
#, python-format
msgid "Failed in creating listener (%s)."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:229
msgid "Failed in creating lb listener: CREATE FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:256
#, python-format
msgid "Failed in creating pool (%s)."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:277
msgid "Failed in creating lb pool: CREATE FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:314
msgid "Failed in deleting healthmonitor: DELETE FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:332
msgid "Failed in deleting lb pool: DELETE FAILED."
msgstr ""

#: senlin/tests/unit/driver/test_lbaas_driver.py:350
msgid "Failed in deleting listener: DELETE FAILED."
msgstr ""

#: senlin/tests/unit/engine/test_webhook.py:326
#, python-format
msgid "HTTP://HOST_IP:PORT/V1/%(tenant_id)s/webhooks/%(webhook_id)s/trigger?key=%(key)s"
msgstr ""

#: senlin/tests/unit/engine/service/test_clusters.py:647
#, python-format
msgid ""
"The request is malformed: Cluster %(id)s is not allowed to be deleted "
"without detaching all policies."
msgstr ""

#: senlin/tests/unit/policies/test_scaling_policy.py:235
msgid "Count (-2) invalid for action CLUSTER_SCALE_IN."
msgstr ""

#: senlin/triggers/base.py:45
msgid "Type name of the trigger type."
msgstr ""

#: senlin/triggers/base.py:49
msgid "Version number string of the trigger type."
msgstr ""

#: senlin/triggers/base.py:53
msgid "Rule collection for the trigger."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:92
msgid ""
"Whether the actions should be re-triggered on each evaluation cycle. "
"Default to False."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:98
msgid "A map of time constraint settings."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:101
msgid "Name of the time constraint."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:104
msgid "A description of the time constraint."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:107
msgid ""
"Start point of the time constraint, expressed as a string in cron "
"expression format."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:112
msgid "How long the constraint should last, in seconds."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:116
msgid "Time zone of the constraint."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:140
#, python-format
msgid ""
"Invalid cron expression specified for property '%(property)s' (%(exp)s): "
"%(ex)s"
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:150
#, python-format
msgid ""
"Invalid timezone value specified for property '%(property)s' (%(tz)s): "
"%(ex)s"
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:214
msgid "Name of a meter to evaluate against."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:218
#: senlin/triggers/ceilometer/alarm.py:306
#: senlin/triggers/ceilometer/alarm.py:358
#: senlin/triggers/ceilometer/alarm.py:401
msgid "Comparison operator for evaluation."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:225
#: senlin/triggers/ceilometer/alarm.py:313
#: senlin/triggers/ceilometer/alarm.py:365
#: senlin/triggers/ceilometer/alarm.py:408
msgid "Threshold for evaluation."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:229
#: senlin/triggers/ceilometer/alarm.py:369
#: senlin/triggers/ceilometer/alarm.py:412
msgid "Length of every evaluation period in seconds."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:233
#: senlin/triggers/ceilometer/alarm.py:321
#: senlin/triggers/ceilometer/alarm.py:373
#: senlin/triggers/ceilometer/alarm.py:416
msgid "Number of periods to evaluate over."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:237
#: senlin/triggers/ceilometer/alarm.py:325
#, python-format
msgid "Statistics to evaluate. Must be one of %s, default to \"avg\"."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:245
msgid "The query to find the dat afor computing statistics."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:249
msgid "A field of a meter to query."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:253
msgid "An operator for meter comparison."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:257
msgid "A value for comparison."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:276
#, python-format
msgid "Operator for combination. Must be one of %s"
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:281
msgid "List of alarm IDs for combination."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:283
msgid "The ID of an alarm."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:302
msgid "Name of a metric to evaluate against."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:317
msgid "Length of each evaluation period in seconds."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:333
#: senlin/triggers/ceilometer/alarm.py:428
msgid "The resource type."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:337
msgid "The ID of a resource."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:354
msgid "Metrics to evaluate against."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:377
#: senlin/triggers/ceilometer/alarm.py:420
#, python-format
msgid "Statistics to evaluate. Must be one of %s."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:397
msgid "Metric to evaluate against."
msgstr ""

#: senlin/triggers/ceilometer/alarm.py:432
msgid "Gnocchi resources search query filter."
msgstr ""

