foreman_openscap 0.10.4 → 0.11.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.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/api/v2/compliance/scap_contents_controller.rb +2 -1
  3. data/app/controllers/api/v2/compliance/tailoring_files_controller.rb +2 -1
  4. data/app/controllers/concerns/foreman_openscap/body_log_extensions.rb +18 -0
  5. data/app/controllers/concerns/foreman_openscap/hosts_controller_extensions.rb +1 -1
  6. data/app/controllers/openscap_proxies_controller.rb +2 -11
  7. data/app/controllers/policies_controller.rb +2 -2
  8. data/app/helpers/arf_reports_helper.rb +6 -0
  9. data/app/lib/proxy_api/openscap.rb +8 -0
  10. data/app/models/concerns/foreman_openscap/compliance_status_scoped_search.rb +72 -11
  11. data/app/models/concerns/foreman_openscap/host_extensions.rb +48 -2
  12. data/app/models/concerns/foreman_openscap/log_extensions.rb +4 -0
  13. data/app/models/concerns/foreman_openscap/openscap_proxy_core_extensions.rb +1 -1
  14. data/app/models/foreman_openscap/arf_report.rb +2 -0
  15. data/app/services/proxy_status/openscap_spool.rb +13 -0
  16. data/app/validators/concerns/foreman_openscap/bookmark_controller_validator_extensions.rb +19 -0
  17. data/app/views/arf_reports/_output.html.erb +5 -3
  18. data/app/views/compliance_hosts/show.html.erb +9 -7
  19. data/app/views/smart_proxies/_openscap_spool.html.erb +4 -4
  20. data/app/views/smart_proxies/plugins/_openscap.html.erb +1 -1
  21. data/lib/foreman_openscap/engine.rb +11 -2
  22. data/lib/foreman_openscap/version.rb +1 -1
  23. data/locale/action_names.rb +69 -0
  24. data/locale/de/LC_MESSAGES/foreman_openscap.mo +0 -0
  25. data/locale/de/foreman_openscap.edit.po +1419 -0
  26. data/locale/de/foreman_openscap.po +263 -17
  27. data/locale/de/foreman_openscap.po.time_stamp +0 -0
  28. data/locale/en_GB/LC_MESSAGES/foreman_openscap.mo +0 -0
  29. data/locale/en_GB/foreman_openscap.edit.po +1419 -0
  30. data/locale/en_GB/foreman_openscap.po +263 -17
  31. data/locale/en_GB/foreman_openscap.po.time_stamp +0 -0
  32. data/locale/es/LC_MESSAGES/foreman_openscap.mo +0 -0
  33. data/locale/es/foreman_openscap.edit.po +1419 -0
  34. data/locale/es/foreman_openscap.po +263 -17
  35. data/locale/es/foreman_openscap.po.time_stamp +0 -0
  36. data/locale/foreman_openscap.pot +438 -97
  37. data/locale/fr/LC_MESSAGES/foreman_openscap.mo +0 -0
  38. data/locale/fr/foreman_openscap.edit.po +1419 -0
  39. data/locale/fr/foreman_openscap.po +263 -17
  40. data/locale/fr/foreman_openscap.po.time_stamp +0 -0
  41. data/locale/gl/LC_MESSAGES/foreman_openscap.mo +0 -0
  42. data/locale/gl/foreman_openscap.edit.po +1419 -0
  43. data/locale/gl/foreman_openscap.po +263 -17
  44. data/locale/gl/foreman_openscap.po.time_stamp +0 -0
  45. data/locale/it/LC_MESSAGES/foreman_openscap.mo +0 -0
  46. data/locale/it/foreman_openscap.edit.po +1419 -0
  47. data/locale/it/foreman_openscap.po +263 -17
  48. data/locale/it/foreman_openscap.po.time_stamp +0 -0
  49. data/locale/ja/LC_MESSAGES/foreman_openscap.mo +0 -0
  50. data/locale/ja/foreman_openscap.edit.po +1419 -0
  51. data/locale/ja/foreman_openscap.po +263 -17
  52. data/locale/ja/foreman_openscap.po.time_stamp +0 -0
  53. data/locale/ko/LC_MESSAGES/foreman_openscap.mo +0 -0
  54. data/locale/ko/foreman_openscap.edit.po +1419 -0
  55. data/locale/ko/foreman_openscap.po +263 -17
  56. data/locale/ko/foreman_openscap.po.time_stamp +0 -0
  57. data/locale/pt_BR/LC_MESSAGES/foreman_openscap.mo +0 -0
  58. data/locale/pt_BR/foreman_openscap.edit.po +1419 -0
  59. data/locale/pt_BR/foreman_openscap.po +263 -17
  60. data/locale/pt_BR/foreman_openscap.po.time_stamp +0 -0
  61. data/locale/ru/LC_MESSAGES/foreman_openscap.mo +0 -0
  62. data/locale/ru/foreman_openscap.edit.po +1420 -0
  63. data/locale/ru/foreman_openscap.po +263 -17
  64. data/locale/ru/foreman_openscap.po.time_stamp +0 -0
  65. data/locale/sv_SE/LC_MESSAGES/foreman_openscap.mo +0 -0
  66. data/locale/sv_SE/foreman_openscap.edit.po +1419 -0
  67. data/locale/sv_SE/foreman_openscap.po +263 -17
  68. data/locale/sv_SE/foreman_openscap.po.time_stamp +0 -0
  69. data/locale/zh_CN/LC_MESSAGES/foreman_openscap.mo +0 -0
  70. data/locale/zh_CN/foreman_openscap.edit.po +1419 -0
  71. data/locale/zh_CN/foreman_openscap.po +263 -17
  72. data/locale/zh_CN/foreman_openscap.po.time_stamp +0 -0
  73. data/locale/zh_TW/LC_MESSAGES/foreman_openscap.mo +0 -0
  74. data/locale/zh_TW/foreman_openscap.edit.po +1419 -0
  75. data/locale/zh_TW/foreman_openscap.po +263 -17
  76. data/locale/zh_TW/foreman_openscap.po.time_stamp +0 -0
  77. data/test/factories/compliance_log_factory.rb +7 -0
  78. data/test/functional/api/v2/compliance/arf_reports_controller_test.rb +91 -0
  79. data/test/functional/openscap_proxies_controller_test.rb +3 -3
  80. data/test/test_plugin_helper.rb +16 -0
  81. data/test/unit/arf_report_test.rb +13 -0
  82. data/test/unit/concerns/host_extensions_test.rb +52 -0
  83. metadata +32 -4
  84. data/app/assets/javascripts/foreman_openscap/openscap_proxy.js +0 -7
  85. data/app/helpers/concerns/foreman_openscap/lookup_keys_helper_extensions.rb +0 -8
