foreman-tasks 7.2.0 → 8.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby_tests.yml +4 -0
- data/app/helpers/foreman_tasks/foreman_tasks_helper.rb +2 -2
- data/app/lib/actions/middleware/watch_delegated_proxy_sub_tasks.rb +1 -1
- data/app/models/foreman_tasks/recurring_logic.rb +13 -5
- data/app/views/foreman_tasks/api/recurring_logics/base.json.rabl +6 -1
- data/app/views/foreman_tasks/recurring_logics/index.html.erb +1 -1
- data/config/routes.rb +0 -1
- data/db/migrate/20211123170430_tasks_settings_to_dsl_category.rb +1 -1
- data/foreman-tasks.gemspec +2 -2
- data/lib/foreman_tasks/engine.rb +3 -8
- data/lib/foreman_tasks/version.rb +1 -1
- data/lib/tasks/gettext.rake +1 -1
- data/locale/de/foreman_tasks.po +12 -15
- data/locale/en/foreman_tasks.po +9 -12
- data/locale/es/foreman_tasks.po +12 -15
- data/locale/foreman_tasks.pot +19 -23
- data/locale/fr/foreman_tasks.po +12 -15
- data/locale/ja/foreman_tasks.po +12 -15
- data/locale/ka/foreman_tasks.po +12 -15
- data/locale/ko/foreman_tasks.po +10 -13
- data/locale/pt_BR/foreman_tasks.po +12 -15
- data/locale/ru/foreman_tasks.po +10 -13
- data/locale/zh_CN/foreman_tasks.po +12 -15
- data/locale/zh_TW/foreman_tasks.po +10 -13
- data/package.json +6 -6
- data/webpack/ForemanTasks/Components/TaskDetails/Components/TaskButtons.js +1 -1
- data/webpack/ForemanTasks/Components/TaskDetails/Components/__tests__/__snapshots__/TaskButtons.test.js.snap +2 -2
- data/webpack/ForemanTasks/Components/TaskDetails/TaskDetails.js +2 -2
- data/webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js +9 -3
- data/webpack/ForemanTasks/Components/TasksTable/Components/__test__/__snapshots__/SelectAllAlert.test.js.snap +23 -17
- data/webpack/ForemanTasks/Components/TasksTable/TasksBulkActions.js +3 -3
- data/webpack/ForemanTasks/Components/TasksTable/TasksTable.js +2 -2
- data/webpack/ForemanTasks/Components/TasksTable/__tests__/__snapshots__/TasksTable.test.js.snap +1 -1
- metadata +13 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 963f9bf0926c9f8a71b9aef3ace2e25e2b156210c3e4c7567e4282c44eb5632b
|
4
|
+
data.tar.gz: 8b5596eab3ccc039c32f9a23278b54f526aac63546e546f8965314b80afcc7be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48072148a700c91b935f54983371ad5d47d31ead77429def7acde35e847e3a94c31a3d76930aa5540e8e00563285ae611c37c3a58d2a23b3eef5ee8de3d621fb
|
7
|
+
data.tar.gz: 11861d32d797ecf6c1c44f2374cb81758d93c838f546014160c55d4f6d0606de69a5cb06e538d9c65cfd266838f1b976c2404ba1267d0fb07504ef9d9868feff
|
@@ -5,6 +5,9 @@ env:
|
|
5
5
|
DATABASE_URL: postgresql://postgres:@localhost/test
|
6
6
|
DATABASE_CLEANER_ALLOW_REMOTE_DATABASE_URL: true
|
7
7
|
BUNDLE_WITHOUT: "journald:development:console:mysql2:sqlite:libvirt"
|
8
|
+
concurrency:
|
9
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
10
|
+
cancel-in-progress: true
|
8
11
|
jobs:
|
9
12
|
rubocop:
|
10
13
|
runs-on: ubuntu-latest
|
@@ -20,6 +23,7 @@ jobs:
|
|
20
23
|
test_ruby:
|
21
24
|
runs-on: ubuntu-latest
|
22
25
|
needs: rubocop
|
26
|
+
timeout-minutes: 15
|
23
27
|
services:
|
24
28
|
postgres:
|
25
29
|
image: postgres:12.1
|
@@ -52,8 +52,8 @@ module ForemanTasks
|
|
52
52
|
default = '-'
|
53
53
|
return default if recurring_logic.done? || recurring_logic.disabled?
|
54
54
|
|
55
|
-
|
56
|
-
|
55
|
+
upcoming_task = recurring_logic.next_task
|
56
|
+
upcoming_task ? upcoming_task.start_at : default
|
57
57
|
end
|
58
58
|
|
59
59
|
def time_f(f, attr, field_options = {}, time_options = {}, html_options = {})
|
@@ -51,7 +51,7 @@ module Actions
|
|
51
51
|
|
52
52
|
def notify(event, tasks)
|
53
53
|
tasks.each do |task|
|
54
|
-
action.plan_event(event, execution_plan_id: task.execution_plan_id, step_id: task.step_id)
|
54
|
+
action.plan_event(event, execution_plan_id: task.execution_plan_id, step_id: task.step_id, optional: true)
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module ForemanTasks
|
2
|
-
require '
|
2
|
+
require 'fugit'
|
3
3
|
|
4
4
|
class RecurringLogic < ApplicationRecord
|
5
5
|
include Authorizable
|
@@ -29,6 +29,14 @@ module ForemanTasks
|
|
29
29
|
%w[active disabled finished cancelled failed]
|
30
30
|
end
|
31
31
|
|
32
|
+
def last_task
|
33
|
+
tasks.order(:started_at).where.not(started_at: nil).last
|
34
|
+
end
|
35
|
+
|
36
|
+
def next_task
|
37
|
+
tasks.order(:start_at).where(started_at: nil).last
|
38
|
+
end
|
39
|
+
|
32
40
|
def enabled=(value)
|
33
41
|
task = tasks.find_by(:state => :scheduled)
|
34
42
|
if task
|
@@ -88,11 +96,11 @@ module ForemanTasks
|
|
88
96
|
end
|
89
97
|
|
90
98
|
def next_occurrence_time(time = Time.zone.now)
|
91
|
-
@parser ||=
|
99
|
+
@parser ||= Fugit.parse_cron(cron_line)
|
92
100
|
# @parser.next(start_time) is not inclusive of the start_time hence stepping back one run to include checking start_time for the first run.
|
93
|
-
before_next = @parser.
|
94
|
-
return before_next if before_next >= time && tasks.count == 0
|
95
|
-
@parser.
|
101
|
+
before_next = @parser.next_time(@parser.previous_time(time.iso8601))
|
102
|
+
return before_next.utc.localtime if before_next >= time && tasks.count == 0
|
103
|
+
@parser.next_time(time).utc.localtime
|
96
104
|
end
|
97
105
|
|
98
106
|
def generate_delay_options(time = Time.zone.now, options = {})
|
@@ -1,4 +1,9 @@
|
|
1
1
|
object @recurring_logic
|
2
2
|
|
3
3
|
attributes :id, :cron_line, :end_time, :iteration, :task_group_id, :state,
|
4
|
-
:max_iteration
|
4
|
+
:max_iteration, :purpose
|
5
|
+
|
6
|
+
node(:task_count) { |rl| rl.tasks.count }
|
7
|
+
node(:action) { |rl| rl.tasks.first.try(:action) }
|
8
|
+
node(:last_occurence) { |rl| rl.last_task&.started_at }
|
9
|
+
node(:next_occurence) { |rl| rl.next_task&.start_at }
|
@@ -56,7 +56,7 @@
|
|
56
56
|
<td><%= recurring_logic.cron_line %></td>
|
57
57
|
<td><%= link_to(recurring_logic.tasks.count, foreman_tasks_tasks_url(:search => "task_group.id = #{recurring_logic.task_group.id}")) %></td>
|
58
58
|
<td><%= format_task_input(recurring_logic.tasks.first) %></td>
|
59
|
-
<td><%= recurring_logic.
|
59
|
+
<td><%= recurring_logic.last_task.try(:started_at) || "-" %></td>
|
60
60
|
<td><%= recurring_logic_next_occurrence recurring_logic %></td>
|
61
61
|
<td><%= recurring_logic.iteration %></td>
|
62
62
|
<td><%= format_recurring_logic_limit recurring_logic.max_iteration %></td>
|
data/config/routes.rb
CHANGED
@@ -72,7 +72,6 @@ Foreman::Application.routes.draw do
|
|
72
72
|
require 'sidekiq/web'
|
73
73
|
redis_url = ENV['DYNFLOW_REDIS_URL'] || SETTINGS.dig(:dynflow, :redis_url)
|
74
74
|
Sidekiq.redis = { url: redis_url }
|
75
|
-
Sidekiq::Web.set :sessions, false
|
76
75
|
mount Sidekiq::Web => '/sidekiq', :constraints => ForemanTasks::Dynflow::SidekiqConsoleConstraint.new
|
77
76
|
end
|
78
77
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
class TasksSettingsToDslCategory < ActiveRecord::Migration[6.0]
|
2
2
|
def up
|
3
|
-
Setting.where(category: 'Setting::ForemanTasks').update_all(category: 'Setting')
|
3
|
+
Setting.where(category: 'Setting::ForemanTasks').update_all(category: 'Setting') if column_exists?(:settings, :category)
|
4
4
|
end
|
5
5
|
end
|
data/foreman-tasks.gemspec
CHANGED
@@ -20,15 +20,15 @@ same resource. It also optionally provides Dynflow infrastructure for using it f
|
|
20
20
|
DESC
|
21
21
|
|
22
22
|
s.files = `git ls-files`.split("\n").reject do |file|
|
23
|
-
file.end_with?("test.rake")
|
23
|
+
file.end_with?("test.rake") || file == '.packit.yaml'
|
24
24
|
end
|
25
25
|
|
26
26
|
s.test_files = `git ls-files test`.split("\n")
|
27
27
|
s.extra_rdoc_files = Dir['README*', 'LICENSE']
|
28
28
|
|
29
29
|
s.add_dependency "dynflow", '>= 1.6.0'
|
30
|
+
s.add_dependency 'fugit', '~> 1.8'
|
30
31
|
s.add_dependency "get_process_mem" # for memory polling
|
31
|
-
s.add_dependency "parse-cron", '~> 0.1.4'
|
32
32
|
s.add_dependency "sinatra" # for Dynflow web console
|
33
33
|
|
34
34
|
s.add_development_dependency 'factory_bot_rails', '~> 4.8.0'
|
data/lib/foreman_tasks/engine.rb
CHANGED
@@ -16,16 +16,9 @@ module ForemanTasks
|
|
16
16
|
SETTINGS[:foreman_tasks] = { :assets => { :precompile => assets_to_precompile } }
|
17
17
|
end
|
18
18
|
|
19
|
-
initializer 'foreman_tasks.register_gettext', :after => :load_config_initializers do
|
20
|
-
locale_dir = File.join(File.expand_path('../..', __dir__), 'locale')
|
21
|
-
locale_domain = 'foreman_tasks'
|
22
|
-
|
23
|
-
Foreman::Gettext::Support.add_text_domain locale_domain, locale_dir
|
24
|
-
end
|
25
|
-
|
26
19
|
initializer 'foreman_tasks.register_plugin', :before => :finisher_hook do |_app|
|
27
20
|
Foreman::Plugin.register :"foreman-tasks" do
|
28
|
-
requires_foreman '>= 3.
|
21
|
+
requires_foreman '>= 3.7.0'
|
29
22
|
divider :top_menu, :parent => :monitor_menu, :last => true, :caption => N_('Foreman Tasks')
|
30
23
|
menu :top_menu, :tasks,
|
31
24
|
:url_hash => { :controller => 'foreman_tasks/tasks', :action => :index },
|
@@ -129,6 +122,8 @@ module ForemanTasks
|
|
129
122
|
widget 'foreman_tasks/tasks/dashboard/tasks_status', :sizex => 6, :sizey => 1, :name => N_('Task Status')
|
130
123
|
widget 'foreman_tasks/tasks/dashboard/latest_tasks_in_error_warning', :sizex => 6, :sizey => 1, :name => N_('Latest Warning/Error Tasks')
|
131
124
|
|
125
|
+
register_gettext domain: "foreman_tasks"
|
126
|
+
|
132
127
|
ForemanTasks.dynflow.eager_load_actions!
|
133
128
|
extend_observable_events(::Dynflow::Action.descendants.select { |klass| klass <= ::Actions::ObservableAction }.map(&:namespaced_event_names))
|
134
129
|
end
|
data/lib/tasks/gettext.rake
CHANGED
data/locale/de/foreman_tasks.po
CHANGED
@@ -20,9 +20,6 @@ msgstr ""
|
|
20
20
|
"Language: de\n"
|
21
21
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
22
22
|
|
23
|
-
msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
24
|
-
msgstr "${taskReload ? 'Stop': 'Start'} automatisches Nachladen"
|
25
|
-
|
26
23
|
msgid "%(last)s Last %(time)s"
|
27
24
|
msgstr "%(last)s Zuletzt %(time)s"
|
28
25
|
|
@@ -74,8 +71,8 @@ msgstr "Aktive Filter:"
|
|
74
71
|
msgid "Active or disabled recurring logic with purpose %s already exists"
|
75
72
|
msgstr ""
|
76
73
|
|
77
|
-
msgid "All %s tasks are selected.
|
78
|
-
msgstr "
|
74
|
+
msgid "All %s tasks are selected."
|
75
|
+
msgstr ""
|
79
76
|
|
80
77
|
msgid "All proxies with the required feature are unavailable at the moment"
|
81
78
|
msgstr "Alle Proxys mit dem genannten Feature sind nicht verfügbar "
|
@@ -165,11 +162,8 @@ msgstr "Konflikt mit Aufgaben:"
|
|
165
162
|
msgid "Could not cancel step."
|
166
163
|
msgstr "Schritt konnte nicht abgebrochen werden."
|
167
164
|
|
168
|
-
msgid "Could not receive data:
|
169
|
-
msgstr "
|
170
|
-
|
171
|
-
msgid "Could not receive data: ${error && error.message}"
|
172
|
-
msgstr "Konnte Daten nicht erhalten: ${error && error.message}"
|
165
|
+
msgid "Could not receive data: %s"
|
166
|
+
msgstr ""
|
173
167
|
|
174
168
|
msgid "Cron line"
|
175
169
|
msgstr "Cron-Zeile"
|
@@ -550,8 +544,8 @@ msgstr "Weitere Informationen zur Behebung des Problems finden Sie unter %{link}
|
|
550
544
|
msgid "Select Action"
|
551
545
|
msgstr "Aktion auswählen"
|
552
546
|
|
553
|
-
msgid "Select
|
554
|
-
msgstr "
|
547
|
+
msgid "Select all {count} tasks"
|
548
|
+
msgstr ""
|
555
549
|
|
556
550
|
msgid "Select row"
|
557
551
|
msgstr "Zeile auswählen"
|
@@ -571,6 +565,9 @@ msgstr "Details der Wiederholungslogik anzeigen"
|
|
571
565
|
msgid "Start at"
|
572
566
|
msgstr "Startet um "
|
573
567
|
|
568
|
+
msgid "Start auto-reloading"
|
569
|
+
msgstr ""
|
570
|
+
|
574
571
|
msgid "Start before"
|
575
572
|
msgstr "Startet vor"
|
576
573
|
|
@@ -586,6 +583,9 @@ msgstr "Status"
|
|
586
583
|
msgid "Step Canceled"
|
587
584
|
msgstr "Schritt abgebrochen"
|
588
585
|
|
586
|
+
msgid "Stop auto-reloading"
|
587
|
+
msgstr ""
|
588
|
+
|
589
589
|
msgid "Stop selected stoppable tasks"
|
590
590
|
msgstr "Ausgewählte stoppbare Aufgaben stoppen"
|
591
591
|
|
@@ -848,9 +848,6 @@ msgstr "Aufgabe muss stornierbar sein"
|
|
848
848
|
msgid "task has to be resumable"
|
849
849
|
msgstr "Aufgabe muss wiederaufsetzbar sein"
|
850
850
|
|
851
|
-
msgid "tasks."
|
852
|
-
msgstr "Aufgaben."
|
853
|
-
|
854
851
|
msgid "time"
|
855
852
|
msgstr "Zeit"
|
856
853
|
|
data/locale/en/foreman_tasks.po
CHANGED
@@ -17,9 +17,6 @@ msgstr ""
|
|
17
17
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
18
18
|
"\n"
|
19
19
|
|
20
|
-
msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
21
|
-
msgstr ""
|
22
|
-
|
23
20
|
msgid "%(last)s Last %(time)s"
|
24
21
|
msgstr ""
|
25
22
|
|
@@ -71,7 +68,7 @@ msgstr ""
|
|
71
68
|
msgid "Active or disabled recurring logic with purpose %s already exists"
|
72
69
|
msgstr ""
|
73
70
|
|
74
|
-
msgid "All %s tasks are selected.
|
71
|
+
msgid "All %s tasks are selected."
|
75
72
|
msgstr ""
|
76
73
|
|
77
74
|
msgid "All proxies with the required feature are unavailable at the moment"
|
@@ -162,10 +159,7 @@ msgstr ""
|
|
162
159
|
msgid "Could not cancel step."
|
163
160
|
msgstr ""
|
164
161
|
|
165
|
-
msgid "Could not receive data:
|
166
|
-
msgstr ""
|
167
|
-
|
168
|
-
msgid "Could not receive data: ${error && error.message}"
|
162
|
+
msgid "Could not receive data: %s"
|
169
163
|
msgstr ""
|
170
164
|
|
171
165
|
msgid "Cron line"
|
@@ -547,7 +541,7 @@ msgstr ""
|
|
547
541
|
msgid "Select Action"
|
548
542
|
msgstr ""
|
549
543
|
|
550
|
-
msgid "Select
|
544
|
+
msgid "Select all {count} tasks"
|
551
545
|
msgstr ""
|
552
546
|
|
553
547
|
msgid "Select row"
|
@@ -568,6 +562,9 @@ msgstr ""
|
|
568
562
|
msgid "Start at"
|
569
563
|
msgstr ""
|
570
564
|
|
565
|
+
msgid "Start auto-reloading"
|
566
|
+
msgstr ""
|
567
|
+
|
571
568
|
msgid "Start before"
|
572
569
|
msgstr ""
|
573
570
|
|
@@ -583,6 +580,9 @@ msgstr ""
|
|
583
580
|
msgid "Step Canceled"
|
584
581
|
msgstr ""
|
585
582
|
|
583
|
+
msgid "Stop auto-reloading"
|
584
|
+
msgstr ""
|
585
|
+
|
586
586
|
msgid "Stop selected stoppable tasks"
|
587
587
|
msgstr ""
|
588
588
|
|
@@ -845,9 +845,6 @@ msgstr ""
|
|
845
845
|
msgid "task has to be resumable"
|
846
846
|
msgstr ""
|
847
847
|
|
848
|
-
msgid "tasks."
|
849
|
-
msgstr ""
|
850
|
-
|
851
848
|
msgid "time"
|
852
849
|
msgstr ""
|
853
850
|
|
data/locale/es/foreman_tasks.po
CHANGED
@@ -20,9 +20,6 @@ msgstr ""
|
|
20
20
|
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 :"
|
21
21
|
" 2;\n"
|
22
22
|
|
23
|
-
msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
24
|
-
msgstr "${taskReload ? 'Stop' : 'Start'} auto-recarga"
|
25
|
-
|
26
23
|
msgid "%(last)s Last %(time)s"
|
27
24
|
msgstr "%(last)s Última %(time)s"
|
28
25
|
|
@@ -74,8 +71,8 @@ msgstr "Filtros activos:"
|
|
74
71
|
msgid "Active or disabled recurring logic with purpose %s already exists"
|
75
72
|
msgstr "Lógica recurrente activa o desactivada con el propósito %s ya existe"
|
76
73
|
|
77
|
-
msgid "All %s tasks are selected.
|
78
|
-
msgstr "
|
74
|
+
msgid "All %s tasks are selected."
|
75
|
+
msgstr ""
|
79
76
|
|
80
77
|
msgid "All proxies with the required feature are unavailable at the moment"
|
81
78
|
msgstr "Ningún proxy con función obligatoria está disponible en este momento"
|
@@ -165,11 +162,8 @@ msgstr "Conflictos con las tareas:"
|
|
165
162
|
msgid "Could not cancel step."
|
166
163
|
msgstr "No se pudo cancelar el paso."
|
167
164
|
|
168
|
-
msgid "Could not receive data:
|
169
|
-
msgstr "
|
170
|
-
|
171
|
-
msgid "Could not receive data: ${error && error.message}"
|
172
|
-
msgstr "No se han podido recibir datos: ${error && error.message}"
|
165
|
+
msgid "Could not receive data: %s"
|
166
|
+
msgstr ""
|
173
167
|
|
174
168
|
msgid "Cron line"
|
175
169
|
msgstr "Línea Cron"
|
@@ -550,8 +544,8 @@ msgstr "Consulte %{link} para obtener más detalles sobre cómo resolver el prob
|
|
550
544
|
msgid "Select Action"
|
551
545
|
msgstr "Seleccionar una acción"
|
552
546
|
|
553
|
-
msgid "Select
|
554
|
-
msgstr "
|
547
|
+
msgid "Select all {count} tasks"
|
548
|
+
msgstr ""
|
555
549
|
|
556
550
|
msgid "Select row"
|
557
551
|
msgstr "Seleccionar fila"
|
@@ -571,6 +565,9 @@ msgstr "Mostrar detalles de lógica recurrente"
|
|
571
565
|
msgid "Start at"
|
572
566
|
msgstr "Iniciar en"
|
573
567
|
|
568
|
+
msgid "Start auto-reloading"
|
569
|
+
msgstr ""
|
570
|
+
|
574
571
|
msgid "Start before"
|
575
572
|
msgstr "Iniciar antes"
|
576
573
|
|
@@ -586,6 +583,9 @@ msgstr "Estado"
|
|
586
583
|
msgid "Step Canceled"
|
587
584
|
msgstr "Paso cancelado"
|
588
585
|
|
586
|
+
msgid "Stop auto-reloading"
|
587
|
+
msgstr ""
|
588
|
+
|
589
589
|
msgid "Stop selected stoppable tasks"
|
590
590
|
msgstr "Detener las tareas detenibles seleccionadas"
|
591
591
|
|
@@ -849,9 +849,6 @@ msgstr "la tarea se debe poder cancelar"
|
|
849
849
|
msgid "task has to be resumable"
|
850
850
|
msgstr "la tarea se debe poder reanudar"
|
851
851
|
|
852
|
-
msgid "tasks."
|
853
|
-
msgstr "tareas."
|
854
|
-
|
855
852
|
msgid "time"
|
856
853
|
msgstr "hora"
|
857
854
|
|
data/locale/foreman_tasks.pot
CHANGED
@@ -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:
|
12
|
-
"PO-Revision-Date:
|
11
|
+
"POT-Creation-Date: 2023-02-15 19:50+0100\n"
|
12
|
+
"PO-Revision-Date: 2023-02-15 19:50+0100\n"
|
13
13
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
14
14
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
15
15
|
"Language: \n"
|
@@ -424,24 +424,24 @@ msgstr ""
|
|
424
424
|
msgid "Conflicts with tasks:"
|
425
425
|
msgstr ""
|
426
426
|
|
427
|
-
#: ../app/models/foreman_tasks/recurring_logic.rb:
|
427
|
+
#: ../app/models/foreman_tasks/recurring_logic.rb:149
|
428
428
|
msgid "Active"
|
429
429
|
msgstr ""
|
430
430
|
|
431
|
-
#: ../app/models/foreman_tasks/recurring_logic.rb:
|
431
|
+
#: ../app/models/foreman_tasks/recurring_logic.rb:151
|
432
432
|
msgid "Cancelled"
|
433
433
|
msgstr ""
|
434
434
|
|
435
|
-
#: ../app/models/foreman_tasks/recurring_logic.rb:
|
435
|
+
#: ../app/models/foreman_tasks/recurring_logic.rb:153
|
436
436
|
msgid "Finished"
|
437
437
|
msgstr ""
|
438
438
|
|
439
|
-
#: ../app/models/foreman_tasks/recurring_logic.rb:
|
439
|
+
#: ../app/models/foreman_tasks/recurring_logic.rb:155
|
440
440
|
#: ../webpack/ForemanTasks/Components/TasksTable/TasksTableSelectors.js:39
|
441
441
|
msgid "Disabled"
|
442
442
|
msgstr ""
|
443
443
|
|
444
|
-
#: ../app/models/foreman_tasks/recurring_logic.rb:
|
444
|
+
#: ../app/models/foreman_tasks/recurring_logic.rb:157
|
445
445
|
#: ../app/models/foreman_tasks/task.rb:130
|
446
446
|
#: ../app/views/foreman_tasks/tasks/dashboard/_latest_tasks_in_error_warning.html.erb:14
|
447
447
|
#: ../app/views/foreman_tasks/tasks/dashboard/_tasks_status.html.erb:14
|
@@ -919,7 +919,11 @@ msgid "Setting is off"
|
|
919
919
|
msgstr ""
|
920
920
|
|
921
921
|
#: ../webpack/ForemanTasks/Components/TaskDetails/Components/TaskButtons.js:51
|
922
|
-
msgid "
|
922
|
+
msgid "Stop auto-reloading"
|
923
|
+
msgstr ""
|
924
|
+
|
925
|
+
#: ../webpack/ForemanTasks/Components/TaskDetails/Components/TaskButtons.js:51
|
926
|
+
msgid "Start auto-reloading"
|
923
927
|
msgstr ""
|
924
928
|
|
925
929
|
#: ../webpack/ForemanTasks/Components/TaskDetails/Components/TaskButtons.js:62
|
@@ -956,7 +960,8 @@ msgid "Errors:"
|
|
956
960
|
msgstr ""
|
957
961
|
|
958
962
|
#: ../webpack/ForemanTasks/Components/TaskDetails/TaskDetails.js:52
|
959
|
-
|
963
|
+
#: ../webpack/ForemanTasks/Components/TasksTable/TasksTable.js:71
|
964
|
+
msgid "Could not receive data: %s"
|
960
965
|
msgstr ""
|
961
966
|
|
962
967
|
#: ../webpack/ForemanTasks/Components/TaskDetails/TaskDetails.js:61
|
@@ -1196,22 +1201,17 @@ msgid "Yes"
|
|
1196
1201
|
msgstr ""
|
1197
1202
|
|
1198
1203
|
#:
|
1199
|
-
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:
|
1200
|
-
msgid "Select
|
1204
|
+
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:26
|
1205
|
+
msgid "Select all {count} tasks"
|
1201
1206
|
msgstr ""
|
1202
1207
|
|
1203
1208
|
#:
|
1204
|
-
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:
|
1205
|
-
msgid "tasks."
|
1209
|
+
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:33
|
1210
|
+
msgid "All %s tasks are selected."
|
1206
1211
|
msgstr ""
|
1207
1212
|
|
1208
1213
|
#:
|
1209
|
-
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:
|
1210
|
-
msgid "All %s tasks are selected. "
|
1211
|
-
msgstr ""
|
1212
|
-
|
1213
|
-
#:
|
1214
|
-
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:29
|
1214
|
+
#: ../webpack/ForemanTasks/Components/TasksTable/Components/SelectAllAlert.js:35
|
1215
1215
|
msgid "Undo selection"
|
1216
1216
|
msgstr ""
|
1217
1217
|
|
@@ -1256,10 +1256,6 @@ msgstr ""
|
|
1256
1256
|
msgid "Canceling with force selected tasks, this might take a while"
|
1257
1257
|
msgstr ""
|
1258
1258
|
|
1259
|
-
#: ../webpack/ForemanTasks/Components/TasksTable/TasksTable.js:71
|
1260
|
-
msgid "Could not receive data: ${error && error.message}"
|
1261
|
-
msgstr ""
|
1262
|
-
|
1263
1259
|
#: ../webpack/ForemanTasks/Components/TasksTable/TasksTable.js:81
|
1264
1260
|
msgid "No Tasks"
|
1265
1261
|
msgstr ""
|
data/locale/fr/foreman_tasks.po
CHANGED
@@ -19,9 +19,6 @@ msgstr ""
|
|
19
19
|
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 100000"
|
20
20
|
"0 == 0 ? 1 : 2;\n"
|
21
21
|
|
22
|
-
msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
23
|
-
msgstr "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
24
|
-
|
25
22
|
msgid "%(last)s Last %(time)s"
|
26
23
|
msgstr "%(last)s Dernier %(time)s"
|
27
24
|
|
@@ -73,8 +70,8 @@ msgstr "Filtres actifs :"
|
|
73
70
|
msgid "Active or disabled recurring logic with purpose %s already exists"
|
74
71
|
msgstr "La logique récurrente active ou désactivée avec l'objectif %s existe déjà."
|
75
72
|
|
76
|
-
msgid "All %s tasks are selected.
|
77
|
-
msgstr "
|
73
|
+
msgid "All %s tasks are selected."
|
74
|
+
msgstr ""
|
78
75
|
|
79
76
|
msgid "All proxies with the required feature are unavailable at the moment"
|
80
77
|
msgstr "Les proxys possédant les fonctionnalités demandées ne sont pas disponibles actuellement"
|
@@ -164,11 +161,8 @@ msgstr "Conflits avec les tâches :"
|
|
164
161
|
msgid "Could not cancel step."
|
165
162
|
msgstr "N’a pas pu annuler l'étape."
|
166
163
|
|
167
|
-
msgid "Could not receive data:
|
168
|
-
msgstr "
|
169
|
-
|
170
|
-
msgid "Could not receive data: ${error && error.message}"
|
171
|
-
msgstr "Impossible de recevoir les données : ${error && error.message}"
|
164
|
+
msgid "Could not receive data: %s"
|
165
|
+
msgstr ""
|
172
166
|
|
173
167
|
msgid "Cron line"
|
174
168
|
msgstr "Ligne Cron"
|
@@ -549,8 +543,8 @@ msgstr "Voir %{link} pour plus de détails sur la manière de résoudre le probl
|
|
549
543
|
msgid "Select Action"
|
550
544
|
msgstr "Choisir l'action"
|
551
545
|
|
552
|
-
msgid "Select
|
553
|
-
msgstr "
|
546
|
+
msgid "Select all {count} tasks"
|
547
|
+
msgstr ""
|
554
548
|
|
555
549
|
msgid "Select row"
|
556
550
|
msgstr "Sélectionner une ligne"
|
@@ -570,6 +564,9 @@ msgstr "Afficher les détails des logiques récurrentes"
|
|
570
564
|
msgid "Start at"
|
571
565
|
msgstr "Démarre à"
|
572
566
|
|
567
|
+
msgid "Start auto-reloading"
|
568
|
+
msgstr ""
|
569
|
+
|
573
570
|
msgid "Start before"
|
574
571
|
msgstr "Démarre avant"
|
575
572
|
|
@@ -585,6 +582,9 @@ msgstr "État"
|
|
585
582
|
msgid "Step Canceled"
|
586
583
|
msgstr "Étape annulée"
|
587
584
|
|
585
|
+
msgid "Stop auto-reloading"
|
586
|
+
msgstr ""
|
587
|
+
|
588
588
|
msgid "Stop selected stoppable tasks"
|
589
589
|
msgstr "Arrêter les tâches sélectionnées pouvant être arrêtées"
|
590
590
|
|
@@ -848,9 +848,6 @@ msgstr "la tâche doit pouvoir être annulée"
|
|
848
848
|
msgid "task has to be resumable"
|
849
849
|
msgstr "la tâche doit pouvoir être reprise"
|
850
850
|
|
851
|
-
msgid "tasks."
|
852
|
-
msgstr "tâches."
|
853
|
-
|
854
851
|
msgid "time"
|
855
852
|
msgstr "heure"
|
856
853
|
|
data/locale/ja/foreman_tasks.po
CHANGED
@@ -18,9 +18,6 @@ msgstr ""
|
|
18
18
|
"Language: ja\n"
|
19
19
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
20
20
|
|
21
|
-
msgid "${taskReload ? 'Stop' : 'Start'} auto-reloading"
|
22
|
-
msgstr "${taskReload ? 'Stop' : 'Start'} 自動再読み込み"
|
23
|
-
|
24
21
|
msgid "%(last)s Last %(time)s"
|
25
22
|
msgstr "過去 %(time)s で %(last)s 件"
|
26
23
|
|
@@ -72,8 +69,8 @@ msgstr "アクティブなフィルター:"
|
|
72
69
|
msgid "Active or disabled recurring logic with purpose %s already exists"
|
73
70
|
msgstr "目的が %s のアクティブまたは無効な再帰論理がすでに存在します"
|
74
71
|
|
75
|
-
msgid "All %s tasks are selected.
|
76
|
-
msgstr "
|
72
|
+
msgid "All %s tasks are selected."
|
73
|
+
msgstr ""
|
77
74
|
|
78
75
|
msgid "All proxies with the required feature are unavailable at the moment"
|
79
76
|
msgstr "現在、必要な機能があるすべてのプロキシーが利用できません"
|
@@ -163,11 +160,8 @@ msgstr "タスクとの競合:"
|
|
163
160
|
msgid "Could not cancel step."
|
164
161
|
msgstr "ステップをキャンセルできませんでした。"
|
165
162
|
|
166
|
-
msgid "Could not receive data:
|
167
|
-
msgstr "
|
168
|
-
|
169
|
-
msgid "Could not receive data: ${error && error.message}"
|
170
|
-
msgstr "データを受信できませんでした: ${error && error.message}"
|
163
|
+
msgid "Could not receive data: %s"
|
164
|
+
msgstr ""
|
171
165
|
|
172
166
|
msgid "Cron line"
|
173
167
|
msgstr "cron 行"
|
@@ -548,8 +542,8 @@ msgstr "問題解決の詳細については、%{link} を参照してくださ
|
|
548
542
|
msgid "Select Action"
|
549
543
|
msgstr "アクションの選択"
|
550
544
|
|
551
|
-
msgid "Select
|
552
|
-
msgstr "
|
545
|
+
msgid "Select all {count} tasks"
|
546
|
+
msgstr ""
|
553
547
|
|
554
548
|
msgid "Select row"
|
555
549
|
msgstr "行の選択"
|
@@ -569,6 +563,9 @@ msgstr "再帰論理の詳細表示"
|
|
569
563
|
msgid "Start at"
|
570
564
|
msgstr "開始時刻"
|
571
565
|
|
566
|
+
msgid "Start auto-reloading"
|
567
|
+
msgstr ""
|
568
|
+
|
572
569
|
msgid "Start before"
|
573
570
|
msgstr "次の時刻よりも前に開始"
|
574
571
|
|
@@ -584,6 +581,9 @@ msgstr "状態"
|
|
584
581
|
msgid "Step Canceled"
|
585
582
|
msgstr "ステップがキャンセルされました"
|
586
583
|
|
584
|
+
msgid "Stop auto-reloading"
|
585
|
+
msgstr ""
|
586
|
+
|
587
587
|
msgid "Stop selected stoppable tasks"
|
588
588
|
msgstr "選択した停止可能なタスクを停止"
|
589
589
|
|
@@ -845,9 +845,6 @@ msgstr "タスクはキャンセル可能でなければなりません"
|
|
845
845
|
msgid "task has to be resumable"
|
846
846
|
msgstr "タスクは再開可能でなければなりません"
|
847
847
|
|
848
|
-
msgid "tasks."
|
849
|
-
msgstr "タスク。"
|
850
|
-
|
851
848
|
msgid "time"
|
852
849
|
msgstr "時間"
|
853
850
|
|