foreman-tasks 2.0.0 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/js_tests.yml +31 -0
  3. data/.github/workflows/ruby_tests.yml +74 -0
  4. data/.rubocop.yml +12 -4
  5. data/.rubocop_todo.yml +32 -25
  6. data/Gemfile +5 -0
  7. data/app/controllers/foreman_tasks/api/tasks_controller.rb +36 -60
  8. data/app/controllers/foreman_tasks/concerns/parameters/triggering.rb +1 -1
  9. data/app/controllers/foreman_tasks/recurring_logics_controller.rb +7 -0
  10. data/app/controllers/foreman_tasks/tasks_controller.rb +6 -3
  11. data/app/helpers/foreman_tasks/foreman_tasks_helper.rb +3 -3
  12. data/app/lib/actions/proxy_action.rb +1 -1
  13. data/app/models/foreman_tasks/recurring_logic.rb +1 -1
  14. data/app/models/foreman_tasks/task.rb +11 -0
  15. data/app/models/foreman_tasks/task/dynflow_task.rb +29 -33
  16. data/app/models/foreman_tasks/task/status_explicator.rb +1 -1
  17. data/app/models/foreman_tasks/triggering.rb +1 -1
  18. data/app/models/setting/foreman_tasks.rb +9 -9
  19. data/app/services/foreman_tasks/dashboard_table_filter.rb +5 -1
  20. data/app/views/foreman_tasks/api/tasks/index.json.rabl +2 -0
  21. data/app/views/foreman_tasks/api/tasks/show.json.rabl +2 -0
  22. data/app/views/foreman_tasks/layouts/react.html.erb +1 -2
  23. data/app/views/foreman_tasks/recurring_logics/index.html.erb +3 -1
  24. data/app/views/foreman_tasks/tasks/show.html.erb +1 -6
  25. data/config/routes.rb +2 -1
  26. data/db/migrate/20200517215015_rename_bookmarks_controller.rb +2 -2
  27. data/db/migrate/20200611090846_add_task_lock_index_on_resource_type_and_task_id.rb +9 -0
  28. data/db/seeds.d/30-notification_blueprints.rb +7 -7
  29. data/db/seeds.d/61-foreman_tasks_bookmarks.rb +1 -1
  30. data/foreman-tasks.gemspec +1 -0
  31. data/lib/foreman_tasks/cleaner.rb +4 -6
  32. data/lib/foreman_tasks/dynflow/configuration.rb +1 -1
  33. data/lib/foreman_tasks/dynflow/persistence.rb +4 -6
  34. data/lib/foreman_tasks/engine.rb +2 -7
  35. data/lib/foreman_tasks/tasks/cleanup.rake +2 -2
  36. data/lib/foreman_tasks/tasks/dynflow.rake +6 -0
  37. data/lib/foreman_tasks/tasks/export_tasks.rake +1 -1
  38. data/lib/foreman_tasks/version.rb +1 -1
  39. data/locale/en/LC_MESSAGES/foreman_tasks.mo +0 -0
  40. data/locale/en/foreman_tasks.po +50 -20
  41. data/locale/foreman_tasks.pot +173 -126
  42. data/locale/fr/LC_MESSAGES/foreman_tasks.mo +0 -0
  43. data/locale/fr/foreman_tasks.po +817 -0
  44. data/locale/ja/LC_MESSAGES/foreman_tasks.mo +0 -0
  45. data/locale/ja/foreman_tasks.po +817 -0
  46. data/locale/zh_CN/LC_MESSAGES/foreman_tasks.mo +0 -0
  47. data/locale/zh_CN/foreman_tasks.po +816 -0
  48. data/package.json +1 -1
  49. data/script/npm_link_foreman_js.sh +26 -0
  50. data/test/controllers/api/recurring_logics_controller_test.rb +1 -1
  51. data/test/controllers/api/tasks_controller_test.rb +17 -7
  52. data/test/controllers/tasks_controller_test.rb +6 -6
  53. data/test/core/unit/runner_test.rb +20 -20
  54. data/test/core/unit/task_launcher_test.rb +8 -8
  55. data/test/helpers/foreman_tasks/foreman_tasks_helper_test.rb +7 -7
  56. data/test/helpers/foreman_tasks/tasks_helper_test.rb +3 -3
  57. data/test/lib/actions/middleware/keep_current_request_id_test.rb +3 -3
  58. data/test/support/history_tasks_builder.rb +1 -1
  59. data/test/tasks/generate_task_actions_test.rb +1 -1
  60. data/test/unit/actions/action_with_sub_plans_test.rb +2 -2
  61. data/test/unit/actions/bulk_action_test.rb +6 -6
  62. data/test/unit/actions/proxy_action_test.rb +20 -20
  63. data/test/unit/actions/recurring_action_test.rb +30 -32
  64. data/test/unit/cleaner_test.rb +24 -24
  65. data/test/unit/dashboard_table_filter_test.rb +5 -5
  66. data/test/unit/otp_manager_test.rb +2 -2
  67. data/test/unit/proxy_selector_test.rb +9 -9
  68. data/test/unit/recurring_logic_test.rb +32 -32
  69. data/test/unit/remote_task_test.rb +2 -2
  70. data/test/unit/task_groups_test.rb +4 -4
  71. data/test/unit/task_test.rb +18 -18
  72. data/test/unit/triggering_test.rb +8 -8
  73. data/test/unit/troubleshooting_help_generator_test.rb +6 -6
  74. data/test/unit/ui_notifications_test.rb +11 -11
  75. data/webpack/ForemanTasks/Components/TaskActions/TaskAction.test.js +2 -2
  76. data/webpack/ForemanTasks/Components/TaskActions/index.js +1 -1
  77. data/webpack/ForemanTasks/Components/TaskDetails/Components/RunningSteps.js +17 -3
  78. data/webpack/ForemanTasks/Components/TaskDetails/Components/Task.js +8 -153
  79. data/webpack/ForemanTasks/Components/TaskDetails/Components/TaskButtons.js +168 -0
  80. data/webpack/ForemanTasks/Components/TaskDetails/Components/TaskInfo.js +6 -7
  81. data/webpack/ForemanTasks/Components/TaskDetails/Components/TaskSkeleton.js +48 -0
  82. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/RunningSteps.test.js +8 -1
  83. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/Task.test.js +13 -70
  84. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/TaskButtons.test.js +95 -0
  85. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/RunningSteps.test.js.snap +1 -1
  86. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/Task.test.js.snap +78 -208
  87. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/TaskButtons.test.js.snap +212 -0
  88. data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/TaskInfo.test.js.snap +8 -4
  89. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetails.js +100 -53
  90. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetails.scss +13 -14
  91. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetailsActions.js +57 -95
  92. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetailsConstants.js +3 -12
  93. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetailsSelectors.js +57 -28
  94. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/TaskDetails.fixtures.js +8 -0
  95. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/TaskDetails.test.js +8 -1
  96. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/TaskDetailsActions.test.js +6 -6
  97. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/__snapshots__/TaskDetails.test.js.snap +84 -12
  98. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/__snapshots__/TaskDetailsActions.test.js.snap +25 -21
  99. data/webpack/ForemanTasks/Components/TaskDetails/index.js +8 -3
  100. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/ScheduledTasksCard/ScheduledTasksCard.scss +4 -0
  101. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/OtherInfo.js +53 -0
  102. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/OtherInfo.test.js +14 -0
  103. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.js +27 -19
  104. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.scss +14 -0
  105. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCard.test.js +1 -34
  106. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/{StoppedTasksCardHelper.js → StoppedTasksCardTable.js} +28 -1
  107. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/StoppedTasksCardTable.test.js +54 -0
  108. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/OtherInfo.test.js.snap +48 -0
  109. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/StoppedTasksCard.test.js.snap +60 -1367
  110. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/Components/StoppedTasksCard/__snapshots__/StoppedTasksCardTable.test.js.snap +960 -0
  111. data/webpack/ForemanTasks/Components/TasksDashboard/Components/TasksCardsGrid/__snapshots__/TasksCardsGrid.test.js.snap +14 -11
  112. data/webpack/ForemanTasks/Components/TasksDashboard/TasksDashboardActions.js +1 -1
  113. data/webpack/ForemanTasks/Components/TasksDashboard/TasksDashboardConstants.js +2 -0
  114. data/webpack/ForemanTasks/Components/TasksDashboard/TasksDashboardSelectors.js +17 -11
  115. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/TasksDashboardActions.test.js +2 -2
  116. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/TasksDashboardSelectors.test.js +26 -14
  117. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/__snapshots__/TasksDashboard.test.js.snap +14 -11
  118. data/webpack/ForemanTasks/Components/TasksDashboard/__tests__/__snapshots__/TasksDashboardSelectors.test.js.snap +38 -22
  119. data/webpack/ForemanTasks/Components/TasksTable/Components/ConfirmModal/ConfirmModalSelectors.js +1 -0
  120. data/webpack/ForemanTasks/Components/TasksTable/Components/ConfirmModal/__test__/ConfirmModalSelectors.test.js +1 -0
  121. data/webpack/ForemanTasks/Components/TasksTable/Components/ConfirmModal/__test__/__snapshots__/ConfirmModalSelectors.test.js.snap +2 -0
  122. data/webpack/ForemanTasks/Components/TasksTable/TasksBulkActions.js +25 -8
  123. data/webpack/ForemanTasks/Components/TasksTable/TasksTableActions.js +3 -3
  124. data/webpack/ForemanTasks/Components/TasksTable/TasksTablePage.js +6 -3
  125. data/webpack/ForemanTasks/Components/TasksTable/TasksTablePage.scss +0 -10
  126. data/webpack/ForemanTasks/Components/TasksTable/TasksTableSelectors.js +1 -0
  127. data/webpack/ForemanTasks/Components/TasksTable/__tests__/TasksBulkActions.test.js +15 -2
  128. data/webpack/ForemanTasks/Components/TasksTable/__tests__/TasksTable.fixtures.js +1 -0
  129. data/webpack/ForemanTasks/Components/TasksTable/__tests__/TasksTablePage.test.js +2 -1
  130. data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/SubTasksPage.test.js.snap +1 -0
  131. data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/TasksBulkActions.test.js.snap +48 -0
  132. data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/TasksIndexPage.test.js.snap +1 -0
  133. data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/TasksTablePage.test.js.snap +39 -7
  134. data/webpack/ForemanTasks/Components/TasksTable/formatters/__test__/__snapshots__/actionCellFormatter.test.js.snap +1 -0
  135. data/webpack/ForemanTasks/Components/TasksTable/formatters/__test__/__snapshots__/selectionCellFormatter.test.js.snap +2 -0
  136. data/webpack/ForemanTasks/Components/TasksTable/formatters/__test__/actionCellFormatter.test.js +1 -1
  137. data/webpack/ForemanTasks/Components/TasksTable/formatters/__test__/selectionCellFormatter.test.js +1 -1
  138. data/webpack/ForemanTasks/Components/TasksTable/formatters/actionCellFormatter.js +10 -7
  139. data/webpack/ForemanTasks/Components/TasksTable/formatters/selectionCellFormatter.js +7 -0
  140. data/webpack/ForemanTasks/Components/common/ActionButtons/ActionButton.js +39 -31
  141. data/webpack/ForemanTasks/Components/common/ActionButtons/ActionButton.test.js +17 -8
  142. data/webpack/ForemanTasks/Components/common/ActionButtons/__snapshots__/ActionButton.test.js.snap +8 -0
  143. data/webpack/ForemanTasks/Components/common/urlHelpers.js +7 -0
  144. data/webpack/ForemanTasks/ForemanTasksReducers.js +0 -2
  145. data/webpack/__mocks__/foremanReact/common/helpers.js +2 -0
  146. data/webpack/__mocks__/foremanReact/redux/API/APISelectors.js +10 -0
  147. data/webpack/__mocks__/foremanReact/redux/API/index.js +10 -0
  148. data/webpack/__mocks__/foremanReact/redux/middlewares/IntervalMiddleware.js +5 -0
  149. metadata +35 -17
  150. data/.travis.yml +0 -5
  151. data/app/assets/stylesheets/foreman_tasks/tasks.scss +0 -9
  152. data/script/travis_run_js_tests.sh +0 -7
  153. data/webpack/ForemanTasks/Components/TaskDetails/TaskDetailsReducer.js +0 -38
  154. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/TaskDetailsReducer.test.js +0 -33
  155. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/__snapshots__/TaskDetailsReducer.test.js.snap +0 -26
  156. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/__snapshots__/integration.test.js.snap +0 -122
  157. data/webpack/ForemanTasks/Components/TaskDetails/__tests__/integration.test.js +0 -67
  158. data/webpack/__mocks__/foremanReact/API.js +0 -7
