foreman-tasks 8.3.1 → 9.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/foreman-tasks/locale/de/foreman_tasks.js +899 -1
  3. data/app/assets/javascripts/foreman-tasks/locale/en/foreman_tasks.js +899 -1
  4. data/app/assets/javascripts/foreman-tasks/locale/es/foreman_tasks.js +900 -1
  5. data/app/assets/javascripts/foreman-tasks/locale/fr/foreman_tasks.js +900 -1
  6. data/app/assets/javascripts/foreman-tasks/locale/ja/foreman_tasks.js +898 -1
  7. data/app/assets/javascripts/foreman-tasks/locale/ka/foreman_tasks.js +899 -1
  8. data/app/assets/javascripts/foreman-tasks/locale/ko/foreman_tasks.js +899 -1
  9. data/app/assets/javascripts/foreman-tasks/locale/pt_BR/foreman_tasks.js +900 -1
  10. data/app/assets/javascripts/foreman-tasks/locale/ru/foreman_tasks.js +899 -1
  11. data/app/assets/javascripts/foreman-tasks/locale/zh_CN/foreman_tasks.js +898 -1
  12. data/app/assets/javascripts/foreman-tasks/locale/zh_TW/foreman_tasks.js +899 -1
  13. data/app/lib/actions/bulk_action.rb +4 -1
  14. data/app/lib/actions/trigger_proxy_batch.rb +13 -8
  15. data/app/models/foreman_tasks/concerns/user_extensions.rb +5 -3
  16. data/lib/foreman_tasks/engine.rb +1 -1
  17. data/lib/foreman_tasks/version.rb +1 -1
  18. data/locale/action_names.rb +2 -0
  19. data/locale/de/foreman_tasks.po +36 -0
  20. data/locale/en/foreman_tasks.po +36 -1
  21. data/locale/es/foreman_tasks.po +36 -0
  22. data/locale/foreman_tasks.pot +70 -8
  23. data/locale/fr/foreman_tasks.po +36 -0
  24. data/locale/ja/foreman_tasks.po +36 -0
  25. data/locale/ka/foreman_tasks.po +36 -0
  26. data/locale/ko/foreman_tasks.po +36 -0
  27. data/locale/pt_BR/foreman_tasks.po +36 -0
  28. data/locale/ru/foreman_tasks.po +36 -0
  29. data/locale/zh_CN/foreman_tasks.po +36 -0
  30. data/locale/zh_TW/foreman_tasks.po +36 -0
  31. data/test/unit/actions/bulk_action_test.rb +27 -0
  32. data/test/unit/actions/trigger_proxy_batch_test.rb +7 -0
  33. data/webpack/ForemanTasks/Components/TasksTable/TasksIndexPage.js +1 -7
  34. data/webpack/ForemanTasks/Components/TasksTable/TasksTablePage.js +2 -1
  35. metadata +2 -2
@@ -50,8 +50,11 @@ module Actions
50
50
 
51
51
  missing = Array.new((current_batch - targets.map(&:id)).count) { nil }
52
52
 
53
+ args = input[:args]
54
+ args += [input[:kwargs]] unless input[:kwargs].empty?
55
+
53
56
  (targets + missing).map do |target|
54
- trigger(action_class, target, *input[:args], **input[:kwargs])
57
+ trigger(action_class, target, *args)
55
58
  end
56
59
  end
57
60
 
@@ -18,9 +18,10 @@ module Actions
18
18
  init_counts and suspend
19
19
  end
20
20
  when TriggerNextBatch
21
- trigger_remote_tasks_batches(event.batches) and suspend
21
+ trigger_remote_tasks_batches(event.batches)
22
22
  when TriggerLastBatch
23
- trigger_remote_tasks_batch and on_finish
23
+ output[:planning_finished] = true
24
+ trigger_remote_tasks_batches
24
25
  when ::Dynflow::Action::Skip
25
26
  # do nothing
26
27
  end
@@ -28,6 +29,7 @@ module Actions
28
29
 
