foreman-tasks 7.1.0 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/js_tests.yml +3 -1
- data/app/lib/actions/foreman/host/import_facts.rb +1 -6
- data/app/models/foreman_tasks/task/dynflow_task.rb +10 -5
- data/app/views/foreman_tasks/recurring_logics/index.html.erb +1 -1
- data/lib/foreman_tasks/cleaner.rb +1 -1
- data/lib/foreman_tasks/dynflow/configuration.rb +1 -1
- data/lib/foreman_tasks/engine.rb +4 -1
- data/lib/foreman_tasks/version.rb +1 -1
- data/lib/tasks/gettext.rake +1 -0
- data/locale/action_names.rb +2 -3
- data/locale/de/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/de/foreman_tasks.po +873 -0
- data/locale/en/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/en/foreman_tasks.po +4 -7
- data/locale/es/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/es/foreman_tasks.po +874 -0
- data/locale/foreman_tasks.pot +20 -25
- data/locale/fr/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/fr/foreman_tasks.po +71 -72
- data/locale/ja/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/ja/foreman_tasks.po +70 -74
- data/locale/ka/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/ka/foreman_tasks.po +871 -0
- data/locale/ko/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/ko/foreman_tasks.po +869 -0
- data/locale/pt_BR/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/pt_BR/foreman_tasks.po +874 -0
- data/locale/ru/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/ru/foreman_tasks.po +873 -0
- data/locale/zh_CN/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/zh_CN/foreman_tasks.po +157 -161
- data/locale/zh_TW/LC_MESSAGES/foreman_tasks.mo +0 -0
- data/locale/zh_TW/foreman_tasks.po +870 -0
- data/test/unit/task_test.rb +5 -8
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c5d611523d1262879b33177bf9c1f4c394142fee8433c2fda798cb4063b60f99
|
4
|
+
data.tar.gz: 1e7974c6fde725d0fe46dcffd6793c7f4b078c3c6e2e3429dce42180e61e4044
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f358b767cf2c8f2f6d31a43aa6c1fca27a6db053311d4540cea15d11c7c76758db192d5b39ecef17fcfc9d89e9e99a233c6b3d14fadd41efcca709aea37704b
|
7
|
+
data.tar.gz: 9c08bf19e2f8bdc05add76a9b8e9b783407b03ba99f0c47325454468a4654e44296f8dafd87e40a5d58ed771edb58900c0ac41738202efce5043193b5580a50c
|
@@ -8,12 +8,7 @@ module Actions
|
|
8
8
|
|
9
9
|
def plan(_host_type, host_name, facts, certname, proxy_id)
|
10
10
|
facts['domain'].try(:downcase!)
|
11
|
-
host =
|
12
|
-
::Host::Managed.import_host(host_name, certname)
|
13
|
-
else
|
14
|
-
# backwards compatibility
|
15
|
-
::Host::Managed.import_host(host_name, facts['_type'], certname, proxy_id)
|
16
|
-
end
|
11
|
+
host = ::Host::Managed.import_host(host_name, certname)
|
17
12
|
host.save(:validate => false) if host.new_record?
|
18
13
|
action_subject(host, :facts => facts.to_unsafe_h, :proxy_id => proxy_id)
|
19
14
|
if host.build?
|
@@ -219,19 +219,24 @@ module ForemanTasks
|
|
219
219
|
def self.consistency_check
|
220
220
|
fixed_count = 0
|
221
221
|
logger = Foreman::Logging.logger('foreman-tasks')
|
222
|
-
|
223
|
-
|
222
|
+
|
223
|
+
# Dynflow execution plans which are not stopped at this point should
|
224
|
+
# eventually get moving and their tasks should eventually get back in sync
|
225
|
+
# as the execution plans run
|
226
|
+
joins('LEFT JOIN dynflow_execution_plans ON foreman_tasks_tasks.external_id = dynflow_execution_plans.uuid::varchar')
|
227
|
+
.where('foreman_tasks_tasks.state_updated_at < dynflow_execution_plans.ended_at')
|
228
|
+
.find_each do |task|
|
229
|
+
changes = task.update_from_dynflow(task.execution_plan.to_hash)
|
224
230
|
unless changes.empty?
|
225
231
|
fixed_count += 1
|
226
232
|
logger.warn('Task %s updated at consistency check: %s' % [task.id, changes.inspect])
|
227
233
|
end
|
228
234
|
rescue => e
|
229
|
-
# if we fail updating the data from dynflow, it usually means there is something
|
230
|
-
# odd with the data consistency and at this point it is not possible to resume, switching
|
231
|
-
# the task to stopped/error
|
232
235
|
task.update(:state => 'stopped', :result => 'error')
|
233
236
|
Foreman::Logging.exception("Failed at consistency check for task #{task.id}", e, :logger => 'foreman-tasks')
|
234
237
|
end
|
238
|
+
# Wipe tasks left behind by now stopped tasks
|
239
|
+
ForemanTasks::Lock.left_joins(:task).merge(where(:state => 'stopped')).destroy_all
|
235
240
|
fixed_count
|
236
241
|
end
|
237
242
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<% title _("Recurring logics") %>
|
2
|
-
<% title_actions
|
2
|
+
<% title_actions help_button %>
|
3
3
|
|
4
4
|
<% if @errors %>
|
5
5
|
<%= alert(:class => 'alert-info', :id => 'multiple-alert', :close => false, :header => '', :text => @errors) %>
|
@@ -84,7 +84,7 @@ module ForemanTasks
|
|
84
84
|
|
85
85
|
def self.cleanup_settings
|
86
86
|
return @cleanup_settings if @cleanup_settings
|
87
|
-
@cleanup_settings = SETTINGS
|
87
|
+
@cleanup_settings = SETTINGS.dig(:'foreman-tasks', :cleanup) || {}
|
88
88
|
end
|
89
89
|
|
90
90
|
def self.actions_by_rules(action_rules)
|
@@ -16,7 +16,7 @@ module ForemanTasks
|
|
16
16
|
:backup_deleted_plans => true,
|
17
17
|
:backup_dir => default_backup_dir,
|
18
18
|
}
|
19
|
-
settings = SETTINGS
|
19
|
+
settings = SETTINGS.dig(:'foreman-tasks', :backup)
|
20
20
|
backup_options.merge!(settings) if settings
|
21
21
|
@backup_settings = with_environment_override backup_options
|
22
22
|
end
|
data/lib/foreman_tasks/engine.rb
CHANGED
@@ -166,7 +166,10 @@ module ForemanTasks
|
|
166
166
|
world.middleware.use Actions::Middleware::KeepCurrentUser, :before => ::Dynflow::Middleware::Common::Transaction
|
167
167
|
world.middleware.use Actions::Middleware::KeepCurrentTimezone
|
168
168
|
world.middleware.use Actions::Middleware::KeepCurrentRequestID
|
169
|
-
world.middleware.use ::Actions::Middleware::LoadSettingValues
|
169
|
+
world.middleware.use ::Actions::Middleware::LoadSettingValues
|
170
|
+
end
|
171
|
+
::ForemanTasks.dynflow.config.on_init(true) do
|
172
|
+
::ForemanTasks::Task::DynflowTask.consistency_check
|
170
173
|
end
|
171
174
|
end
|
172
175
|
|
data/lib/tasks/gettext.rake
CHANGED
data/locale/action_names.rb
CHANGED
Binary file
|