# Translations template for watcher. # Copyright (C) 2016 ORGANIZATION # This file is distributed under the same license as the watcher project. # FIRST AUTHOR , 2016. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: watcher 0.31.1.dev1\n" "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n" "POT-Creation-Date: 2016-09-30 13:31+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.3.4\n" #: watcher/api/app.py:31 msgid "The port for the watcher API server" msgstr "" #: watcher/api/app.py:34 msgid "The listen IP for the watcher API server" msgstr "" #: watcher/api/app.py:37 msgid "" "The maximum number of items returned in a single response from a " "collection resource" msgstr "" #: watcher/api/app.py:41 msgid "" "Number of workers for Watcher API service. The default is equal to the " "number of CPUs available if that can be determined, else a default worker" " count of 1 is returned." msgstr "" #: watcher/api/app.py:48 msgid "" "Enable the integrated stand-alone API to service requests via HTTPS " "instead of HTTP. If there is a front-end service performing HTTPS " "offloading from the service, this option should be False; note, you will " "want to change public API endpoint to represent SSL termination URL with " "'public_endpoint' option." msgstr "" #: watcher/api/controllers/v1/action.py:374 msgid "Cannot create an action directly" msgstr "" #: watcher/api/controllers/v1/action.py:398 msgid "Cannot modify an action directly" msgstr "" #: watcher/api/controllers/v1/action.py:434 msgid "Cannot delete an action directly" msgstr "" #: watcher/api/controllers/v1/action_plan.py:93 #, python-format msgid "Invalid state: %(state)s" msgstr "" #: watcher/api/controllers/v1/action_plan.py:534 #, python-format msgid "State transition not allowed: (%(initial_state)s -> %(new_state)s)" msgstr "" #: watcher/api/controllers/v1/audit.py:98 msgid "The audit template UUID or name specified is invalid" msgstr "" #: watcher/api/controllers/v1/audit.py:135 #, python-format msgid "%(field)s can't be updated." msgstr "" #: watcher/api/controllers/v1/audit.py:509 msgid "A valid goal_id or audit_template_id must be provided" msgstr "" #: watcher/api/controllers/v1/audit.py:526 msgid "" "Specify parameters but no predefined strategy for audit template, or no " "parameter spec in predefined strategy" msgstr "" #: watcher/api/controllers/v1/audit_template.py:142 #, python-format msgid "" "'%(strategy)s' strategy does relate to the '%(goal)s' goal. Possible " "choices: %(choices)s" msgstr "" #: watcher/api/controllers/v1/audit_template.py:170 msgid "Cannot remove 'goal' attribute from an audit template" msgstr "" #: watcher/api/controllers/v1/types.py:123 #, python-format msgid "%s is not JSON serializable" msgstr "" #: watcher/api/controllers/v1/types.py:159 #, python-format msgid "Wrong type. Expected '%(type)s', got '%(value)s'" msgstr "" #: watcher/api/controllers/v1/types.py:198 #, python-format msgid "'%s' is an internal attribute and can not be updated" msgstr "" #: watcher/api/controllers/v1/types.py:202 #, python-format msgid "'%s' is a mandatory attribute and can not be removed" msgstr "" #: watcher/api/controllers/v1/types.py:207 msgid "'add' and 'replace' operations needs value" msgstr "" #: watcher/api/controllers/v1/utils.py:39 msgid "Limit must be positive" msgstr "" #: watcher/api/controllers/v1/utils.py:50 #, python-format msgid "Invalid sort direction: %s. Acceptable values are 'asc' or 'desc'" msgstr "" #: watcher/api/controllers/v1/utils.py:61 #, python-format msgid "Invalid filter: %s" msgstr "" #: watcher/api/controllers/v1/utils.py:68 #, python-format msgid "Adding a new attribute (%s) to the root of the resource is not allowed" msgstr "" #: watcher/api/middleware/auth_token.py:45 msgid "Cannot compile public API routes" msgstr "" #: watcher/api/middleware/parsable_error.py:52 #, python-format msgid "ErrorDocumentMiddleware received an invalid status %s" msgstr "" #: watcher/applier/actions/change_nova_service_state.py:91 msgid "The target state is not defined" msgstr "" #: watcher/applier/actions/migration.py:69 msgid "The parameter resource_id is invalid." msgstr "" #: watcher/applier/actions/migration.py:155 #, python-format msgid "Migration of type '%(migration_type)s' is not supported." msgstr "" #: watcher/common/ceilometer_helper.py:89 #, python-format msgid "Invalid query: %(start_time)s > %(end_time)s" msgstr "" #: watcher/common/clients.py:29 msgid "Version of Nova API to use in novaclient." msgstr "" #: watcher/common/clients.py:34 msgid "Version of Glance API to use in glanceclient." msgstr "" #: watcher/common/clients.py:39 msgid "Version of Cinder API to use in cinderclient." msgstr "" #: watcher/common/clients.py:44 msgid "Version of Ceilometer API to use in ceilometerclient." msgstr "" #: watcher/common/clients.py:50 msgid "Version of Neutron API to use in neutronclient." msgstr "" #: watcher/common/exception.py:59 #, python-format msgid "Unexpected keystone client error occurred: %s" msgstr "" #: watcher/common/exception.py:72 msgid "An unknown exception occurred" msgstr "" #: watcher/common/exception.py:123 msgid "Not authorized" msgstr "" #: watcher/common/exception.py:128 #, python-format msgid "Policy doesn't allow %(action)s to be performed." msgstr "" #: watcher/common/exception.py:132 msgid "Operation not permitted" msgstr "" #: watcher/common/exception.py:136 msgid "Unacceptable parameters" msgstr "" #: watcher/common/exception.py:141 #, python-format msgid "The %(name)s %(id)s could not be found" msgstr "" #: watcher/common/exception.py:145 msgid "Conflict" msgstr "" #: watcher/common/exception.py:150 #, python-format msgid "The %(name)s resource %(id)s could not be found" msgstr "" #: watcher/common/exception.py:155 #, python-format msgid "Expected a uuid or int but received %(identity)s" msgstr "" #: watcher/common/exception.py:159 #, python-format msgid "Filter operator is not valid: %(operator)s not in %(valid_operators)s" msgstr "" #: watcher/common/exception.py:164 #, python-format msgid "Goal %(goal)s is invalid" msgstr "" #: watcher/common/exception.py:168 #, python-format msgid "Strategy %(strategy)s is invalid" msgstr "" #: watcher/common/exception.py:172 #, python-format msgid "Expected a uuid but received %(uuid)s" msgstr "" #: watcher/common/exception.py:176 #, python-format msgid "Expected a logical name but received %(name)s" msgstr "" #: watcher/common/exception.py:180 #, python-format msgid "Expected a logical name or uuid but received %(name)s" msgstr "" #: watcher/common/exception.py:184 #, python-format msgid "Goal %(goal)s could not be found" msgstr "" #: watcher/common/exception.py:188 #, python-format msgid "A goal with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:192 #, python-format msgid "Strategy %(strategy)s could not be found" msgstr "" #: watcher/common/exception.py:196 #, python-format msgid "A strategy with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:200 #, python-format msgid "AuditTemplate %(audit_template)s could not be found" msgstr "" #: watcher/common/exception.py:204 #, python-format msgid "An audit_template with UUID or name %(audit_template)s already exists" msgstr "" #: watcher/common/exception.py:209 #, python-format msgid "AuditTemplate %(audit_template)s is referenced by one or multiple audits" msgstr "" #: watcher/common/exception.py:214 #, python-format msgid "Audit type %(audit_type)s could not be found" msgstr "" #: watcher/common/exception.py:218 #, python-format msgid "Audit parameter %(parameter)s are not allowed" msgstr "" #: watcher/common/exception.py:222 #, python-format msgid "Audit %(audit)s could not be found" msgstr "" #: watcher/common/exception.py:226 #, python-format msgid "An audit with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:230 #, python-format msgid "Interval of audit must be specified for %(audit_type)s." msgstr "" #: watcher/common/exception.py:234 #, python-format msgid "Interval of audit must not be set for %(audit_type)s." msgstr "" #: watcher/common/exception.py:238 #, python-format msgid "Audit %(audit)s is referenced by one or multiple action plans" msgstr "" #: watcher/common/exception.py:243 #, python-format msgid "ActionPlan %(action_plan)s could not be found" msgstr "" #: watcher/common/exception.py:247 #, python-format msgid "An action plan with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:251 #, python-format msgid "Action Plan %(action_plan)s is referenced by one or multiple actions" msgstr "" #: watcher/common/exception.py:256 #, python-format msgid "Action %(action)s could not be found" msgstr "" #: watcher/common/exception.py:260 watcher/common/exception.py:278 #, python-format msgid "An action with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:264 #, python-format msgid "Action plan %(action_plan)s is referenced by one or multiple goals" msgstr "" #: watcher/common/exception.py:269 msgid "Filtering actions on both audit and action-plan is prohibited" msgstr "" #: watcher/common/exception.py:274 #, python-format msgid "Efficacy indicator %(efficacy_indicator)s could not be found" msgstr "" #: watcher/common/exception.py:282 #, python-format msgid "A scoring engine with UUID %(uuid)s already exists" msgstr "" #: watcher/common/exception.py:286 #, python-format msgid "ScoringEngine %(scoring_engine)s could not be found" msgstr "" #: watcher/common/exception.py:294 #, python-format msgid "Couldn't apply patch '%(patch)s'. Reason: %(reason)s" msgstr "" #: watcher/common/exception.py:300 #, python-format msgid "Workflow execution error: %(error)s" msgstr "" #: watcher/common/exception.py:304 msgid "Illegal argument" msgstr "" #: watcher/common/exception.py:308 msgid "No such metric" msgstr "" #: watcher/common/exception.py:312 msgid "No rows were returned" msgstr "" #: watcher/common/exception.py:316 #, python-format msgid "%(client)s connection failed. Reason: %(reason)s" msgstr "" #: watcher/common/exception.py:320 msgid "Keystone API endpoint is missing" msgstr "" #: watcher/common/exception.py:324 msgid "The list of compute node(s) in the cluster is empty" msgstr "" #: watcher/common/exception.py:328 msgid "The metrics resource collector is not defined" msgstr "" #: watcher/common/exception.py:332 #, python-format msgid "The cluster data model '%(cdm)s' could not be built" msgstr "" #: watcher/common/exception.py:336 msgid "The cluster state is not defined" msgstr "" #: watcher/common/exception.py:340 #, python-format msgid "The capacity %(capacity)s is not defined for '%(resource)s'" msgstr "" #: watcher/common/exception.py:344 #, python-format msgid "No strategy could be found to achieve the '%(goal)s' goal." msgstr "" #: watcher/common/exception.py:348 #, python-format msgid "" "The indicator '%(name)s' with value '%(value)s' and spec type " "'%(spec_type)s' is invalid." msgstr "" #: watcher/common/exception.py:353 #, python-format msgid "" "Could not compute the global efficacy for the '%(goal)s' goal using the " "'%(strategy)s' strategy." msgstr "" #: watcher/common/exception.py:358 #, python-format msgid "No values returned by %(resource_id)s for %(metric_name)s." msgstr "" #: watcher/common/exception.py:362 #, python-format msgid "No %(metric)s metric for %(host)s found." msgstr "" #: watcher/common/exception.py:368 #, python-format msgid "The instance '%(name)s' could not be found" msgstr "" #: watcher/common/exception.py:372 #, python-format msgid "The compute node %(name)s could not be found" msgstr "" #: watcher/common/exception.py:376 #, python-format msgid "Error loading plugin '%(name)s'" msgstr "" #: watcher/common/exception.py:380 #, python-format msgid "The identifier '%(name)s' is a reserved word" msgstr "" #: watcher/common/exception.py:384 #, python-format msgid "The %(name)s resource %(id)s is not soft deleted" msgstr "" #: watcher/common/exception.py:388 msgid "Limit should be positive" msgstr "" #: watcher/common/service.py:43 msgid "Seconds between running periodic tasks." msgstr "" #: watcher/common/service.py:46 msgid "" "Name of this node. This can be an opaque identifier. It is not " "necessarily a hostname, FQDN, or IP address. However, the node name must " "be valid within an AMQP key, and if using ZeroMQ, a valid hostname, FQDN," " or IP address." msgstr "" #: watcher/common/service.py:274 msgid "Plugins" msgstr "" #: watcher/db/purge.py:51 msgid "Goals" msgstr "" #: watcher/db/purge.py:52 msgid "Strategies" msgstr "" #: watcher/db/purge.py:53 msgid "Audit Templates" msgstr "" #: watcher/db/purge.py:54 msgid "Audits" msgstr "" #: watcher/db/purge.py:55 msgid "Action Plans" msgstr "" #: watcher/db/purge.py:56 msgid "Actions" msgstr "" #: watcher/db/purge.py:103 msgid "Total" msgstr "" #: watcher/db/purge.py:166 msgid "Goal" msgstr "" #: watcher/db/purge.py:307 #, python-format msgid "There are %(count)d objects set for deletion. Continue? [y/N]" msgstr "" #: watcher/db/purge.py:314 #, python-format msgid "" "The number of objects (%(num)s) to delete from the database exceeds the " "maximum number of objects (%(max_number)s) specified." msgstr "" #: watcher/db/purge.py:319 msgid "Do you want to delete objects up to the specified maximum number? [y/N]" msgstr "" #: watcher/db/purge.py:422 msgid " (orphans excluded)" msgstr "" #: watcher/db/purge.py:423 msgid " (may include orphans)" msgstr "" #: watcher/db/purge.py:426 #, python-format msgid "Purge results summary%s:" msgstr "" #: watcher/db/purge.py:430 #, python-format msgid "Here below is a table containing the objects that can be purged%s:" msgstr "" #: watcher/db/sqlalchemy/api.py:451 msgid "Cannot overwrite UUID for an existing Goal." msgstr "" #: watcher/db/sqlalchemy/api.py:517 msgid "Cannot overwrite UUID for an existing Strategy." msgstr "" #: watcher/db/sqlalchemy/api.py:594 msgid "Cannot overwrite UUID for an existing Audit Template." msgstr "" #: watcher/db/sqlalchemy/api.py:691 msgid "Cannot overwrite UUID for an existing Audit." msgstr "" #: watcher/db/sqlalchemy/api.py:769 msgid "Cannot overwrite UUID for an existing Action." msgstr "" #: watcher/db/sqlalchemy/api.py:882 msgid "Cannot overwrite UUID for an existing Action Plan." msgstr "" #: watcher/db/sqlalchemy/api.py:961 msgid "Cannot overwrite UUID for an existing efficacy indicator." msgstr "" #: watcher/db/sqlalchemy/api.py:1052 msgid "Cannot overwrite ID for an existing Scoring Engine." msgstr "" #: watcher/db/sqlalchemy/migration.py:73 msgid "" "Watcher database schema is already under version control; use upgrade() " "instead" msgstr "" #: watcher/decision_engine/gmr.py:27 msgid "CDMCs" msgstr "" #: watcher/decision_engine/goal/goals.py:34 msgid "Dummy goal" msgstr "" #: watcher/decision_engine/goal/goals.py:62 msgid "Unclassified" msgstr "" #: watcher/decision_engine/goal/goals.py:87 msgid "Server Consolidation" msgstr "" #: watcher/decision_engine/goal/goals.py:111 msgid "Thermal Optimization" msgstr "" #: watcher/decision_engine/goal/goals.py:135 msgid "Workload Balancing" msgstr "" #: watcher/decision_engine/goal/goals.py:159 msgid "Airflow Optimization" msgstr "" #: watcher/decision_engine/goal/efficacy/indicators.py:80 msgid "Average CPU load as a percentage of the CPU time." msgstr "" #: watcher/decision_engine/goal/efficacy/indicators.py:95 msgid "" "Represents the percentage of released nodes out of the total number of " "migrations." msgstr "" #: watcher/decision_engine/goal/efficacy/indicators.py:111 msgid "The number of compute nodes to be released." msgstr "" #: watcher/decision_engine/goal/efficacy/indicators.py:125 msgid "The number of VM migrations to be performed." msgstr "" #: watcher/decision_engine/goal/efficacy/specs.py:48 msgid "Ratio of released compute nodes divided by the number of VM migrations." msgstr "" #: watcher/decision_engine/model/model_root.py:45 #: watcher/decision_engine/model/model_root.py:50 msgid "'obj' argument type is not valid" msgstr "" #: watcher/decision_engine/scoring/dummy_scorer.py:142 msgid "Unable to parse features: " msgstr "" #: watcher/decision_engine/scoring/dummy_scorer.py:144 #: watcher/decision_engine/scoring/dummy_scoring_container.py:90 msgid "JSON list expected in feature argument" msgstr "" #: watcher/decision_engine/scoring/dummy_scorer.py:146 msgid "Invalid number of features, expected 9" msgstr "" #: watcher/decision_engine/scoring/dummy_scoring_container.py:88 #, python-format msgid "Unable to parse features: %s" msgstr "" #: watcher/decision_engine/scoring/dummy_scoring_container.py:92 msgid "At least one feature is required" msgstr "" #: watcher/decision_engine/scoring/scoring_factory.py:52 #, python-format msgid "Scoring Engine with name=%s not found" msgstr "" #: watcher/decision_engine/solution/efficacy.py:41 msgid "An indicator value should be a number" msgstr "" #: watcher/decision_engine/strategy/selection/default.py:72 #, python-format msgid "Could not load any strategy for goal %(goal)s" msgstr "" #: watcher/decision_engine/strategy/strategies/basic_consolidation.py:114 msgid "Basic offline consolidation" msgstr "" #: watcher/decision_engine/strategy/strategies/dummy_strategy.py:79 msgid "Dummy strategy" msgstr "" #: watcher/decision_engine/strategy/strategies/dummy_with_scorer.py:126 msgid "Dummy Strategy using sample Scoring Engines" msgstr "" #: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:95 msgid "Outlet temperature based strategy" msgstr "" #: watcher/decision_engine/strategy/strategies/uniform_airflow.py:99 msgid "Uniform airflow migration strategy" msgstr "" #: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:96 msgid "VM Workload Consolidation Strategy" msgstr "" #: watcher/decision_engine/strategy/strategies/workload_balance.py:93 msgid "Workload Balance Migration Strategy" msgstr "" #: watcher/decision_engine/strategy/strategies/workload_stabilization.py:95 msgid "Workload stabilization" msgstr "" #: watcher/decision_engine/strategy/strategies/workload_stabilization.py:264 #, python-format msgid "Incorrect mapping: could not find associated weight for %s in weight dict." msgstr "" #: watcher/objects/base.py:108 msgid "Invalid version string" msgstr "" #: watcher/objects/base.py:299 #, python-format msgid "Cannot load '%(attrname)s' in the base class" msgstr "" #: watcher/objects/base.py:308 msgid "Cannot save anything in the base class" msgstr "" #: watcher/objects/base.py:340 #, python-format msgid "%(objname)s object has no attribute '%(attrname)s'" msgstr "" #: watcher/objects/base.py:398 #, python-format msgid "'%(objclass)s' object has no attribute '%(attrname)s'" msgstr "" #: watcher/objects/utils.py:40 msgid "A datetime.datetime is required here" msgstr "" #: watcher/objects/utils.py:114 #, python-format msgid "An object of class %s is required here" msgstr ""