29
30
  def trigger_remote_tasks_batches(amount = 1)
30
31
  amount.times { trigger_remote_tasks_batch }
32
+ done? ? on_finish : suspend
31
33
  end
32
34
 
33
35
  def trigger_remote_tasks_batch
@@ -55,15 +57,18 @@ module Actions
55
57
  end
56
58
 
57
59
  def check_finish
58
- if output[:planned_count] + output[:failed_count] + batch_size >= input[:total_count]
59
- trigger_remote_tasks_batch and on_finish
60
- else
61
- suspend
62
- end
60
+ return on_finish if done?
61
+
62
+ # If we're not done yet, try to trigger anything (if available)
63
+ # and then either finish or suspend
64
+ trigger_remote_tasks_batches
63
65
  end
64
66
 
65
67
  def done?
66
- output[:planned_count] + output[:failed_count] >= input[:total_count]
68
+ # We're done when we've either:
69
+ # - dispatched everything
70
+ # - received the last message
71
+ output[:planned_count] + output[:failed_count] >= input[:total_count] || output[:planning_finished]
67
72
  end
68
73
 
69
74
  def remote_tasks
@@ -13,11 +13,13 @@ module ForemanTasks
13
13
  end
14
14
 
15
15
  def attach_task_mail_notifications
16
+ return if ::ForemanSeeder.is_seeding
17
+
16
18
  org_admin_role = Role.find_by(name: 'Organization admin')
17
- admin_role_ids = ([org_admin_role.id] + org_admin_role.cloned_role_ids)
18
- role_ids = roles.map(&:id)
19
+ admin_by_role = org_admin_role &&
20
+ (roles.map(&:id) & ([org_admin_role.id] + org_admin_role.cloned_role_ids)).any?
19
21
 
20
- return unless admin || (role_ids & admin_role_ids).any?
22
+ return unless admin || admin_by_role
21
23
 
22
24
  notification = MailNotification.find_by(name: 'long_running_tasks')
23
25
  return if notification.nil?
@@ -18,7 +18,7 @@ module ForemanTasks
18
18
 
19
19
  initializer 'foreman_tasks.register_plugin', :before => :finisher_hook do |_app|
20
20
  Foreman::Plugin.register :"foreman-tasks" do
21
- requires_foreman '>= 3.7.0'
21
+ requires_foreman '>= 3.9'
22
22
  divider :top_menu, :parent => :monitor_menu, :last => true, :caption => N_('Foreman Tasks')
23
23
  menu :top_menu, :tasks,
24
24
  :url_hash => { :controller => 'foreman_tasks/tasks', :action => :index },
@@ -1,3 +1,3 @@
1
1
  module ForemanTasks
2
- VERSION = '8.3.1'.freeze
2
+ VERSION = '9.0.0'.freeze
3
3
  end
@@ -1,4 +1,6 @@
1
1
  # Autogenerated!
2
2
  _("Action with sub plans")
3
+ _("Check for long running tasks")
4
+ _("Deliver notifications about long running tasks")
3
5
  _("Import Puppet classes")
4
6
  _("Import facts")
@@ -32,6 +32,9 @@ msgstr " %s ausgewählte Aufgaben"
32
32
  msgid "%s is not valid format of cron line"
33
33
  msgstr "%s ist ungültiges Cron-Zeilen-Format"
34
34
 
35
+ msgid "%{count} tasks are in running or paused state for more than a day"
36
+ msgstr ""
37
+
35
38
  msgid "%{total} task(s), %{success} success, %{failed} fail"
36
39
  msgstr "%{total} Aufgabe(n), %{success} Erfolg, %{failed} Fehler"
37
40
 
@@ -50,6 +53,9 @@ msgstr "12h"
50
53
  msgid "24h"
51
54
  msgstr "24h"
52
55
 
56
+ msgid "A notification when tasks run for suspiciously long time"
57
+ msgstr ""
58
+
53
59
  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."
