Added .pot file
In this changeset, I just generate the .pot file for all the new translations that were added during the implementation of this BP Partially Implements: blueprint get-goal-from-strategy Change-Id: I2192508afda037510f8f91092c5cfde0115dae1d
This commit is contained in:
parent
5f6a97148f
commit
1a21867735
@ -147,7 +147,7 @@ class ResourceNotFound(ObjectNotFound):
|
||||
|
||||
|
||||
class InvalidIdentity(Invalid):
|
||||
msg_fmt = _("Expected an uuid or int but received %(identity)s")
|
||||
msg_fmt = _("Expected a uuid or int but received %(identity)s")
|
||||
|
||||
|
||||
class InvalidGoal(Invalid):
|
||||
@ -191,7 +191,7 @@ class AuditTemplateNotFound(ResourceNotFound):
|
||||
|
||||
|
||||
class AuditTemplateAlreadyExists(Conflict):
|
||||
msg_fmt = _("An audit_template with UUID %(uuid)s or name %(name)s "
|
||||
msg_fmt = _("An audit_template with UUID or name %(audit_template)s "
|
||||
"already exists")
|
||||
|
||||
|
||||
|
@ -541,7 +541,8 @@ class Connection(api.BaseConnection):
|
||||
deleted_at=None)
|
||||
|
||||
if len(query.all()) > 0:
|
||||
raise exception.AuditTemplateAlreadyExists(uuid=values['uuid'])
|
||||
raise exception.AuditTemplateAlreadyExists(
|
||||
audit_template=values['name'])
|
||||
|
||||
audit_template = models.AuditTemplate()
|
||||
audit_template.update(values)
|
||||
@ -549,8 +550,8 @@ class Connection(api.BaseConnection):
|
||||
try:
|
||||
audit_template.save()
|
||||
except db_exc.DBDuplicateEntry:
|
||||
raise exception.AuditTemplateAlreadyExists(uuid=values['uuid'],
|
||||
name=values['name'])
|
||||
raise exception.AuditTemplateAlreadyExists(
|
||||
audit_template=values['name'])
|
||||
return audit_template
|
||||
|
||||
def _get_audit_template(self, context, fieldname, value):
|
||||
|
@ -7,39 +7,39 @@
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: python-watcher 0.26.1.dev13\n"
|
||||
"Project-Id-Version: python-watcher 0.26.1.dev33\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2016-04-22 10:31+0200\n"
|
||||
"POT-Creation-Date: 2016-05-11 15:31+0200\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.3.2\n"
|
||||
"Generated-By: Babel 2.3.4\n"
|
||||
|
||||
#: watcher/api/app.py:33
|
||||
#: watcher/api/app.py:31
|
||||
msgid "The port for the watcher API server"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/api/app.py:36
|
||||
#: watcher/api/app.py:34
|
||||
msgid "The listen IP for the watcher API server"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/api/app.py:39
|
||||
#: 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:43
|
||||
#: 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:50
|
||||
#: 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 "
|
||||
@ -70,10 +70,21 @@ msgstr ""
|
||||
msgid "State transition not allowed: (%(initial_state)s -> %(new_state)s)"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/api/controllers/v1/audit.py:365
|
||||
#: watcher/api/controllers/v1/audit.py:362
|
||||
msgid "The audit template UUID or name specified is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/api/controllers/v1/audit_template.py:138
|
||||
#, 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:160
|
||||
msgid "Cannot remove 'goal_uuid' attribute from an audit template"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/api/controllers/v1/types.py:123
|
||||
#, python-format
|
||||
msgid "%s is not JSON serializable"
|
||||
@ -175,9 +186,14 @@ msgstr ""
|
||||
msgid "serving on http://%(host)s:%(port)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/cmd/applier.py:39 watcher/cmd/decisionengine.py:40
|
||||
#: watcher/cmd/applier.py:41
|
||||
#, python-format
|
||||
msgid "Starting server in PID %s"
|
||||
msgid "Starting Watcher Applier service in PID %s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/cmd/decisionengine.py:42
|
||||
#, python-format
|
||||
msgid "Starting Watcher Decision Engine service in PID %s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/clients.py:29
|
||||
@ -241,174 +257,204 @@ msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:150
|
||||
#, python-format
|
||||
msgid "Expected an uuid or int but received %(identity)s"
|
||||
msgid "Expected a uuid or int but received %(identity)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:154
|
||||
#, python-format
|
||||
msgid "Goal %(goal)s is not defined in Watcher configuration file"
|
||||
msgid "Goal %(goal)s is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:158
|
||||
#, python-format
|
||||
msgid "Expected a uuid but received %(uuid)s"
|
||||
msgid "Strategy %(strategy)s is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:162
|
||||
#, python-format
|
||||
msgid "Expected a logical name but received %(name)s"
|
||||
msgid "Expected a uuid but received %(uuid)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:166
|
||||
#, python-format
|
||||
msgid "Expected a logical name or uuid but received %(name)s"
|
||||
msgid "Expected a logical name but received %(name)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:170
|
||||
#, python-format
|
||||
msgid "AuditTemplate %(audit_template)s could not be found"
|
||||
msgid "Expected a logical name or uuid but received %(name)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:174
|
||||
#, python-format
|
||||
msgid "An audit_template with UUID %(uuid)s or name %(name)s already exists"
|
||||
msgid "Goal %(goal)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:179
|
||||
#: watcher/common/exception.py:178
|
||||
#, python-format
|
||||
msgid "A goal with UUID %(uuid)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:182
|
||||
#, python-format
|
||||
msgid "Strategy %(strategy)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:186
|
||||
#, python-format
|
||||
msgid "A strategy with UUID %(uuid)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:190
|
||||
#, python-format
|
||||
msgid "AuditTemplate %(audit_template)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:194
|
||||
#, python-format
|
||||
msgid "An audit_template with UUID or name %(audit_template)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:199
|
||||
#, python-format
|
||||
msgid "AuditTemplate %(audit_template)s is referenced by one or multiple audit"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:184
|
||||
#: watcher/common/exception.py:204
|
||||
#, python-format
|
||||
msgid "Audit type %(audit_type)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:188
|
||||
#: watcher/common/exception.py:208
|
||||
#, python-format
|
||||
msgid "Audit %(audit)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:192
|
||||
#: watcher/common/exception.py:212
|
||||
#, python-format
|
||||
msgid "An audit with UUID %(uuid)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:196
|
||||
#: watcher/common/exception.py:216
|
||||
#, python-format
|
||||
msgid "Audit %(audit)s is referenced by one or multiple action plans"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:201
|
||||
#: watcher/common/exception.py:221
|
||||
#, python-format
|
||||
msgid "ActionPlan %(action_plan)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:205
|
||||
#: watcher/common/exception.py:225
|
||||
#, python-format
|
||||
msgid "An action plan with UUID %(uuid)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:209
|
||||
#: watcher/common/exception.py:229
|
||||
#, python-format
|
||||
msgid "Action Plan %(action_plan)s is referenced by one or multiple actions"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:214
|
||||
#: watcher/common/exception.py:234
|
||||
#, python-format
|
||||
msgid "Action %(action)s could not be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:218
|
||||
#: watcher/common/exception.py:238
|
||||
#, python-format
|
||||
msgid "An action with UUID %(uuid)s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:222
|
||||
#: watcher/common/exception.py:242
|
||||
#, python-format
|
||||
msgid "Action plan %(action_plan)s is referenced by one or multiple goals"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:227
|
||||
#: watcher/common/exception.py:247
|
||||
msgid "Filtering actions on both audit and action-plan is prohibited"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:236
|
||||
#: watcher/common/exception.py:256
|
||||
#, python-format
|
||||
msgid "Couldn't apply patch '%(patch)s'. Reason: %(reason)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:242
|
||||
#: watcher/common/exception.py:262
|
||||
#, python-format
|
||||
msgid "Workflow execution error: %(error)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:246
|
||||
#: watcher/common/exception.py:266
|
||||
msgid "Illegal argument"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:250
|
||||
#: watcher/common/exception.py:270
|
||||
msgid "No such metric"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:254
|
||||
#: watcher/common/exception.py:274
|
||||
msgid "No rows were returned"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:258
|
||||
#: watcher/common/exception.py:278
|
||||
#, python-format
|
||||
msgid "%(client)s connection failed. Reason: %(reason)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:262
|
||||
#: watcher/common/exception.py:282
|
||||
msgid "'Keystone API endpoint is missing''"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:266
|
||||
#: watcher/common/exception.py:286
|
||||
msgid "The list of hypervisor(s) in the cluster is empty"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:270
|
||||
#: watcher/common/exception.py:290
|
||||
msgid "The metrics resource collector is not defined"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:274
|
||||
msgid "the cluster state is not defined"
|
||||
#: watcher/common/exception.py:294
|
||||
msgid "The cluster state is not defined"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:280
|
||||
#: watcher/common/exception.py:298
|
||||
#, python-format
|
||||
msgid "No strategy could be found to achieve the '%(goal)s' goal."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:304
|
||||
#, python-format
|
||||
msgid "The instance '%(name)s' is not found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:284
|
||||
#: watcher/common/exception.py:308
|
||||
msgid "The hypervisor is not found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:288
|
||||
#: watcher/common/exception.py:312
|
||||
#, python-format
|
||||
msgid "Error loading plugin '%(name)s'"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:292
|
||||
#: watcher/common/exception.py:316
|
||||
#, python-format
|
||||
msgid "The identifier '%(name)s' is a reserved word"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:296
|
||||
#: watcher/common/exception.py:320
|
||||
#, python-format
|
||||
msgid "The %(name)s resource %(id)s is not soft deleted"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/exception.py:300
|
||||
#: watcher/common/exception.py:324
|
||||
msgid "Limit should be positive"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/service.py:36
|
||||
#: watcher/common/service.py:40
|
||||
msgid "Seconds between running periodic tasks."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/common/service.py:39
|
||||
#: watcher/common/service.py:43
|
||||
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 "
|
||||
@ -432,101 +478,111 @@ msgid "Messaging configuration error"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:50
|
||||
msgid "Audit Templates"
|
||||
msgid "Goals"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:51
|
||||
msgid "Audits"
|
||||
msgid "Strategies"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:52
|
||||
msgid "Action Plans"
|
||||
msgid "Audit Templates"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:53
|
||||
msgid "Audits"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:54
|
||||
msgid "Action Plans"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:55
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:100
|
||||
#: watcher/db/purge.py:102
|
||||
msgid "Total"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:158
|
||||
#: watcher/db/purge.py:160
|
||||
msgid "Audit Template"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:206
|
||||
#: watcher/db/purge.py:227
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Orphans found:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:265
|
||||
#: watcher/db/purge.py:306
|
||||
#, python-format
|
||||
msgid "There are %(count)d objects set for deletion. Continue? [y/N]"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:272
|
||||
#: watcher/db/purge.py:313
|
||||
#, 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:277
|
||||
#: watcher/db/purge.py:318
|
||||
msgid "Do you want to delete objects up to the specified maximum number? [y/N]"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:340
|
||||
#: watcher/db/purge.py:408
|
||||
msgid "Deleting..."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:346
|
||||
#: watcher/db/purge.py:414
|
||||
msgid "Starting purge command"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:356
|
||||
#: watcher/db/purge.py:424
|
||||
msgid " (orphans excluded)"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:357
|
||||
#: watcher/db/purge.py:425
|
||||
msgid " (may include orphans)"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:360 watcher/db/purge.py:361
|
||||
#: watcher/db/purge.py:428 watcher/db/purge.py:429
|
||||
#, python-format
|
||||
msgid "Purge results summary%s:"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:364
|
||||
#: watcher/db/purge.py:432
|
||||
#, python-format
|
||||
msgid "Here below is a table containing the objects that can be purged%s:"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/purge.py:369
|
||||
#: watcher/db/purge.py:437
|
||||
msgid "Purge process completed"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:361
|
||||
msgid ""
|
||||
"Multiple audit templates exist with the same name. Please use the audit "
|
||||
"template uuid instead"
|
||||
#: watcher/db/sqlalchemy/api.py:443
|
||||
msgid "Cannot overwrite UUID for an existing Goal."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:383
|
||||
#: watcher/db/sqlalchemy/api.py:509
|
||||
msgid "Cannot overwrite UUID for an existing Strategy."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:586
|
||||
msgid "Cannot overwrite UUID for an existing Audit Template."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:494
|
||||
#: watcher/db/sqlalchemy/api.py:683
|
||||
msgid "Cannot overwrite UUID for an existing Audit."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:587
|
||||
#: watcher/db/sqlalchemy/api.py:778
|
||||
msgid "Cannot overwrite UUID for an existing Action."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/db/sqlalchemy/api.py:698
|
||||
#: watcher/db/sqlalchemy/api.py:891
|
||||
msgid "Cannot overwrite UUID for an existing Action Plan."
|
||||
msgstr ""
|
||||
|
||||
@ -536,6 +592,63 @@ msgid ""
|
||||
"instead"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:94
|
||||
#, python-format
|
||||
msgid "Goal %s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:103
|
||||
#, python-format
|
||||
msgid "Strategy %s already exists"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:125
|
||||
#, python-format
|
||||
msgid "Goal %s created"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:154
|
||||
#, python-format
|
||||
msgid "Strategy %s created"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:180
|
||||
#, python-format
|
||||
msgid "Audit Template '%s' synced"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:225
|
||||
#, python-format
|
||||
msgid "Audit Template '%(audit_template)s' references a goal that does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:240
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Audit Template '%(audit_template)s' references a strategy that does not "
|
||||
"exist"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:279
|
||||
#, python-format
|
||||
msgid "Goal %s unchanged"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:281
|
||||
#, python-format
|
||||
msgid "Goal %s modified"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:295
|
||||
#, python-format
|
||||
msgid "Strategy %s unchanged"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/sync.py:297
|
||||
#, python-format
|
||||
msgid "Strategy %s modified"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/model/model_root.py:33
|
||||
#: watcher/decision_engine/model/model_root.py:38
|
||||
msgid "'obj' argument type is not valid"
|
||||
@ -545,59 +658,91 @@ msgstr ""
|
||||
msgid "The action plan is empty"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/selection/default.py:60
|
||||
#: watcher/decision_engine/strategy/selection/default.py:74
|
||||
#, python-format
|
||||
msgid "Incorrect mapping: could not find associated strategy for '%s'"
|
||||
msgid "Could not load any strategy for goal %(goal)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:288
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:335
|
||||
#: watcher/decision_engine/strategy/strategies/base.py:165
|
||||
msgid "Dummy goal"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/base.py:188
|
||||
msgid "Unclassified"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/base.py:204
|
||||
msgid "Server consolidation"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/base.py:220
|
||||
msgid "Thermal optimization"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:119
|
||||
msgid "Basic offline consolidation"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:296
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:343
|
||||
#, python-format
|
||||
msgid "No values returned by %(resource_id)s for %(metric_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:448
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:456
|
||||
msgid "Initializing Sercon Consolidation"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:492
|
||||
#: watcher/decision_engine/strategy/strategies/basic_consolidation.py:500
|
||||
msgid "The workloads of the compute nodes of the cluster is zero"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:147
|
||||
#: watcher/decision_engine/strategy/strategies/dummy_strategy.py:74
|
||||
msgid "Dummy strategy"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:102
|
||||
msgid "Outlet temperature based strategy"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:156
|
||||
#, python-format
|
||||
msgid "%s: no outlet temp data"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:172
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:181
|
||||
#, python-format
|
||||
msgid "VM not active, skipped: %s"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:230
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:239
|
||||
msgid "No hosts under outlet temp threshold found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:253
|
||||
#: watcher/decision_engine/strategy/strategies/outlet_temp_control.py:262
|
||||
msgid "No proper target host could be found"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:105
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:100
|
||||
msgid "VM Workload Consolidation Strategy"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:128
|
||||
#, python-format
|
||||
msgid "Unexpexted resource state type, state=%(state)s, state_type=%(st)s."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:157
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:180
|
||||
#, python-format
|
||||
msgid "Cannot live migrate: vm_uuid=%(vm_uuid)s, state=%(vm_state)s."
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:241
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:264
|
||||
#, python-format
|
||||
msgid "No values returned by %(resource_id)s for memory.usage or disk.root.size"
|
||||
msgstr ""
|
||||
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:490
|
||||
#: watcher/decision_engine/strategy/strategies/vm_workload_consolidation.py:515
|
||||
msgid "Executing Smart Strategy"
|
||||
msgstr ""
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user