@@ -0,0 +1,816 @@
1
+ # SOME DESCRIPTIVE TITLE.
2
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
+ # This file is distributed under the same license as the foreman_tasks package.
4
+ #
5
+ # Translators:
6
+ msgid ""
7
+ msgstr ""
8
+ "Project-Id-Version: foreman_tasks 0.3.4\n"
9
+ "Report-Msgid-Bugs-To: \n"
10
+ "PO-Revision-Date: 2020-06-22 15:13+0000\n"
11
+ "Last-Translator: Amit Upadhye <aupadhye@redhat.com>\n"
12
+ "Language-Team: Chinese (China) (http://www.transifex.com/foreman/foreman/langu"
13
+ "age/zh_CN/)\n"
14
+ "MIME-Version: 1.0\n"
15
+ "Content-Type: text/plain; charset=UTF-8\n"
16
+ "Content-Transfer-Encoding: 8bit\n"
17
+ "Language: zh_CN\n"
18
+ "Plural-Forms: nplurals=1; plural=0;\n"
19
+
20
+ msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
21
+ msgstr "${taskReload ? 'Stop' : 'Start'} 自动重新加载"
22
+
23
+ msgid "%(last)s Last %(time)s"
24
+ msgstr "%(last)s 最近 %(time)s"
25
+
26
+ msgid "%(older)s Older %(time)s"
27
+ msgstr "%(older)s 较老 %(time)s"
28
+
29
+ msgid "%s Selected Tasks"
30
+ msgstr ""
31
+
32
+ msgid "%s is not valid format of cron line"
33
+ msgstr "%s 不是 cron 行的正確格式"
34
+
35
+ msgid "%{total} task(s), %{success} success, %{failed} fail"
36
+ msgstr "%{total} 任務,%{success} 成功,%{failed} 失敗"
37
+
38
+ msgid "%{value} is not allowed input type"
39
+ msgstr "%{value} 並非允許的輸入類型"
40
+
41
+ msgid "%{value} is not allowed triggering mode"
42
+ msgstr "%{value} 並不允許觸發模式"
43
+
44
+ msgid "%{value} is wrong format"
45
+ msgstr "%{value} 的格式錯誤"
46
+
47
+ msgid "12h"
48
+ msgstr "12h"
49
+
50
+ msgid "24h"
51
+ msgstr "24h"
52
+
53
+ msgid ":after setting in tasks cleanup section is deprecated, use :after in :rules section to set the value. to cleanup rules"
54
+ msgstr ":在任务清理部分中的设置弃用之后,使用 :after in : 规则部分来将值.设置为清理规则"
55
+
56
+ msgid "A paused task represents a process that has not finished properly. Any task in paused state can lead to potential inconsistency and needs to be resolved."
57
+ msgstr "暂停的任务代表未正确完成的进程。任何处于暂停状态的任务都可能导致潜在的不一致,需要被解决。"
58
+
59
+ msgid "Action"
60
+ msgstr "行动"
61
+
62
+ msgid "Action with sub plans"
63
+ msgstr "有子計畫的動作"
64
+
65
+ msgid "Active"
66
+ msgstr "活性"
67
+
68
+ msgid "Active Filters:"
69
+ msgstr "活跃的过滤器:"
70
+
71
+ msgid "All %s tasks are selected. "
72
+ msgstr "已选择所有%s任务。 "
73
+
74
+ msgid "All proxies with the required feature are unavailable at the moment"
75
+ msgstr "具备所需功能的所有代理暂时都不可用"
76
+
77
+ msgid "Allow triggering tasks on the smart proxy in batches"
78
+ msgstr "允许批量触发智能代理上的任务"
79
+
80
+ msgid "Associated resources"
81
+ msgstr "相聯資源"
82
+
83
+ #. TRANSLATORS: Time widget for when a task should start
84
+ msgid "At"
85
+ msgstr "位于"
86
+
87
+ msgid "Back to tasks"
88
+ msgstr "返回到任务"
89
+
90
+ msgid "Backtrace"
91
+ msgstr "追蹤"
92
+
93
+ msgid "Bulk action"
94
+ msgstr "批次動作"
95
+
96
+ msgid "Cancel"
97
+ msgstr "取消"
98
+
99
+ msgid "Cancel Selected"
100
+ msgstr "取消选择"
101
+
102
+ msgid "Cancel all cancellable tasks"
103
+ msgstr "取消所有可取消的任务"
104
+
105
+ msgid "Cancel enforced: the task might be still running on the proxy"
106
+ msgstr "強制取消:任務可能還在代理伺服器上執行"
107
+
108
+ msgid "Cancel recurring logic"
109
+ msgstr "取消週期邏輯"
110
+
111
+ msgid "Cancel selected tasks"
112
+ msgstr "取消选择的任务"
113
+
114
+ msgid "Cancel specific tasks by ID"
115
+ msgstr "取消通过 ID 指定的特定任务"
116
+
117
+ msgid "Cancel tasks matching search string"
118
+ msgstr "取消与搜索字符串匹配的任务"
119
+
120
+ msgid "Canceling selected tasks, this might take a while"
121
+ msgstr "取消所选任务,这可能需要一段时间"
122
+
123
+ msgid "Canceling with force selected tasks, this might take a while"
124
+ msgstr ""
125
+
126
+ msgid "Cancelled"
127
+ msgstr "已取消"
128
+
129
+ msgid "Cannot cancel tasks at the moment"
130
+ msgstr "目前无法取消任务"
131
+
132
+ msgid "Cannot force cancel tasks at the moment"
133
+ msgstr ""
134
+
135
+ msgid "Cannot resume tasks at the moment"
136
+ msgstr "目前无法恢复任务"
137
+
138
+ msgid "Cannot update a cancelled Recurring Logic."
139
+ msgstr "无法更新一个已取消的周期性逻辑"
140
+
141
+ msgid "Changing request id %{request_id} to saved id %{saved_id}"
142
+ msgstr "将请求 id %{request_id} 改为保存的 id %{saved_id}"
143
+
144
+ msgid "Clear All Filters"
145
+ msgstr "清除所有过滤器"
146
+
147
+ msgid "Clear Cancelled"
148
+ msgstr "清除取消"
149
+
150
+ msgid "Complete"
151
+ msgstr "完成"
152
+
153
+ msgid "Conflicts with tasks:"
154
+ msgstr "与任务冲突 :"
155
+
156
+ msgid "Could not cancel step."
157
+ msgstr ""
158
+
159
+ msgid "Could not receive data: ${error && error.message}"
160
+ msgstr "无法接收数据: ${error && error.message}"
161
+
162
+ msgid "Cron line"
163
+ msgstr "Cron 行"
164
+
165
+ msgid "Cron line format 'a b c d e', where: %s"
166
+ msgstr "Cron 行格式 'a b c d e',其中:%s"
167
+
168
+ msgid "Current iteration"
169
+ msgstr "現有重述"
170
+
171
+ msgid "Data to be sent to the action"
172
+ msgstr "要發送到動作的資料"
173
+
174
+ msgid "Days"
175
+ msgstr "天"
176
+
177
+ msgid "Days of week"
178
+ msgstr "星期幾"
179
+
180
+ msgid "Delayed"
181
+ msgstr "已延遲"
182
+
183
+ msgid "Delete recurring logics by search query"
184
+ msgstr "通过搜索查询删除重复逻辑"
185
+
186
+ msgid "Details"
187
+ msgstr "细节"
188
+
189
+ msgid "Details of %s task"
190
+ msgstr "%s 任务的详细信息"
191
+
192
+ msgid "Disable"
193
+ msgstr "禁用"
194
+
195
+ msgid "Disabled"
196
+ msgstr "残"
197
+
198
+ msgid "Duration"
199
+ msgstr "Duration"
200
+
201
+ msgid "Dynflow console"
202
+ msgstr "Dynflow 主控台"
203
+
204
+ msgid "Empty bulk action"
205
+ msgstr "清空批次動作"
206
+
207
+ msgid "Enable"
208
+ msgstr "启用"
209
+
210
+ msgid "Enable the dynflow console (/foreman_tasks/dynflow) for debugging"
211
+ msgstr "啟用 dynflow 主控台(/foreman_tasks/dynflow)作為偵錯使用"
212
+
213
+ msgid "Ends"
214
+ msgstr "完"
215
+
216
+ msgid "Ends at"
217
+ msgstr "結束於"
218
+
219
+ msgid "Errors"
220
+ msgstr "错误"
221
+
222
+ msgid "Errors:"
223
+ msgstr "错误:"
224
+
225
+ msgid "Event delivered by request %{request_id}"
226
+ msgstr "由请求 %{request_id} 发送的事件"
227
+
228
+ msgid "Exception"
229
+ msgstr "例外"
230
+
231
+ msgid "Execute now"
232
+ msgstr "立即執行"
233
+
234
+ msgid "Execution plan data not available "
235
+ msgstr "未可用执行计划数据"
236
+
237
+ msgid "Export All"
238
+ msgstr "导出所有"
239
+
240
+ msgid "External Id"
241
+ msgstr "外部 Id"
242
+
243
+ msgid "Failed to check on tasks on proxy at %{url}: %{exception}"
244
+ msgstr "无法检查在 %{url} 代理中的任务: %{exception}"
245
+
246
+ msgid "Failed to initialize"
247
+ msgstr "無法初始化"
248
+
249
+ msgid "Field to sort the results on"
250
+ msgstr "用來排序結果的欄位"
251
+
252
+ msgid "Finished"
253
+ msgstr "完成"
254
+
255
+ msgid "Force Cancel"
256
+ msgstr ""
257
+
258
+ msgid "Force Cancel Selected"
259
+ msgstr ""
260
+
261
+ msgid "Force Cancel selected tasks"
262
+ msgstr ""
263
+
264
+ msgid "Force Unlock"
265
+ msgstr "強制解除鎖定"
266
+
267
+ msgid "Foreman Tasks"
268
+ msgstr "Foreman 任务"
269
+
270
+ msgid "Fri"
271
+ msgstr "周五"
272
+
273
+ msgid "Hash version of 'order' param"
274
+ msgstr "「order」參數的雜湊版本"
275
+
276
+ msgid "How to order the sorted results (e.g. ASC for ascending)"
277
+ msgstr "如何排序結果的順序(比方說 ASC 從下到上)"
278
+
279
+ msgid "ID"
280
+ msgstr "ID"
281
+
282
+ msgid "Id"
283
+ msgstr "ID"
284
+
285
+ msgid "Immediate"
286
+ msgstr "立即"
287
+
288
+ msgid "Import Puppet classes"
289
+ msgstr "匯入 Puppet 類別"
290
+
291
+ msgid "Import facts"
292
+ msgstr "匯入詳情"
293
+
294
+ msgid "Indicates that the action should be cancelled if it cannot be started before this time."
295
+ msgstr "這表示如果不能在這時間之前開始,就應該取消動作。"
296
+
297
+ msgid "Initialization error: %s"
298
+ msgstr "初始化錯誤:%s"
299
+
300
+ msgid "Input"
301
+ msgstr "输入"
302
+
303
+ msgid "Iteration limit"
304
+ msgstr "重述限制"
305
+
306
+ msgid "Label"
307
+ msgstr "標籤"
308
+
309
+ msgid "Last occurrence"
310
+ msgstr "最後一次發生"
311
+
312
+ msgid "Last start time"
313
+ msgstr "最后的开始时间"
314
+
315
+ msgid "Latest Warning/Error Tasks"
316
+ msgstr "最新的警告 / 錯誤任務"
317
+
318
+ msgid "Less than a second"
319
+ msgstr "不到一秒"
320
+
321
+ msgid "List of tasks"
322
+ msgstr "任务清单"
323
+
324
+ msgid "List recurring logics"
325
+ msgstr "列出週期邏輯"
326
+
327
+ msgid "List tasks"
328
+ msgstr "列出任務"
329
+
330
+ msgid "Locks"
331
+ msgstr "鎖"
332
+
333
+ msgid "Mon"
334
+ msgstr "周一"
335
+
336
+ msgid "More than"
337
+ msgstr "多于"
338
+
339
+ msgid "N/A"
340
+ msgstr "N / A"
341
+
342
+ msgid "Name"
343
+ msgstr "名稱"
344
+
345
+ msgid "Never"
346
+ msgstr "决不"
347
+
348
+ msgid "Next occurrence"
349
+ msgstr "下次發生"
350
+
351
+ msgid "No"
352
+ msgstr "没有"
353
+
354
+ msgid "No Tasks"
355
+ msgstr "没有任务"
356
+
357
+ msgid "No errors"
358
+ msgstr "無錯誤"
359
+
360
+ msgid "No proxy defined for execution"
361
+ msgstr "没有为执行定义代理"
362
+
363
+ msgid "No running steps"
364
+ msgstr "沒有執行步驟"
365
+
366
+ msgid "No start or end dates"
367
+ msgstr "没有开始或结束日期"
368
+
369
+ msgid "No task could be started"
370
+ msgstr "无法启动任何任务"
371
+
372
+ msgid "No. of Tasks"
373
+ msgstr "任務編號"
374
+
375
+ msgid "Not all the selected tasks can be cancelled"
376
+ msgstr "并非所有选定的任务都可以取消"
377
+
378
+ msgid "Not all the selected tasks can be resumed"
379
+ msgstr "并非所有选定的任务都可以恢复"
380
+
381
+ msgid "Number of attempts to start a task on the smart proxy before failing"
382
+ msgstr "在智慧代理上啟動任務的嘗試次數"
383
+
384
+ msgid "Number of results per page to return"
385
+ msgstr "每頁要傳回的結果數量"
386
+
387
+ msgid "Number of seconds to wait for synchronous task to finish."
388
+ msgstr "等待同步任务完成的秒数。"
389
+
390
+ msgid "Number of tasks which should be sent to the smart proxy in one request, if foreman_tasks_proxy_batch_trigger is enabled"
391
+ msgstr "如果启用了 foreman_tasks_proxy_batch_trigger,在一个请求中应发送到智能代理的任务数"
392
+
393
+ #. TRANSLATORS: Button text for saying when a task should end
394
+ msgid "On"
395
+ msgstr "上"
396
+
397
+ msgid "Operation"
398
+ msgstr "操作"
399
+
400
+ msgid "Output"
401
+ msgstr "输出"
402
+
403
+ msgid "Output:"
404
+ msgstr "输出:"
405
+
406
+ msgid "Page number, starting at 1"
407
+ msgstr "頁數,從 1 開始"
408
+
409
+ msgid "Parent task"
410
+ msgstr "父任務"
411
+
412
+ msgid "Paused"
413
+ msgstr "已暫停"
414
+
415
+ msgid "Please inspect their state, fix their errors and resume them."
416
+ msgstr "请检查其状态,纠正其错误,然后恢复它们。"
417
+
418
+ msgid "Please provide a search parameter in the request"
419
+ msgstr "请在请求中提供搜索参数"
420
+
421
+ msgid "Please provide at least one of search or task_ids parameters in the request"
422
+ msgstr "请在请求中至少提供 search 或 task_ids 参数之一"
423
+
424
+ msgid "Polling intervals multiplier"
425
+ msgstr "轮询间隔乘数"
426
+
427
+ msgid "Polling multiplier which is used to multiply the default polling intervals. This can be used to prevent polling too frequently for long running tasks."
428
+ msgstr "轮询乘数,用于乘以默认轮询间隔。这可用于防止对长时间运行的任务进行过于频繁的轮询。"
429
+
430
+ msgid "Proxy task gone missing from the smart proxy"
431
+ msgstr "代理任务在智能代理中丢失"
432
+
433
+ msgid "Raw"
434
+ msgstr "Raw"
435
+
436
+ msgid "Raw input"
437
+ msgstr "原始輸入"
438
+
439
+ msgid "Raw output"
440
+ msgstr "原始輸出"
441
+
442
+ msgid "Recurring Logics"
443
+ msgstr "重复逻辑"
444
+
445
+ msgid "Recurring logic"
446
+ msgstr "週期邏輯"
447
+
448
+ msgid "Recurring logics"
449
+ msgstr "週期邏輯"
450
+
451
+ msgid "Repeat N times"
452
+ msgstr "重複 N 次"
453
+
454
+ msgid "Repeat until"
455
+ msgstr "重複直到"
456
+
457
+ msgid "Repeats"
458
+ msgstr "重複"
459
+
460
+ msgid "Require user to be authenticated as user with admin rights when accessing dynflow console"
461
+ msgstr "存取 dynflow 主控台時,需要使用者授權成為擁有 admin 權限的使用者"
462
+
463
+ msgid "Required lock is already taken by other running tasks."
464
+ msgstr "所需的锁定已由其他正在运行的任务获取。"
465
+
466
+ msgid "Required lock: %s"
467
+ msgstr "所需的锁定 : %s"
468
+
469
+ msgid "Resource search_params requires resource_type and resource_id to be specified"
470
+ msgstr "資源 search_params 需要指定 resource_type 與 resource_id"
471
+
472
+ msgid "Result"
473
+ msgstr "结果"
474
+
475
+ msgid "Resume"
476
+ msgstr "恢复"
477
+
478
+ msgid "Resume Selected"
479
+ msgstr "继续选择"
480
+
481
+ msgid "Resume all paused error tasks"
482
+ msgstr "繼續所有處於暫停狀態的錯誤任務"
483
+
484
+ msgid "Resume selected tasks"
485
+ msgstr "恢复选择的任务"
486
+
487
+ msgid "Resume specific tasks by ID"
488
+ msgstr "透過 ID 繼續特定任務"
489
+
490
+ msgid "Resume tasks matching search string"
491
+ msgstr "繼續符合搜尋字串的任務"
492
+
493
+ msgid "Resuming selected tasks, this might take a while"
494
+ msgstr "恢复所选任务,这可能需要一段时间"
495
+
496
+ msgid "Running"
497
+ msgstr "執行中"
498
+
499
+ msgid "Running Steps"
500
+ msgstr "執行中的步驟"
501
+
502
+ msgid "Sat"
503
+ msgstr "週六"
504
+
505
+ msgid "Schedule"
506
+ msgstr "排程"
507
+
508
+ msgid "Schedule future execution"
509
+ msgstr "排程未來的執行"
510
+
511
+ msgid "Scheduled"
512
+ msgstr "调度的"
513
+
514
+ msgid "Search query"
515
+ msgstr "搜索查询"
516
+
517
+ msgid "Search string"
518
+ msgstr "搜尋字串"
519
+
520
+ msgid "See %{link} for more details on how to resolve the issue"
521
+ msgstr "有关如何解决此问题的更多详细信息,请参见%{link}"
522
+
523
+ msgid "Select Action"
524
+ msgstr "選擇動作"
525
+
526
+ msgid "Select All"
527
+ msgstr "选择所有"
528
+
529
+ msgid "Select row"
530
+ msgstr "选择行"
531
+
532
+ msgid "Send data to the task from external executor (such as smart_proxy_dynflow)"
533
+ msgstr "從外部執行者(例如 smart_proxy_dynflow)發送資料到任務"
534
+
535
+ msgid "Set up recurring execution"
536
+ msgstr "設定週期執行"
537
+
538
+ msgid "Show recurring logic details"
539
+ msgstr "顯示週期邏輯的詳情"
540
+
541
+ msgid "Sort field and order, e.g. 'name DESC'"
542
+ msgstr "排序欄位與次序,例如「name DESC」"
543
+
544
+ msgid "Start at"
545
+ msgstr "開始於"
546
+
547
+ msgid "Start before"
548
+ msgstr "在這之前開始"
549
+
550
+ msgid "Started"
551
+ msgstr "已启动"
552
+
553
+ msgid "Started at"
554
+ msgstr "起始於"
555
+
556
+ msgid "State"
557
+ msgstr "州"
558
+
559
+ msgid "Step Canceled"
560
+ msgstr ""
561
+
562
+ msgid "Stop all stoppable tasks"
563
+ msgstr ""
564
+
565
+ msgid "Stop specific tasks by ID"
566
+ msgstr ""
567
+
568
+ msgid "Stop tasks matching search string"
569
+ msgstr ""
570
+
571
+ msgid "Stopped"
572
+ msgstr "停止"
573
+
574
+ msgid "Sub tasks"
575
+ msgstr "子任務"
576
+
577
+ msgid "Sub tasks of %s"
578
+ msgstr "%s 的子任务"
579
+
580
+ msgid "Sun"
581
+ msgstr "周日"
582
+
583
+ msgid "Task"
584
+ msgstr "任務"
585
+
586
+ msgid "Task Details"
587
+ msgstr "工作詳細資料"
588
+
589
+ msgid "Task Status"
590
+ msgstr "任务状态"
591
+
592
+ msgid "Task aborted: the task might be still running on the proxy"
593
+ msgstr "被中止的任务:该任务可能仍在代理服务器中运行"
594
+
595
+ msgid "Task cannot be canceled"
596
+ msgstr ""
597
+
598
+ msgid "Task count"
599
+ msgstr "任务计数"
600
+
601
+ msgid "Task group common"
602
+ msgstr "任務群組的一般事項"
603
+
604
+ msgid "Task search_params requires task_id to be specified"
605
+ msgstr "任務 search_params 需要指定 task_id"
606
+
607
+ msgid "Task was canceled"
608
+ msgstr "任务已取消"
609
+
610
+ msgid "Tasks"
611
+ msgstr "任务"
612
+
613
+ msgid "The ID of the step inside the execution plan to send the event to"
614
+ msgstr "執行計畫中要發送事件的步驟 ID"
615
+
616
+ msgid "The recommended approach is to investigate the error messages below and in 'errors' tab, address the primary cause of the issue and resume the task."
617
+ msgstr "推荐的方法是调查下面和“错误”选项卡中的错误消息,解决造成问题的主要原因,然后继续执行任务。"
618
+
619
+ msgid "The smart proxy task %s failed."
620
+ msgstr "智慧型代理任務 %s 失敗。"
621
+
622
+ msgid "The targets are of different types"
623
+ msgstr "目標類型不同"
624
+
625
+ msgid "The task cannot be aborted at the moment."
626
+ msgstr "目前无法中止该任务。"
627
+
628
+ msgid "The task could not be started"
629
+ msgstr "无法启动该任务"
630
+
631
+ msgid "There is %{count} paused task in the system that need attention"
632
+ msgid_plural "There are %{count} paused tasks in the system that need attention"
633
+ msgstr[0] ""
634
+ msgstr[1] ""
635
+
636
+ msgid "This action will delete all cancelled recurring logics. Please note that this action can't be reversed."
637
+ msgstr "此操作将删除所有取消的重复逻辑。请注意,此操作无法撤消。"
638
+
639
+ msgid "Thu"
640
+ msgstr "周四"
641
+
642
+ msgid "Time in seconds between retries"
643
+ msgstr "重試之間的時間(秒)"
644
+
645
+ msgid "Total"
646
+ msgstr "總計"
647
+
648
+ msgid "Troubleshooting"
649
+ msgstr "故障排除"
650
+
651
+ msgid "Trying to abort the task"
652
+ msgstr "尝试中止该任务"
653
+
654
+ msgid "Trying to cancel step"
655
+ msgstr ""
656
+
657
+ msgid "Tue"
658
+ msgstr "周二"
659
+
660
+ msgid "Type %s for search_params is not supported"
661
+ msgstr "不支援 search_params 的 %s"
662
+
663
+ msgid "UUID of the task"
664
+ msgstr "任務的 UUID"
665
+
666
+ msgid "Undo selection"
667
+ msgstr "撤销选择"
668
+
669
+ msgid "Unlimited"
670
+ msgstr "無限制"
671
+
672
+ msgid "Unlock"
673
+ msgstr "开锁"
674
+
675
+ msgid "Update recurring logic"
676
+ msgstr "更新周期性逻辑"
677
+
678
+ msgid "Url pointing to the task troubleshooting documentation. It should contain %{label} placeholder, that will be replaced with normalized task label (restricted to only alphanumeric characters)). %{version} placeholder is also available."
679
+ msgstr "指向任务故障排除文档的 URL。它应该包含%{label} 占位符,它将被标准化的任务标签(仅限字母数字字符)替换。还可以使用 %{version} 占位符。"
680
+
681
+ msgid "User search_params requires user_id to be specified"
682
+ msgstr "使用者 search_params 需要指定 user_id"
683
+
684
+ msgid "Wed"
685
+ msgstr "周三"
686
+
687
+ msgid "With focus on last"
688
+ msgstr "专注于最后"
689
+
690
+ msgid "Yes"
691
+ msgstr "是"
692
+
693
+ msgid "activation key"
694
+ msgstr "啟動金鑰"
695
+
696
+ msgid "cannot be cancelled with force at the moment."
697
+ msgstr ""
698
+
699
+ msgid "content view"
700
+ msgstr "內容視域"
701
+
702
+ msgid "content view version"
703
+ msgstr "內容視域版本"
704
+
705
+ msgid "could not be resumed"
706
+ msgstr "无法恢复"
707
+
708
+ msgid "error"
709
+ msgstr "错误"
710
+
711
+ #. TRANSLATORS: this translation is referring to an option which is a time interval
712
+ msgid "is day of month (range: 1-31)"
713
+ msgstr "是日期(範圍:1-31)"
714
+
715
+ #. TRANSLATORS: this translation is referring to an option which is a time interval
716
+ msgid "is day of week (range: 0-6)"
717
+ msgstr "是星期幾(範圍:0-6)"
718
+
719
+ #. TRANSLATORS: this translation is referring to an option which is a time interval
720
+ msgid "is hour (range: 0-23)"
721
+ msgstr "是小時(範圍:0-23)"
722
+
723
+ #. TRANSLATORS: this translation is referring to an option which is a time interval
724
+ msgid "is minute (range: 0-59)"
725
+ msgstr "是分鐘(範圍:0-59)"
726
+
727
+ #. TRANSLATORS: this translation is referring to an option which is a time interval
728
+ msgid "is month (range: 1-12)"
729
+ msgstr "是月份(範圍:1-12)"
730
+
731
+ msgid "last"
732
+ msgstr "最近"
733
+
734
+ msgid "mode"
735
+ msgstr "模式"
736
+
737
+ msgid "mode has to be one of %{allowed_modes}"
738
+ msgstr "模式必须是其中一个 %{allowed_modes}"
739
+
740
+ msgid "older"
741
+ msgstr "较老"
742
+
743
+ msgid "organization"
744
+ msgstr "組織"
745
+
746
+ msgid "paused"
747
+ msgstr "暂停"
748
+
749
+ msgid "product"
750
+ msgstr "產品"
751
+
752
+ msgid "repository"
753
+ msgstr "軟體庫"
754
+
755
+ msgid "resources cannot be unlocked at the moment."
756
+ msgstr ""
757
+
758
+ msgid "resources were unlocked "
759
+ msgstr ""
760
+
761
+ msgid "resources were unlocked with force."
762
+ msgstr ""
763
+
764
+ msgid "result"
765
+ msgstr "结果"
766
+
767
+ msgid "running"
768
+ msgstr "赛跑"
769
+
770
+ msgid "scheduled"
771
+ msgstr "调度"
772
+
773
+ msgid "seconds"
774
+ msgstr "秒"
775
+
776
+ msgid "state"
777
+ msgstr "状态"
778
+
779
+ msgid "stopped"
780
+ msgstr "停止"
781
+
782
+ msgid "success"
783
+ msgstr "成功"
784
+
785
+ msgid "system"
786
+ msgstr "系統"
787
+
788
+ msgid "task has to be cancellable"
789
+ msgstr "任务必须可取消"
790
+
791
+ msgid "task has to be resumable"
792
+ msgstr "任务必须是可恢复的"
793
+
794
+ msgid "tasks."
795
+ msgstr "任务。"
796
+
797
+ msgid "time"
798
+ msgstr "时间"
799
+
800
+ msgid "troubleshooting documentation"
801
+ msgstr "故障排除文档"
802
+
803
+ msgid "user"
804
+ msgstr "用户"
805
+
806
+ msgid "warning"
807
+ msgstr "警告"
808
+
809
+ msgid "was cancelled"
810
+ msgstr "已取消。"
811
+
812
+ msgid "was resumed"
813
+ msgstr "被恢复"
814
+
815
+ msgid "week"
816
+ msgstr "周"