54
60
  msgstr "Eine angehaltene Aufgabe stellt einen Prozess dar, der nicht ordnungsgemäß abgeschlossen wurde. Jede Aufgabe im angehaltenen Zustand kann zu potenziellen Inkonsistenzen führen und muss gelöst werden."
55
61
 
@@ -147,6 +153,9 @@ msgstr "Abgebrochene wiederkehrende Jobs können nicht aktualisiert werden."
147
153
  msgid "Changing request id %{request_id} to saved id %{saved_id}"
148
154
  msgstr "Anfrage-ID %{request_id} in gespeicherte ID %{saved_id} ändern"
149
155
 
156
+ msgid "Check for long running tasks"
157
+ msgstr ""
158
+
150
159
  msgid "Clear All Filters"
151
160
  msgstr "Alle Filter löschen"
152
161
 
@@ -189,6 +198,9 @@ msgstr "Verzögert"
189
198
  msgid "Delete recurring logics by search query"
190
199
  msgstr "Wiederkehrende Logiken per Suchanfrage löschen"
191
200
 
201
+ msgid "Deliver notifications about long running tasks"
202
+ msgstr ""
203
+
192
204
  msgid "Details"
193
205
  msgstr "Details"
194
206
 
@@ -336,9 +348,15 @@ msgstr "Aufgaben auflisten"
336
348
  msgid "Locks"
337
349
  msgstr "Sperren"
338
350
 
351
+ msgid "Long running tasks"
352
+ msgstr ""
353
+
339
354
  msgid "Mon"
340
355
  msgstr "Mo"
341
356
 
357
+ msgid "More details"
358
+ msgstr ""
359
+
342
360
  msgid "More than"
343
361
  msgstr "Mehr als"
344
362
 
@@ -580,6 +598,9 @@ msgstr "Gestartet um"
580
598
  msgid "State"
581
599
  msgstr "Status"
582
600
 
601
+ msgid "State updated at"
602
+ msgstr ""
603
+
583
604
  msgid "Step Canceled"
584
605
  msgstr "Schritt abgebrochen"
585
606
 
@@ -604,6 +625,9 @@ msgstr "Unteraufgabe"
604
625
  msgid "Sub tasks of %s"
605
626
  msgstr "Unteraufgaben von %s."
606
627
 
628
+ msgid "Subscribe"
629
+ msgstr ""
630
+
607
631
  msgid "Sun"
608
632
  msgstr "So"
609
633
 
@@ -640,6 +664,12 @@ msgstr "Aufgabe wurde abgebrochen"
640
664
  msgid "Tasks"
641
665
  msgstr "Aufgaben"
642
666
 
667
+ msgid "Tasks lingering in states %{states} since %{time}"
668
+ msgstr ""
669
+
670
+ msgid "Tasks pending since %s"
671
+ msgstr ""
672
+
643
673
  msgid "Tasks troubleshooting URL"
644
674
  msgstr "URL zur Fehlerbehebung bei Aufgaben"
645
675
 
@@ -708,6 +738,12 @@ msgstr "Typ %s wird für Suchparameter nicht unterstützt"
708
738
  msgid "UUID of the task"
709
739
  msgstr "UUID der Aufgabe"
710
740
 
741
+ msgid "Unable to create mail notification: %s"
742
+ msgstr ""
743
+
744
+ msgid "Unable to enable mail notification to user '%s': %s"
745
+ msgstr ""
746
+
711
747
  msgid "Undo selection"
712
748
  msgstr "Auswahl zurücksetzen"
713
749
 
@@ -3,7 +3,6 @@
3
3
  # This file is distributed under the same license as the foreman_tasks package.
4
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
5
  #
6
- #, fuzzy
7
6
  msgid ""
8
7
  msgstr ""
9
8
  "Project-Id-Version: foreman_tasks 1.0.0\n"
@@ -29,6 +28,9 @@ msgstr ""
29
28
  msgid "%s is not valid format of cron line"
30
29
  msgstr ""
31
30
 