@@ -13,4 +13,11 @@ FactoryBot.define do
13
13
  msg.digest = Digest::SHA1.hexdigest(msg.value)
14
14
  end
15
15
  end
16
+
17
+ factory :compliance_source, :class => :source do
18
+ sequence(:value) { |n| "source#{n}" }
19
+ after(:build) do |source|
20
+ source.digest = Digest::SHA1.hexdigest(source.value)
21
+ end
22
+ end
16
23
  end
@@ -313,6 +313,97 @@ class Api::V2::Compliance::ArfReportsControllerTest < ActionController::TestCase
313
313
  end
314
314
  end
315
315
 
316
+ test "should find reports with rule name" do
317
+ reports_cleanup
318
+ host = FactoryBot.create(:compliance_host)
319
+ rule_name = 'xccdf_org.something_installed'
320
+ rule_names_1 = ['xccdf_org.something_tested', rule_name]
321
+ rule_names_2 = ['xccdf_org.nothing', 'xccdf_org.whatever']
322
+ rule_results_1 = ['fail', 'pass']
323
+ rule_results_2 = ['fail', 'fail']
324
+ report = create_report_with_rules(host, rule_names_1, rule_results_1)
325
+ create_report_with_rules(host, rule_names_2, rule_results_2)
326
+
327
+ get :index, :params => { :search => "xccdf_rule_name=#{rule_name}" }, :session => set_session_user
328
+ response = ActiveSupport::JSON.decode(@response.body)
329
+ assert_response :success
330
+ assert_equal 1, response['results'].count
331
+ assert_equal report.id, response['results'].first["id"].to_i
332
+ end
333
+
334
+ test "should find reports by rule with fail" do
335
+ reports_cleanup
336
+ host = FactoryBot.create(:compliance_host)
337
+ rule_name = 'xccdf_org.something_installed'
338
+ rule_names_1 = [rule_name, 'xccdf_org.nothing', 'xccdf_org.othered']
339
+ rule_names_2 = [rule_name, 'xccdf_org.whatever', 'xccdf_org.original']
340
+ rule_results_1 = ['fail', 'pass', 'fixed']
341
+ rule_results_2 = ['pass', 'pass', 'unknown']
342
+ report = create_report_with_rules(host, rule_names_1, rule_results_1)
343
+ create_report_with_rules(host, rule_names_2, rule_results_2)
344
+
345
+ get :index, :params => { :search => "xccdf_rule_failed=#{rule_name}" }, :session => set_session_user
346
+ response = ActiveSupport::JSON.decode(@response.body)
347
+ assert_response :success
348
+ assert_equal 1, response['results'].count
349
+ assert_equal report.id, response['results'].first["id"].to_i
350
+ end
351
+
352
+ test "should find reports by rule with pass" do
353
+ reports_cleanup
354
+ host = FactoryBot.create(:compliance_host)
355
+ rule_name = 'xccdf_org.something_installed'
356
+ rule_names_1 = [rule_name, 'xccdf_org.nothing', 'xccdf_org.othered']
357
+ rule_names_2 = [rule_name, 'xccdf_org.whatever', 'xccdf_org.original']
358
+ rule_results_1 = ['pass', 'fail', 'fixed']
359
+ rule_results_2 = ['notchecked', 'fail', 'unknown']
360
+ report = create_report_with_rules(host, rule_names_1, rule_results_1)
361
+ create_report_with_rules(host, rule_names_2, rule_results_2)
362
+
363
+ get :index, :params => { :search => "xccdf_rule_passed=#{rule_name}" }, :session => set_session_user
364
+ response = ActiveSupport::JSON.decode(@response.body)
365
+ assert_response :success
366
+ assert_equal 1, response['results'].count
367
+ assert_equal report.id, response['results'].first["id"].to_i
368
+ end
369
+
370
+ test "should find reports by rule with othered" do
371
+ reports_cleanup
372
+ host = FactoryBot.create(:compliance_host)
373
+ rule_name = 'xccdf_org.something_installed'
374
+ rule_names_1 = [rule_name, 'xccdf_org.nothing', 'xccdf_org.othered']
375
+ rule_names_2 = [rule_name, 'xccdf_org.whatever', 'xccdf_org.original']
376
+ rule_results_1 = ['notapplicable', 'fail', 'fixed']
377
+ rule_results_2 = ['pass', 'fail', 'unknown']
378
+ report = create_report_with_rules(host, rule_names_1, rule_results_1)
379
+ create_report_with_rules(host, rule_names_2, rule_results_2)
380
+
381
+ get :index, :params => { :search => "xccdf_rule_othered=#{rule_name}" }, :session => set_session_user
382
+ response = ActiveSupport::JSON.decode(@response.body)
383
+ assert_response :success
384
+ assert_equal 1, response['results'].count
385
+ assert_equal report.id, response['results'].first["id"].to_i
386
+ end
387
+
388
+ test "should find reports with rule name" do
389
+ reports_cleanup
390
+ host = FactoryBot.create(:compliance_host)
391
+ rule_name = 'xccdf_org.something_installed'
392
+ rule_names_1 = ['xccdf_org.something_tested', rule_name]
393
+ rule_names_2 = ['xccdf_org.nothing', 'xccdf_org.whatever']
394
+ rule_results_1 = ['fail', 'pass']
395
+ rule_results_2 = ['fail', 'fail']
396
+ host = FactoryBot.create(:compliance_host)
397
+ report = create_report_with_rules(host, rule_names_1, rule_results_1)
398
+ create_report_with_rules(host, rule_names_2, rule_results_2)
399
+
400
+ get :index, :params => { :search => "xccdf_rule_name=#{rule_name}" }, :session => set_session_user
401
+ response = ActiveSupport::JSON.decode(@response.body)
402
+ assert_response :success
403
+ assert_equal 1, response['results'].count
404
+ assert_equal report.id, response['results'].first["id"].to_i
405
+ end
406
+
316
407
  private