31
+ msgid "%{count} tasks are in running or paused state for more than a day"
32
+ msgstr ""
33
+
32
34
  msgid "%{total} task(s), %{success} success, %{failed} fail"
33
35
  msgstr ""
34
36
 
@@ -47,6 +49,9 @@ msgstr ""
47
49
  msgid "24h"
48
50
  msgstr ""
49
51
 
52
+ msgid "A notification when tasks run for suspiciously long time"
53
+ msgstr ""
54
+
50
55
  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."
51
56
  msgstr ""
52
57
 
@@ -144,6 +149,9 @@ msgstr ""
144
149
  msgid "Changing request id %{request_id} to saved id %{saved_id}"
145
150
  msgstr ""
146
151
 
152
+ msgid "Check for long running tasks"
153
+ msgstr ""
154
+
147
155
  msgid "Clear All Filters"
148
156
  msgstr ""
149
157
 
@@ -186,6 +194,9 @@ msgstr ""
186
194
  msgid "Delete recurring logics by search query"
187
195
  msgstr ""
188
196
 
197
+ msgid "Deliver notifications about long running tasks"
198
+ msgstr ""
199
+
189
200
  msgid "Details"
190
201
  msgstr ""
191
202
 
@@ -333,9 +344,15 @@ msgstr ""
333
344
  msgid "Locks"
334
345
  msgstr ""
335
346
 
347
+ msgid "Long running tasks"
348
+ msgstr ""
349
+
336
350
  msgid "Mon"
337
351
  msgstr ""
338
352
 
353
+ msgid "More details"
354
+ msgstr ""
355
+
339
356
  msgid "More than"
340
357
  msgstr ""
341
358
 
@@ -577,6 +594,9 @@ msgstr ""
577
594
  msgid "State"
578
595
  msgstr ""
579
596
 
597
+ msgid "State updated at"
598
+ msgstr ""
599
+
580
600
  msgid "Step Canceled"
581
601
  msgstr ""
582
602
 
@@ -601,6 +621,9 @@ msgstr ""
601
621
  msgid "Sub tasks of %s"
602
622
  msgstr ""
603
623
 
624
+ msgid "Subscribe"
625
+ msgstr ""
626
+
604
627
  msgid "Sun"
605
628
  msgstr ""
606
629
 
@@ -637,6 +660,12 @@ msgstr ""
637
660
  msgid "Tasks"
638
661
  msgstr ""
639
662
 
663
+ msgid "Tasks lingering in states %{states} since %{time}"
664
+ msgstr ""
665
+
666
+ msgid "Tasks pending since %s"
667
+ msgstr ""
668
+
640
669
  msgid "Tasks troubleshooting URL"
641
670
  msgstr ""
642
671
 
@@ -705,6 +734,12 @@ msgstr ""
705
734
  msgid "UUID of the task"
706
735
  msgstr ""
707
736
 
737
+ msgid "Unable to create mail notification: %s"
738
+ msgstr ""
739
+
740
+ msgid "Unable to enable mail notification to user '%s': %s"
741
+ msgstr ""
742
+
708
743
  msgid "Undo selection"
709
744
  msgstr ""
710
745
 
@@ -32,6 +32,9 @@ msgstr "%s Tareas seleccionadas"
32
32
  msgid "%s is not valid format of cron line"
33
33
  msgstr "%s no es un formato válido de línea cron"
34
34
 
35
+ msgid "%{count} tasks are in running or paused state for more than a day"
36
+ msgstr ""
37
+
35
38
  msgid "%{total} task(s), %{success} success, %{failed} fail"
36
39
  msgstr "%{total} tarea(s), %{success} éxito, %{failed} fallo"
37
40
 
@@ -50,6 +53,9 @@ msgstr "12 h"
50
53
  msgid "24h"
51
54
  msgstr "24 h"
52
55
 
56
+ msgid "A notification when tasks run for suspiciously long time"
57
+ msgstr ""
58
+
53
59
  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."
54
60
  msgstr "Una tarea pausada representa un proceso que no ha terminado correctamente. Cualquier tarea en estado de pausa puede llevar a una potencial inconsistencia y debe ser resuelta."
55
61
 
@@ -147,6 +153,9 @@ msgstr "No se puede actualizar una lógica recurrente cancelada."
147
153
  msgid "Changing request id %{request_id} to saved id %{saved_id}"
148
154
  msgstr "Cambio del id de solicitud %{request_id} al id guardado %.{saved_id}"
149
155
 
156
+ msgid "Check for long running tasks"
157
+ msgstr ""
158
+
150
159
  msgid "Clear All Filters"
151
160
  msgstr "Borrar todos los filtros"
152
161
 
@@ -189,6 +198,9 @@ msgstr "Demorada"
189
198
  msgid "Delete recurring logics by search query"
190
199
  msgstr "Eliminar lógicas recurrentes mediante una consulta de búsqueda"
191
200
 
201
+ msgid "Deliver notifications about long running tasks"
202
+ msgstr ""
203
+
192
204
  msgid "Details"
193
205
  msgstr "Detalles"
194
206
 
@@ -336,9 +348,15 @@ msgstr "Listar tareas"
336
348
  msgid "Locks"
337
349
  msgstr "Bloqueos"
338
350
 
351
+ msgid "Long running tasks"
352
+ msgstr ""
353
+
339
354
  msgid "Mon"
340
355
  msgstr "Lun"
341
356
 
357
+ msgid "More details"
358
+ msgstr ""
359
+
342
360
  msgid "More than"
343
361
  msgstr "Más de"
344
362
 
@@ -580,6 +598,9 @@ msgstr "Iniciado el"
580
598
  msgid "State"
581
599
  msgstr "Estado"
582
600
 
601
+ msgid "State updated at"
602
+ msgstr ""
603
+
583
604
  msgid "Step Canceled"
584
605
  msgstr "Paso cancelado"
585
606
 
@@ -604,6 +625,9 @@ msgstr "Subtareas"
604
625
  msgid "Sub tasks of %s"
605
626
  msgstr "Subtareas de %s"
606
627
 
628
+ msgid "Subscribe"
629
+ msgstr ""
630
+
607
631
  msgid "Sun"
608
632
  msgstr "Dom"
609
633
 
@@ -640,6 +664,12 @@ msgstr "La tarea fue cancelada"
640
664
  msgid "Tasks"
641
665
  msgstr "Tareas"
642
666
 
667
+ msgid "Tasks lingering in states %{states} since %{time}"
668
+ msgstr ""
669
+
670
+ msgid "Tasks pending since %s"
671
+ msgstr ""
672
+
643
673
  msgid "Tasks troubleshooting URL"
644
674
  msgstr "URL de resolución de problemas"
645
675
 
@@ -709,6 +739,12 @@ msgstr "No se admite el tipo %s para search_params"
709
739
  msgid "UUID of the task"
710
740
  msgstr "UUID de la tarea"
711
741
 
742
+ msgid "Unable to create mail notification: %s"
743
+ msgstr ""
744
+
745
+ msgid "Unable to enable mail notification to user '%s': %s"
746
+ msgstr ""
747
+
712
748
  msgid "Undo selection"
713
749
  msgstr "Deshacer la selección"
714
750
 
@@ -8,8 +8,8 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: foreman_tasks 1.0.0\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2023-05-18 08:15+0000\n"
12
- "PO-Revision-Date: 2023-05-18 08:15+0000\n"
11
+ "POT-Creation-Date: 2023-11-01 11:07+0100\n"
12
+ "PO-Revision-Date: 2023-11-01 11:07+0100\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
15
15
  "Language: \n"
@@ -162,6 +162,7 @@ msgstr ""
162
162
  #: ../db/seeds.d/30-notification_blueprints.rb:33
163
163
  #: ../db/seeds.d/30-notification_blueprints.rb:40
164
164
  #: ../db/seeds.d/30-notification_blueprints.rb:47