317
408
 
318
409
  def reports_cleanup
@@ -6,11 +6,11 @@ class OpenscapProxiesControllerTest < ActionController::TestCase
6
6
  include ApplicationHelper
7
7
 
8
8
  test "should render spool error" do
9
- spool_error = { "timestamp" => 1_487_144_633.951_368, "level" => "ERROR", "message" => "Failed to parse Arf Report in test" }
10
- OpenscapProxiesController.any_instance.stubs(:find_spool_error).returns(spool_error)
9
+ spool_error = { "errors_count" => 4 }
10
+ ProxyStatus::OpenscapSpool.any_instance.stubs(:spool_status).returns(spool_error)
11
11
  proxy = FactoryBot.create(:openscap_proxy)
12
12
  get :openscap_spool, :params => { :id => proxy.id }, :session => set_session_user
13
13
  assert_template :partial => 'smart_proxies/_openscap_spool'
14
- assert @response.body.match(date_time_relative_value(Time.at(spool_error["timestamp"])))
14
+ assert @response.body.match('4 spool errors detected, inspect the appropriate file directly on proxy')
15
15
  end
16
16
  end
@@ -29,6 +29,20 @@ module ScapTestProxy
29
29
  end
30
30
  end
31
31
 
32
+ module ScapTestCommon
33
+ private
34
+
35
+ def create_report_with_rules(host, rule_names, rule_results)
36
+ raise "rule_names and rule_results should have the same length!" if rule_names.size != rule_results.size
37
+ report = FactoryBot.create(:arf_report, :host_id => host.id)
38
+ rule_names.each_with_index do |item, index|
39
+ source = FactoryBot.create(:compliance_source, :value => rule_names[index])
40
+ log = FactoryBot.create(:compliance_log, :source => source, :report => report, :result => rule_results[index])
41
+ end
42
+ report
43
+ end
44
+ end
45
+
32
46
  class ActionMailer::TestCase