165
+ #: ../db/seeds.d/30-notification_blueprints.rb:54
165
166
  #: ../lib/foreman_tasks/engine.rb:25 ../lib/foreman_tasks/engine.rb:54
166
167
  #: ../webpack/ForemanTasks/Components/TasksTable/SubTasksPage.js:10
167
168
  #: ../webpack/ForemanTasks/Components/TasksTable/TasksIndexPage.js:7
@@ -324,11 +325,20 @@ msgstr ""
324
325
  msgid "The targets are of different types"
325
326
  msgstr ""
326
327
 
327
- #: ../app/lib/actions/foreman/host/import_facts.rb:43 action_names.rb:4
328
+ #: ../app/lib/actions/check_long_running_tasks.rb:40 action_names.rb:3
329
+ msgid "Check for long running tasks"
330
+ msgstr ""
331
+
332
+ #: ../app/lib/actions/deliver_long_running_tasks_notification.rb:19
333
+ #: action_names.rb:4
334
+ msgid "Deliver notifications about long running tasks"
335
+ msgstr ""
336
+
337
+ #: ../app/lib/actions/foreman/host/import_facts.rb:43 action_names.rb:6
328
338
  msgid "Import facts"
329
339
  msgstr ""
330
340
 
331
- #: ../app/lib/actions/foreman/puppetclass/import.rb:18 action_names.rb:3
341
+ #: ../app/lib/actions/foreman/puppetclass/import.rb:18 action_names.rb:5
332
342
  msgid "Import Puppet classes"
333
343
  msgstr ""
334
344
 
@@ -412,6 +422,10 @@ msgstr ""
412
422
  msgid "Initialization error: %s"
413
423
  msgstr ""
414
424
 
425
+ #: ../app/mailers/tasks_mailer.rb:9
426
+ msgid "Tasks pending since %s"
427
+ msgstr ""
428
+
415
429
  #: ../app/models/foreman_tasks/lock.rb:7
416
430
  msgid "Required lock is already taken by other running tasks."
417
431
  msgstr ""
@@ -474,6 +488,10 @@ msgstr ""
474
488
  msgid "Recurring logic"
475
489
  msgstr ""
476
490
 
491
+ #: ../app/models/foreman_tasks/tasks_mail_notification.rb:3
492
+ msgid "Subscribe"
493
+ msgstr ""
494
+
477
495
  #: ../app/models/foreman_tasks/triggering.rb:29
478
496
  msgid "%{value} is not allowed triggering mode"
479
497
  msgstr ""
@@ -537,6 +555,15 @@ msgid_plural "There are %{count} paused tasks in the system that need attention"
537
555
  msgstr[0] ""
538
556
  msgstr[1] ""
539
557
 
558
+ #: ../app/services/ui_notifications/tasks/tasks_running_long.rb:18
559
+ #: ../db/seeds.d/95-mail_notifications.rb:1
560
+ msgid "Long running tasks"
561
+ msgstr ""
562
+
563
+ #: ../app/services/ui_notifications/tasks/tasks_running_long.rb:29
564
+ msgid "%{count} tasks are in running or paused state for more than a day"
565
+ msgstr ""
566
+
540
567
  #: ../app/views/common/_trigger_form.html.erb:2
541
568
  msgid "Schedule"
542
569
  msgstr ""
@@ -572,6 +599,8 @@ msgstr ""
572
599
  #: ../app/views/foreman_tasks/recurring_logics/index.html.erb:40
573
600
  #: ../app/views/foreman_tasks/task_groups/_common.html.erb:4
574
601
  #: ../app/views/foreman_tasks/task_groups/recurring_logic_task_groups/_recurring_logic_task_group.html.erb:4
602
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:11
603
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:9
575
604
  msgid "ID"
576
605
  msgstr ""
577
606
 
@@ -583,6 +612,8 @@ msgstr ""
583
612
 
584
613
  #: ../app/views/foreman_tasks/recurring_logics/index.html.erb:43
585
614
  #: ../app/views/foreman_tasks/task_groups/recurring_logic_task_groups/_recurring_logic_task_group.html.erb:12
615
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:12
616
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:10
586
617
  #: ../webpack/ForemanTasks/Components/TaskDetails/Components/Errors.js:18
587
618
  #: ../webpack/ForemanTasks/Components/TaskDetails/Components/RunningSteps.js:35
588
619
  #: ../webpack/ForemanTasks/Components/TasksTable/TasksTableSchema.js:56
@@ -618,6 +649,8 @@ msgstr ""
618
649
  #: ../app/views/foreman_tasks/task_groups/recurring_logic_task_groups/_recurring_logic_task_group.html.erb:36
619
650
  #: ../app/views/foreman_tasks/tasks/dashboard/_latest_tasks_in_error_warning.html.erb:5
620
651
  #: ../app/views/foreman_tasks/tasks/dashboard/_tasks_status.html.erb:4
652
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:14
653
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:12
621
654
  #: ../webpack/ForemanTasks/Components/TaskDetails/Components/RunningSteps.js:40
622
655
  #: ../webpack/ForemanTasks/Components/TaskDetails/Components/TaskInfo.js:130
623
656
  #: ../webpack/ForemanTasks/Components/TasksTable/TasksTableSchema.js:61
@@ -625,6 +658,7 @@ msgid "State"
625
658
  msgstr ""
626
659
 
627
660
  #: ../app/views/foreman_tasks/recurring_logics/show.html.erb:6
661
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:14
628
662
  msgid "Details"
629
663
  msgstr ""
630
664
 
@@ -676,6 +710,26 @@ msgstr ""
676
710
  msgid "Details of %s task"
677
711
  msgstr ""
678
712
 
713
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:2
714
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:1
715
+ msgid "Tasks lingering in states %{states} since %{time}"
716
+ msgstr ""
717
+
718
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:13
719
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:11
720
+ #: ../webpack/ForemanTasks/Components/TaskDetails/Components/Raw.js:14
721
+ msgid "Label"
722
+ msgstr ""
723
+
724
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:15
725
+ #: ../app/views/tasks_mailer/long_tasks.text.erb:13
726
+ msgid "State updated at"
727
+ msgstr ""
728
+
729
+ #: ../app/views/tasks_mailer/long_tasks.html.erb:29
730
+ msgid "More details"
731
+ msgstr ""
732
+
679
733
  #: ../db/seeds.d/30-notification_blueprints.rb:12
680
734
  msgid "List of tasks"
681
735
  msgstr ""
@@ -684,6 +738,18 @@ msgstr ""
684
738
  msgid "Task Details"
685
739
  msgstr ""
686
740
 
741
+ #: ../db/seeds.d/95-mail_notifications.rb:6
742
+ msgid "A notification when tasks run for suspiciously long time"
743
+ msgstr ""
744
+
745
+ #: ../db/seeds.d/95-mail_notifications.rb:20
746
+ msgid "Unable to create mail notification: %s"
747
+ msgstr ""
748
+
749
+ #: ../db/seeds.d/95-mail_notifications.rb:34
750
+ msgid "Unable to enable mail notification to user '%s': %s"
751
+ msgstr ""
752
+
687
753
  #: ../lib/foreman_tasks/dynflow.rb:18
688
754
  msgid "Back to tasks"
689
755
  msgstr ""
@@ -884,10 +950,6 @@ msgstr ""
884
950
  msgid "Id"
885
951
  msgstr ""
886
952
 
887
- #: ../webpack/ForemanTasks/Components/TaskDetails/Components/Raw.js:14
888
- msgid "Label"
889
- msgstr ""
890
-
891
953
  #: ../webpack/ForemanTasks/Components/TaskDetails/Components/Raw.js:19
892
954
  #: ../webpack/ForemanTasks/Components/TasksTable/TasksTableSchema.js:70
893
955
  msgid "Duration"
@@ -31,6 +31,9 @@ msgstr "%s tâches sélectionnées"
31
31
  msgid "%s is not valid format of cron line"