33
47
  include ScapClientPuppetclass
34
48
  setup :skip_scap_callback
@@ -37,6 +51,7 @@ end
37
51
  class ActionController::TestCase
38
52
  include ScapClientPuppetclass
39
53
  include ScapTestProxy
54
+ include ScapTestCommon
40
55
 
41
56
  setup :add_smart_proxy, :skip_scap_callback
42
57
  end
@@ -44,6 +59,7 @@ end
44
59
  class ActiveSupport::TestCase
45
60
  include ScapClientPuppetclass
46
61
  include ScapTestProxy
62
+ include ScapTestCommon
47
63
 
48
64
  setup :add_smart_proxy, :skip_scap_callback
49
65
  end
@@ -165,6 +165,19 @@ module ForemanOpenscap
165
165
  refute ForemanOpenscap::ArfReport.all.include? report
166
166
  end
167
167
 
168
+ test 'should get reports by rule result' do
169
+ rule_name = 'xccdf_org.something_installed'
170
+ rule_names_1 = ['xccdf_org.something_tested', rule_name]
171
+ rule_names_2 = ['xccdf_org.nothing', 'xccdf_org.whatever']
172
+ rule_results_1 = ['fail', 'pass']
173
+ rule_results_2 = ['fail', 'fail']
174
+ host = FactoryBot.create(:compliance_host)
175
+ report_1 = create_report_with_rules(host, rule_names_1, rule_results_1)
176
+ report_2 = create_report_with_rules(host, rule_names_2, rule_results_2)
177
+ res = ForemanOpenscap::ArfReport.by_rule_result(rule_name, 'pass').first
178
+ assert_equal res, report_1
179
+ end
180
+
168
181
  private
169
182
 
170
183
  def create_logs_for_report(report, log_params)
@@ -75,6 +75,48 @@ class HostExtensionsTest < ActiveSupport::TestCase
75
75
  assert_include res, host_2
76
76
  end
77
77
 
78
+ test "should correctly find hosts based on rule result" do
79
+ rule_name = 'xccdf_org.something'
80
+ rule_names = [rule_name, 'xccdf_org.nothing']
81
+ rule_results_1 = ['pass', 'fail']
82
+ rule_results_2 = ['fail', 'fail']
83
+ rule_results_3 = ['notchecked', 'fail']
84
+ host_1 = setup_host_with_reports_and_rules([rule_names, rule_names], [rule_results_2, rule_results_1], @policy)
85
+ host_2 = setup_host_with_reports_and_rules([rule_names, rule_names], [rule_results_1, rule_results_2], @policy)
86
+ host_3 = setup_host_with_reports_and_rules([rule_names, rule_names], [rule_results_1, rule_results_3], @policy)
87
+
88
+ res = Host.search_for "passes_xccdf_rule = #{rule_name}"
89
+ assert_equal res.first, host_1
90
+
91
+ res = Host.search_for "fails_xccdf_rule = #{rule_name}"
92
+ assert_equal res.first, host_2
93
+
94
+ res = Host.search_for "others_xccdf_rule = #{rule_name}"
95
+ assert_equal res.first, host_3
96
+ end
97
+
98
+ context "find_with_any_policy" do
99
+ setup do
100
+ @host.destroy
101
+ policy, host, host_2 = setup_hosts_with_inherited_policy.values_at(:policy, :host, :host_2)
102
+ policy, host_3, host_4 = setup_hosts_with_policy.values_at(:policy, :host, :host_2)
103
+ @compliance_hosts = [host, host_2, host_3, host_4]
104
+ @host_without_policy = FactoryBot.create(:host)
105
+ end
106
+
107
+ test "should find compliance hosts" do
108
+ res = Host.search_for "is_compliance_host = true"
109
+ assert_equal 4, res.count
110
+ assert_empty(@compliance_hosts - res | res - @compliance_hosts)
111
+ end
112
+
113
+ test "should find all but compliance hosts" do
114
+ res = Host.search_for "is_compliance_host = false"
115
+ assert_equal 1, res.count
116
+ assert_equal @host_without_policy, res.first
117
+ end
118
+ end
119
+
78
120
  private
79
121
 
80
122
  def setup_hosts_with_policy
@@ -98,4 +140,14 @@ class HostExtensionsTest < ActiveSupport::TestCase
98
140
  host_2 = FactoryBot.create(:compliance_host, :hostgroup_id => child.id)
99
141
  { :policy => policy, :host => host, :host_2 => host_2 }
100
142
  end
143
+
144
+ def setup_host_with_reports_and_rules(rule_names_ary, rule_results_ary, policy)
145
+ raise "rule_names_ary must have the same length as rule_results_ary" if rule_names_ary.size != rule_results_ary.size
146
+ host = FactoryBot.create(:host)
147
+ rule_names_ary.each_with_index do |item, index|
148
+ report = create_report_with_rules host, rule_names_ary[index], rule_results_ary[index]
149
+ FactoryBot.create(:policy_arf_report, :policy_id => policy.id, :arf_report_id => report.id)
150
+ end
151
+ host
152
+ end
101
153
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_openscap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.4
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - slukasik@redhat.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-11 00:00:00.000000000 Z
11
+ date: 2018-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: deface
@@ -35,7 +35,6 @@ files:
35
35
  - README.md
36
36
  - app/assets/javascripts/foreman_openscap/arf_reports.js
37
37
  - app/assets/javascripts/foreman_openscap/load_report.js
38
- - app/assets/javascripts/foreman_openscap/openscap_proxy.js
39
38
  - app/assets/javascripts/foreman_openscap/period_selector.js
40
39
  - app/assets/javascripts/foreman_openscap/policy_edit.js
41
40
  - app/assets/javascripts/foreman_openscap/reports.js
@@ -54,6 +53,7 @@ files:
54
53
  - app/controllers/concerns/foreman/controller/parameters/scap_content.rb
55
54
  - app/controllers/concerns/foreman/controller/parameters/tailoring_file.rb
56
55
  - app/controllers/concerns/foreman_openscap/arf_reports_controller_common_extensions.rb
56
+ - app/controllers/concerns/foreman_openscap/body_log_extensions.rb
57
57
  - app/controllers/concerns/foreman_openscap/hosts_controller_extensions.rb
58
58
  - app/controllers/openscap_proxies_controller.rb
59
59
  - app/controllers/policies_controller.rb
@@ -65,7 +65,6 @@ files:
65
65
  - app/helpers/compliance_dashboard_helper.rb
66
66
  - app/helpers/compliance_hosts_helper.rb
67
67
  - app/helpers/concerns/foreman_openscap/hosts_helper_extensions.rb
68
- - app/helpers/concerns/foreman_openscap/lookup_keys_helper_extensions.rb
69
68
  - app/helpers/policies_helper.rb
70
69
  - app/helpers/policy_dashboard_helper.rb
71
70
  - app/helpers/tailoring_files_helper.rb
@@ -98,6 +97,8 @@ files:
98
97
  - app/services/foreman_openscap/openscap_proxy_version_check.rb
99
98
  - app/services/foreman_openscap/policy_dashboard/data.rb
100
99
  - app/services/foreman_openscap/report_dashboard/data.rb
100
+ - app/services/proxy_status/openscap_spool.rb
101
+ - app/validators/concerns/foreman_openscap/bookmark_controller_validator_extensions.rb
101
102
  - app/validators/foreman_openscap/data_stream_validator.rb
102
103
  - app/views/api/v2/compliance/arf_reports/base.json.rabl
103
104
  - app/views/api/v2/compliance/arf_reports/index.json.rabl
@@ -234,34 +235,61 @@ files:
234
235
  - lib/foreman_openscap/version.rb
235
236
  - lib/tasks/foreman_openscap_tasks.rake
236
237
  - locale/Makefile