32
32
  msgstr "%s n'est pas un format valide de ligne cron"
33
33
 
34
+ msgid "%{count} tasks are in running or paused state for more than a day"
35
+ msgstr ""
36
+
34
37
  msgid "%{total} task(s), %{success} success, %{failed} fail"
35
38
  msgstr "%{total} tâche(s), %{success} succès, %{failed} échec"
36
39
 
@@ -49,6 +52,9 @@ msgstr "12h"
49
52
  msgid "24h"
50
53
  msgstr "24h"
51
54
 
55
+ msgid "A notification when tasks run for suspiciously long time"
56
+ msgstr ""
57
+
52
58
  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."
53
59
  msgstr "Une tâche en pause représente un processus qui ne s'est pas terminé correctement. Toute tâche en état de pause peut entraîner une incohérence potentielle et doit être résolue."
54
60
 
@@ -146,6 +152,9 @@ msgstr "Impossible de mettre à jour une logique récurrente annulée."
146
152
  msgid "Changing request id %{request_id} to saved id %{saved_id}"
147
153
  msgstr "Changement de l'id de la demande %{request_id} en id %{saved_id} sauvegardée"
148
154
 
155
+ msgid "Check for long running tasks"
156
+ msgstr ""
157
+
149
158
  msgid "Clear All Filters"
150
159
  msgstr "Afficher tous les filtres"
151
160
 
@@ -188,6 +197,9 @@ msgstr "Retardé"
188
197
  msgid "Delete recurring logics by search query"
189
198
  msgstr "Supprimer les logiques récurrentes par requête de recherche"
190
199
 
200
+ msgid "Deliver notifications about long running tasks"
201
+ msgstr ""
202
+
191
203
  msgid "Details"
192
204
  msgstr "Détails"
193
205
 
@@ -335,9 +347,15 @@ msgstr "Lister les tâches"
335
347
  msgid "Locks"
336
348
  msgstr "Verrous"
337
349
 
350
+ msgid "Long running tasks"
351
+ msgstr ""
352
+
338
353
  msgid "Mon"
339
354
  msgstr "Lun."
340
355
 
356
+ msgid "More details"
357
+ msgstr ""
358
+
341
359
  msgid "More than"
342
360
  msgstr "Plus de"
343
361
 
@@ -579,6 +597,9 @@ msgstr "Démarré à"
579
597
  msgid "State"
580
598
  msgstr "État"
581
599
 
600
+ msgid "State updated at"
601
+ msgstr ""
602
+
582
603
  msgid "Step Canceled"
583
604
  msgstr "Étape annulée"
584
605
 
@@ -603,6 +624,9 @@ msgstr "Sous-tâches"
603
624
  msgid "Sub tasks of %s"
604
625
  msgstr "Sous-tâches de %s"
605
626
 
627
+ msgid "Subscribe"
628
+ msgstr ""
629
+
606
630
  msgid "Sun"
607
631
  msgstr "Dim."
608
632
 
@@ -639,6 +663,12 @@ msgstr "La tâche a été annulée"
639
663
  msgid "Tasks"
640
664
  msgstr "Tâches"
641
665
 
666
+ msgid "Tasks lingering in states %{states} since %{time}"
667
+ msgstr ""
668
+
669
+ msgid "Tasks pending since %s"
670
+ msgstr ""
671
+
642
672
  msgid "Tasks troubleshooting URL"
643
673
  msgstr "URL de résolution de problème"
644
674
 
@@ -708,6 +738,12 @@ msgstr "Type %s n'est pas supporté pour search_params"
708
738
  msgid "UUID of the task"
709
739
  msgstr "UUID de la tâche"
710
740
 
741
+ msgid "Unable to create mail notification: %s"
742
+ msgstr ""
743
+
744
+ msgid "Unable to enable mail notification to user '%s': %s"
745
+ msgstr ""
746
+
711
747
  msgid "Undo selection"
712
748
  msgstr "Annuler la sélection"
713
749