238
+ - locale/action_names.rb
237
239
  - locale/de/LC_MESSAGES/foreman_openscap.mo
240
+ - locale/de/foreman_openscap.edit.po
238
241
  - locale/de/foreman_openscap.po
242
+ - locale/de/foreman_openscap.po.time_stamp
239
243
  - locale/en_GB/LC_MESSAGES/foreman_openscap.mo
244
+ - locale/en_GB/foreman_openscap.edit.po
240
245
  - locale/en_GB/foreman_openscap.po
246
+ - locale/en_GB/foreman_openscap.po.time_stamp
241
247
  - locale/es/LC_MESSAGES/foreman_openscap.mo
248
+ - locale/es/foreman_openscap.edit.po
242
249
  - locale/es/foreman_openscap.po
250
+ - locale/es/foreman_openscap.po.time_stamp
243
251
  - locale/foreman_openscap.pot
244
252
  - locale/fr/LC_MESSAGES/foreman_openscap.mo
253
+ - locale/fr/foreman_openscap.edit.po
245
254
  - locale/fr/foreman_openscap.po
255
+ - locale/fr/foreman_openscap.po.time_stamp
246
256
  - locale/gl/LC_MESSAGES/foreman_openscap.mo
257
+ - locale/gl/foreman_openscap.edit.po
247
258
  - locale/gl/foreman_openscap.po
259
+ - locale/gl/foreman_openscap.po.time_stamp
248
260
  - locale/it/LC_MESSAGES/foreman_openscap.mo
261
+ - locale/it/foreman_openscap.edit.po
249
262
  - locale/it/foreman_openscap.po
263
+ - locale/it/foreman_openscap.po.time_stamp
250
264
  - locale/ja/LC_MESSAGES/foreman_openscap.mo
265
+ - locale/ja/foreman_openscap.edit.po
251
266
  - locale/ja/foreman_openscap.po
267
+ - locale/ja/foreman_openscap.po.time_stamp
252
268
  - locale/ko/LC_MESSAGES/foreman_openscap.mo
269
+ - locale/ko/foreman_openscap.edit.po
253
270
  - locale/ko/foreman_openscap.po
271
+ - locale/ko/foreman_openscap.po.time_stamp
254
272
  - locale/pt_BR/LC_MESSAGES/foreman_openscap.mo
273
+ - locale/pt_BR/foreman_openscap.edit.po
255
274
  - locale/pt_BR/foreman_openscap.po
275
+ - locale/pt_BR/foreman_openscap.po.time_stamp
256
276
  - locale/ru/LC_MESSAGES/foreman_openscap.mo
277
+ - locale/ru/foreman_openscap.edit.po
257
278
  - locale/ru/foreman_openscap.po
279
+ - locale/ru/foreman_openscap.po.time_stamp
258
280
  - locale/sv_SE/LC_MESSAGES/foreman_openscap.mo
281
+ - locale/sv_SE/foreman_openscap.edit.po
259
282
  - locale/sv_SE/foreman_openscap.po
283
+ - locale/sv_SE/foreman_openscap.po.time_stamp
260
284
  - locale/zanata.xml
261
285
  - locale/zh_CN/LC_MESSAGES/foreman_openscap.mo
286
+ - locale/zh_CN/foreman_openscap.edit.po
262
287
  - locale/zh_CN/foreman_openscap.po
288
+ - locale/zh_CN/foreman_openscap.po.time_stamp
263
289
  - locale/zh_TW/LC_MESSAGES/foreman_openscap.mo
290
+ - locale/zh_TW/foreman_openscap.edit.po
264
291
  - locale/zh_TW/foreman_openscap.po
292
+ - locale/zh_TW/foreman_openscap.po.time_stamp
265
293
  - test/factories/arf_report_factory.rb
266
294
  - test/factories/asset_factory.rb
267
295
  - test/factories/compliance_host_factory.rb
@@ -1,7 +0,0 @@
1
- function findSpoolLogs() {
2
- var table,
3
- string = 'Failed to parse Arf Report';
4
- $("div#table-proxy-status-logs_filter input").val(string);
5
- table = $('#table-proxy-status-logs').DataTable();
6
- table.search(string).draw();
7
- }
@@ -1,8 +0,0 @@
1
- module ForemanOpenscap
2
- module LookupKeysHelperExtensions
3
- def overridable_lookup_keys(klass, obj)
4
- return [] if klass.name == "foreman_scap_client"
5
- super klass, obj
6
- end
7
- end
8
- end