foreman_rh_cloud 11.1.0 → 11.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/app/assets/javascripts/foreman_rh_cloud/locale/en/foreman_rh_cloud.js +248 -161
- data/app/assets/javascripts/foreman_rh_cloud/locale/fr/foreman_rh_cloud.js +393 -306
- data/app/assets/javascripts/foreman_rh_cloud/locale/ja/foreman_rh_cloud.js +393 -306
- data/app/assets/javascripts/foreman_rh_cloud/locale/ka/foreman_rh_cloud.js +393 -306
- data/app/assets/javascripts/foreman_rh_cloud/locale/ko/foreman_rh_cloud.js +589 -0
- data/app/assets/javascripts/foreman_rh_cloud/locale/zh_CN/foreman_rh_cloud.js +393 -306
- data/app/controllers/insights_cloud/api/machine_telemetries_controller.rb +9 -1
- data/app/services/foreman_rh_cloud/cloud_request_forwarder.rb +4 -2
- data/app/services/foreman_rh_cloud/hits_uploader.rb +3 -8
- data/app/services/foreman_rh_cloud/rules_ingester.rb +61 -0
- data/app/services/foreman_rh_cloud/template_renderer_helper.rb +1 -1
- data/config/routes.rb +10 -4
- data/db/seeds.d/189_add_host_inventory_param.rb +7 -0
- data/lib/foreman_inventory_upload/async/upload_report_job.rb +1 -1
- data/lib/foreman_inventory_upload/generators/queries.rb +1 -1
- data/lib/foreman_rh_cloud/version.rb +1 -1
- data/lib/insights_cloud.rb +4 -0
- data/lib/tasks/insights.rake +10 -7
- data/lib/tasks/rh_cloud_inventory.rake +8 -3
- data/locale/Makefile +12 -2
- data/locale/en/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/en/foreman_rh_cloud.po +111 -22
- data/locale/foreman_rh_cloud.pot +217 -96
- data/locale/fr/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/fr/foreman_rh_cloud.po +106 -19
- data/locale/ja/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/ja/foreman_rh_cloud.po +106 -19
- data/locale/ka/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/ka/foreman_rh_cloud.po +106 -19
- data/locale/ko/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/ko/foreman_rh_cloud.po +591 -0
- data/locale/zh_CN/LC_MESSAGES/foreman_rh_cloud.mo +0 -0
- data/locale/zh_CN/foreman_rh_cloud.po +106 -19
- data/package.json +1 -1
- data/test/unit/services/foreman_rh_cloud/cloud_request_forwarder_test.rb +24 -0
- data/test/unit/services/foreman_rh_cloud/hits_uploader_test.rb +13 -2
- data/test/unit/services/foreman_rh_cloud/rules_ingester_test.rb +60 -0
- data/test/unit/slice_generator_test.rb +24 -2
- data/webpack/InsightsCloudSync/Components/RemediationModal/RemediationModal.js +5 -1
- metadata +10 -3
@@ -16,7 +16,15 @@ module InsightsCloud::Api
|
|
16
16
|
# The method that "proxies" requests over to Cloud
|
17
17
|
def forward_request
|
18
18
|
certs = candlepin_id_cert @organization
|
19
|
-
|
19
|
+
begin
|
20
|
+
@cloud_response = ::ForemanRhCloud::CloudRequestForwarder.new.forward_request(request, controller_name, @branch_id, certs)
|
21
|
+
rescue RestClient::Exception => e
|
22
|
+
logger.info("Forwarding request failed with exception: #{e}")
|
23
|
+
return render json: { error: e }, status: :bad_gateway
|
24
|
+
rescue RestClient::Timeout => e
|
25
|
+
logger.info("Forwarding request failed with timeout: #{e}")
|
26
|
+
return render json: { error: e }, status: :gateway_timeout
|
27
|
+
end
|
20
28
|
|
21
29
|
if @cloud_response.code == 401
|
22
30
|
return render json: {
|
@@ -17,7 +17,7 @@ module ForemanRhCloud
|
|
17
17
|
logger.debug("Sending request to: #{request_opts[:url]}")
|
18
18
|
|
19
19
|
execute_cloud_request(request_opts)
|
20
|
-
rescue RestClient::
|
20
|
+
rescue RestClient::ExceptionWithResponse => error_response
|
21
21
|
error_response.response
|
22
22
|
end
|
23
23
|
|
@@ -52,7 +52,9 @@ module ForemanRhCloud
|
|
52
52
|
|
53
53
|
def prepare_forward_params(original_request, branch_id)
|
54
54
|
forward_params = original_request.query_parameters
|
55
|
-
|
55
|
+
compliance_request = original_request.path.match?(/compliance\/v2(\/.*)?/)
|
56
|
+
user_agent = original_request.user_agent.present? && !original_request.user_agent.include?('redhat_access_cfme')
|
57
|
+
if user_agent && !compliance_request
|
56
58
|
forward_params = forward_params.merge(:branch_id => branch_id)
|
57
59
|
end
|
58
60
|
|
@@ -35,14 +35,9 @@ module ForemanRhCloud
|
|
35
35
|
|
36
36
|
def update_rules_and_resolutions
|
37
37
|
return if @payload[:rules].blank?
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
return if @payload[:resolutions].blank?
|
43
|
-
::InsightsResolution.where(rule_id: rules).delete_all
|
44
|
-
::InsightsResolution.insert_all(@payload[:resolutions])
|
45
|
-
# rubocop:enable Rails/SkipsModelValidations
|
38
|
+
rule_ids = @payload[:rules].map { |rule| rule[:rule_id] }
|
39
|
+
has_missing_rules = InsightsRule.where(rule_id: rule_ids).count != rule_ids.count
|
40
|
+
RulesIngester.new.ingest_rules_and_resolutions! if has_missing_rules
|
46
41
|
end
|
47
42
|
|
48
43
|
def update_details
|
@@ -0,0 +1,61 @@
|
|
1
|
+
module ForemanRhCloud
|
2
|
+
class RulesIngester
|
3
|
+
def ingest_rules_and_resolutions!
|
4
|
+
rules, resolutions = fetch_rules_and_resolutions
|
5
|
+
# rubocop:disable Rails/SkipsModelValidations
|
6
|
+
::InsightsRule.upsert_all(rules, unique_by: :rule_id)
|
7
|
+
::InsightsResolution.delete_all
|
8
|
+
::InsightsResolution.insert_all(resolutions)
|
9
|
+
# rubocop:enable Rails/SkipsModelValidations
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
def fetch_rules_data
|
15
|
+
advisor_url = "#{ForemanRhCloud.on_premise_url}/r/insights/v1/static/release/content.json"
|
16
|
+
JSON.parse(Net::HTTP.get(URI.parse(advisor_url)), symbolize_names: true)
|
17
|
+
end
|
18
|
+
|
19
|
+
def fetch_rules_and_resolutions
|
20
|
+
rules = fetch_rules_data.values.map do |rule|
|
21
|
+
next unless rule[:active]
|
22
|
+
next if rule[:playbooks].blank?
|
23
|
+
rule.slice(:description, :category,
|
24
|
+
:impact_name, :summary, :generic, :reason,
|
25
|
+
:rec_likelihood, :rec_impact, :reboot_required,
|
26
|
+
:more_info, :rule_id, :playbooks)
|
27
|
+
end
|
28
|
+
rules.compact!
|
29
|
+
|
30
|
+
resolutions = rules.flat_map do |rule|
|
31
|
+
rule[:playbooks].map do |fix_type, playbook|
|
32
|
+
{
|
33
|
+
rule_id: rule[:rule_id],
|
34
|
+
description: playbook[:name],
|
35
|
+
needs_reboot: playbook[:reboot_required] == true,
|
36
|
+
resolution_risk: rule[:resolution_risk],
|
37
|
+
resolution_type: fix_type,
|
38
|
+
}
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
rules.map! do |rule|
|
43
|
+
{
|
44
|
+
rule_id: rule[:rule_id],
|
45
|
+
description: rule[:description],
|
46
|
+
category_name: rule[:category],
|
47
|
+
impact_name: rule[:impact_name],
|
48
|
+
summary: rule[:summary],
|
49
|
+
generic: rule[:generic],
|
50
|
+
reason: rule[:reason],
|
51
|
+
total_risk: ((rule[:rec_likelihood] + rule[:rec_impact]) / 2).to_i,
|
52
|
+
reboot_required: rule[:reboot_required] == true,
|
53
|
+
more_info: rule[:more_info],
|
54
|
+
rating: 0,
|
55
|
+
}
|
56
|
+
end
|
57
|
+
|
58
|
+
[rules, resolutions]
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -25,7 +25,7 @@ module ForemanRhCloud
|
|
25
25
|
returns String, desc: 'Playbook downloaded from the cloud'
|
26
26
|
end
|
27
27
|
def download_rh_playbook(playbook_url, organization_id)
|
28
|
-
retriever = ForemanRhCloud::
|
28
|
+
retriever = ForemanRhCloud::URLRemediationsRetriever.new(url: playbook_url, organization_id: organization_id, logger: template_logger)
|
29
29
|
|
30
30
|
cached("rh_playbook_#{playbook_url}") do
|
31
31
|
retriever.create_playbook
|
data/config/routes.rb
CHANGED
@@ -9,7 +9,9 @@ Rails.application.routes.draw do
|
|
9
9
|
get 'settings', to: 'uploads_settings#index'
|
10
10
|
post 'setting', to: 'uploads_settings#set_advanced_setting'
|
11
11
|
|
12
|
-
|
12
|
+
unless ForemanRhCloud.with_local_advisor_engine?
|
13
|
+
post 'cloud_connector', to: 'uploads#enable_cloud_connector'
|
14
|
+
end
|
13
15
|
|
14
16
|
resources :tasks, only: [:create, :show]
|
15
17
|
|
@@ -31,7 +33,9 @@ Rails.application.routes.draw do
|
|
31
33
|
end
|
32
34
|
|
33
35
|
namespace :foreman_rh_cloud do
|
34
|
-
|
36
|
+
unless ForemanRhCloud.with_local_advisor_engine?
|
37
|
+
get 'inventory_upload', to: '/react#index'
|
38
|
+
end
|
35
39
|
get 'insights_cloud', to: '/react#index' # Uses foreman's react controller
|
36
40
|
end
|
37
41
|
|
@@ -61,8 +65,10 @@ Rails.application.routes.draw do
|
|
61
65
|
end
|
62
66
|
|
63
67
|
namespace 'rh_cloud' do
|
64
|
-
|
65
|
-
|
68
|
+
unless ForemanRhCloud.with_local_advisor_engine?
|
69
|
+
post 'enable_connector', to: 'inventory#enable_cloud_connector'
|
70
|
+
post 'cloud_request', to: 'cloud_request#update'
|
71
|
+
end
|
66
72
|
get 'advisor_engine_config', to: 'advisor_engine_config#show'
|
67
73
|
end
|
68
74
|
|
@@ -44,7 +44,7 @@ module ForemanInventoryUpload
|
|
44
44
|
|
45
45
|
def self.for_slice(base)
|
46
46
|
base
|
47
|
-
.search_for("not params.#{InsightsCloud.
|
47
|
+
.search_for("not params.#{InsightsCloud.enable_client_param_inventory} = f")
|
48
48
|
.joins(:subscription_facet)
|
49
49
|
.preload(
|
50
50
|
:interfaces,
|
data/lib/insights_cloud.rb
CHANGED
data/lib/tasks/insights.rake
CHANGED
@@ -24,13 +24,16 @@ namespace :rh_cloud_insights do
|
|
24
24
|
desc "Re-announce all organizations into Sources on RH cloud."
|
25
25
|
task announce_to_sources: [:environment] do
|
26
26
|
logger = Logging::Logger.new(STDOUT)
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
27
|
+
if ForemanRhCloud.with_local_advisor_engine?
|
28
|
+
logger.warn('Task announce_to_sources is not available when using local advisor engine')
|
29
|
+
else
|
30
|
+
Organization.unscoped.each do |org|
|
31
|
+
presence = ForemanRhCloud::CloudPresence.new(org, logger)
|
32
|
+
presence.announce_to_sources
|
33
|
+
rescue StandardError => ex
|
34
|
+
logger.warn(ex)
|
35
|
+
end
|
36
|
+
logger.info('Reannounced all organizations')
|
32
37
|
end
|
33
|
-
|
34
|
-
logger.info('Reannounced all organizations')
|
35
38
|
end
|
36
39
|
end
|
@@ -9,10 +9,15 @@ namespace :rh_cloud_inventory do
|
|
9
9
|
else
|
10
10
|
organizations = [Organization.where(:id => ENV['organization_id']).first]
|
11
11
|
end
|
12
|
-
|
12
|
+
disconnected = ForemanRhCloud.with_local_advisor_engine?
|
13
13
|
User.as_anonymous_admin do
|
14
14
|
organizations.each do |organization|
|
15
|
-
ForemanTasks.async_task(
|
15
|
+
ForemanTasks.async_task(
|
16
|
+
ForemanInventoryUpload::Async::GenerateReportJob,
|
17
|
+
ForemanInventoryUpload.generated_reports_folder,
|
18
|
+
organization.id,
|
19
|
+
disconnected
|
20
|
+
)
|
16
21
|
puts "Generated and uploaded inventory report for organization '#{organization.name}'"
|
17
22
|
end
|
18
23
|
end
|
@@ -47,7 +52,7 @@ namespace :rh_cloud_inventory do
|
|
47
52
|
base_folder = ENV['target'] || ForemanInventoryUpload.generated_reports_folder
|
48
53
|
organization_id = ENV['organization_id']
|
49
54
|
report_file = ForemanInventoryUpload.facts_archive_name(organization_id)
|
50
|
-
disconnected =
|
55
|
+
disconnected = ForemanRhCloud.with_local_advisor_engine?
|
51
56
|
ForemanTasks.sync_task(ForemanInventoryUpload::Async::QueueForUploadJob, base_folder, report_file, organization_id, disconnected)
|
52
57
|
puts "Uploaded #{report_file}"
|
53
58
|
end
|
data/locale/Makefile
CHANGED
@@ -31,9 +31,16 @@ all-mo: $(MOFILES)
|
|
31
31
|
cat $@
|
32
32
|
! grep -q msgid $@
|
33
33
|
|
34
|
-
%.edit.po:
|
34
|
+
%.edit.po: %.po.time_stamp
|
35
35
|
touch $@
|
36
36
|
|
37
|
+
# gettext will trash the .edit.po file if the time stamp doesn't exist or is older than the po file
|
38
|
+
%.po.time_stamp: %.po
|
39
|
+
touch --reference $< $@
|
40
|
+
|
41
|
+
# Prevent make from treating this as an intermediate file to be cleaned up
|
42
|
+
.PRECIOUS: %.po.time_stamp
|
43
|
+
|
37
44
|
check: $(POXFILES)
|
38
45
|
|
39
46
|
# Unify duplicate translations
|
@@ -43,7 +50,10 @@ uniq-po:
|
|
43
50
|
done
|
44
51
|
|
45
52
|
tx-pull: $(EDITFILES)
|
46
|
-
|
53
|
+
# Initialize new languages
|
54
|
+
cd .. && tx pull -f --all --minimum-perc 50
|
55
|
+
# Force update all existing languages
|
56
|
+
cd .. && tx pull -f --minimum-perc 0
|
47
57
|
for f in $(EDITFILES) ; do \
|
48
58
|
sed -i 's/^\("Project-Id-Version: \).*$$/\1$(DOMAIN) $(VERSION)\\n"/' $$f; \
|
49
59
|
done
|
Binary file
|
@@ -1,21 +1,23 @@
|
|
1
|
-
#
|
2
|
-
#
|
3
|
-
# This file is distributed under the same license as foreman_rh_cloud.
|
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_rh_cloud package.
|
4
|
+
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
4
5
|
#
|
6
|
+
#, fuzzy
|
5
7
|
msgid ""
|
6
8
|
msgstr ""
|
7
|
-
"Project-Id-Version:
|
9
|
+
"Project-Id-Version: foreman_rh_cloud 1.0.0\n"
|
8
10
|
"Report-Msgid-Bugs-To: \n"
|
9
|
-
"PO-Revision-Date:
|
10
|
-
"Last-Translator:
|
11
|
-
"Language-Team:
|
11
|
+
"PO-Revision-Date: 2025-02-10 20:07+0100\n"
|
12
|
+
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13
|
+
"Language-Team: LANGUAGE <LL@li.org>\n"
|
12
14
|
"Language: \n"
|
13
15
|
"MIME-Version: 1.0\n"
|
14
16
|
"Content-Type: text/plain; charset=UTF-8\n"
|
15
17
|
"Content-Transfer-Encoding: 8bit\n"
|
16
|
-
"Plural-Forms: nplurals=
|
18
|
+
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
17
19
|
|
18
|
-
msgid " Sync inventory status"
|
20
|
+
msgid " Sync all inventory status"
|
19
21
|
msgstr ""
|
20
22
|
|
21
23
|
msgid "%s organizations"
|
@@ -81,10 +83,10 @@ msgstr ""
|
|
81
83
|
msgid "Configure"
|
82
84
|
msgstr ""
|
83
85
|
|
84
|
-
msgid "Configure Cloud Connector"
|
86
|
+
msgid "Configure Cloud Connector on given hosts"
|
85
87
|
msgstr ""
|
86
88
|
|
87
|
-
msgid "Configure
|
89
|
+
msgid "Configure cloud connector"
|
88
90
|
msgstr ""
|
89
91
|
|
90
92
|
msgid "Connectivity test"
|
@@ -147,6 +149,9 @@ msgstr ""
|
|
147
149
|
msgid "Exit Code: %s"
|
148
150
|
msgstr ""
|
149
151
|
|
152
|
+
msgid "Fetch Insights-related host details"
|
153
|
+
msgstr ""
|
154
|
+
|
150
155
|
msgid "Fetching data about your accounts"
|
151
156
|
msgstr ""
|
152
157
|
|
@@ -171,13 +176,16 @@ msgstr ""
|
|
171
176
|
msgid "Full Screen"
|
172
177
|
msgstr ""
|
173
178
|
|
179
|
+
msgid "Generate and upload report"
|
180
|
+
msgstr ""
|
181
|
+
|
174
182
|
msgid "Generate the report, but do not upload"
|
175
183
|
msgstr ""
|
176
184
|
|
177
185
|
msgid "Generating"
|
178
186
|
msgstr ""
|
179
187
|
|
180
|
-
msgid "Go to
|
188
|
+
msgid "Go to Foreman Insights page"
|
181
189
|
msgstr ""
|
182
190
|
|
183
191
|
msgid "Go to first page"
|
@@ -219,9 +227,6 @@ msgstr ""
|
|
219
227
|
msgid "Insights"
|
220
228
|
msgstr ""
|
221
229
|
|
222
|
-
msgid "Insights synchronization process is used to provide Insights recommendations output for hosts managed here."
|
223
|
-
msgstr ""
|
224
|
-
|
225
230
|
msgid "Inventory"
|
226
231
|
msgstr ""
|
227
232
|
|
@@ -243,6 +248,9 @@ msgstr ""
|
|
243
248
|
msgid "Knowledgebase article"
|
244
249
|
msgstr ""
|
245
250
|
|
251
|
+
msgid "List of host UUIDs"
|
252
|
+
msgstr ""
|
253
|
+
|
246
254
|
msgid "Loading"
|
247
255
|
msgstr ""
|
248
256
|
|
@@ -345,7 +353,7 @@ msgstr ""
|
|
345
353
|
msgid "Recommendations synced successfully"
|
346
354
|
msgstr ""
|
347
355
|
|
348
|
-
msgid "Reconfigure
|
356
|
+
msgid "Reconfigure cloud connector"
|
349
357
|
msgstr ""
|
350
358
|
|
351
359
|
msgid "Red Hat Cloud Inventory"
|
@@ -375,9 +383,6 @@ msgstr ""
|
|
375
383
|
msgid "Resolution"
|
376
384
|
msgstr ""
|
377
385
|
|
378
|
-
msgid "Restart"
|
379
|
-
msgstr ""
|
380
|
-
|
381
386
|
msgid "Run RH Cloud playbook"
|
382
387
|
msgstr ""
|
383
388
|
|
@@ -408,6 +413,9 @@ msgstr ""
|
|
408
413
|
msgid "Show Advanced Settings"
|
409
414
|
msgstr ""
|
410
415
|
|
416
|
+
msgid "Show if system is configured to use local iop-advisor-engine."
|
417
|
+
msgstr ""
|
418
|
+
|
411
419
|
msgid "Start inventory synchronization"
|
412
420
|
msgstr ""
|
413
421
|
|
@@ -429,15 +437,18 @@ msgstr ""
|
|
429
437
|
msgid "Synchronize recommendations Automatically"
|
430
438
|
msgstr ""
|
431
439
|
|
432
|
-
msgid "The
|
440
|
+
msgid "The Foreman inventory upload plugin automatically uploads Foreman host inventory data to the Inventory service of Insights, where it can also be used by the Subscriptions service for subscription reporting. If you use the Subscriptions service, enabling inventory uploads is required."
|
433
441
|
msgstr ""
|
434
442
|
|
435
|
-
msgid "The
|
443
|
+
msgid "The Red Hat Hybrid Cloud Console provides a set of cloud services, including Red Hat Insights and Subscriptions, that provide predictive analysis, remediation of issues, and unified subscription reporting for this Foreman instance."
|
436
444
|
msgstr ""
|
437
445
|
|
438
446
|
msgid "The report file %{filename} doesn't exist"
|
439
447
|
msgstr ""
|
440
448
|
|
449
|
+
msgid "The scheduled process is disabled because this Foreman is configured with the use_local_advisor_engine option."
|
450
|
+
msgstr ""
|
451
|
+
|
441
452
|
msgid "The server returned the following error: %s"
|
442
453
|
msgstr ""
|
443
454
|
|
@@ -450,7 +461,7 @@ msgstr ""
|
|
450
461
|
msgid "This action will also enable automatic reports upload"
|
451
462
|
msgstr ""
|
452
463
|
|
453
|
-
msgid "To enable this reporting for all
|
464
|
+
msgid "To enable this reporting for all Foreman organizations, set {uploadButtonName} to on. The data will be reported automatically once per day."
|
454
465
|
msgstr ""
|
455
466
|
|
456
467
|
msgid "To manually upload the data for a specific organization, select an organization and click {restartButtonName}."
|
@@ -462,6 +473,15 @@ msgstr ""
|
|
462
473
|
msgid "Total risks"
|
463
474
|
msgstr ""
|
464
475
|
|
476
|
+
msgid "Upload hits from iop-advisor-engine"
|
477
|
+
msgstr ""
|
478
|
+
|
479
|
+
msgid "Upload hits information"
|
480
|
+
msgstr ""
|
481
|
+
|
482
|
+
msgid "Upload rules related to the hits"
|
483
|
+
msgstr ""
|
484
|
+
|
465
485
|
msgid "Uploading"
|
466
486
|
msgstr ""
|
467
487
|
|
@@ -477,18 +497,87 @@ msgstr ""
|
|
477
497
|
msgid "Wait and %s"
|
478
498
|
msgstr ""
|
479
499
|
|
500
|
+
msgid "Whether the resolution requires reboot"
|
501
|
+
msgstr ""
|
502
|
+
|
503
|
+
msgid "category name"
|
504
|
+
msgstr ""
|
505
|
+
|
506
|
+
msgid "generic"
|
507
|
+
msgstr ""
|
508
|
+
|
480
509
|
msgid "hosts page"
|
481
510
|
msgstr ""
|
482
511
|
|
512
|
+
msgid "impact name"
|
513
|
+
msgstr ""
|
514
|
+
|
515
|
+
msgid "iop payload including resolutions, rules, hits"
|
516
|
+
msgstr ""
|
517
|
+
|
483
518
|
msgid "items"
|
484
519
|
msgstr ""
|
485
520
|
|
521
|
+
msgid "likelihood number"
|
522
|
+
msgstr ""
|
523
|
+
|
524
|
+
msgid "more info"
|
525
|
+
msgstr ""
|
526
|
+
|
486
527
|
msgid "page"
|
487
528
|
msgstr ""
|
488
529
|
|
489
530
|
msgid "per page"
|
490
531
|
msgstr ""
|
491
532
|
|
533
|
+
msgid "publish date (YYYY-MM-DD)"
|
534
|
+
msgstr ""
|
535
|
+
|
536
|
+
msgid "rating"
|
537
|
+
msgstr ""
|
538
|
+
|
539
|
+
msgid "reason"
|
540
|
+
msgstr ""
|
541
|
+
|
542
|
+
msgid "reboot required"
|
543
|
+
msgstr ""
|
544
|
+
|
545
|
+
msgid "resolution description"
|
546
|
+
msgstr ""
|
547
|
+
|
548
|
+
msgid "resolution risk"
|
549
|
+
msgstr ""
|
550
|
+
|
551
|
+
msgid "result url"
|
552
|
+
msgstr ""
|
553
|
+
|
554
|
+
msgid "rule description"
|
555
|
+
msgstr ""
|
556
|
+
|
557
|
+
msgid "rule id"
|
558
|
+
msgstr ""
|
559
|
+
|
560
|
+
msgid "rule title"
|
561
|
+
msgstr ""
|
562
|
+
|
563
|
+
msgid "solution url"
|
564
|
+
msgstr ""
|
565
|
+
|
566
|
+
msgid "summary"
|
567
|
+
msgstr ""
|
568
|
+
|
569
|
+
msgid "total risk"
|
570
|
+
msgstr ""
|
571
|
+
|
572
|
+
msgid "type"
|
573
|
+
msgstr ""
|
574
|
+
|
575
|
+
msgid "upload hits details json"
|
576
|
+
msgstr ""
|
577
|
+
|
578
|
+
msgid "upload resolutions related to the hits"
|
579
|
+
msgstr ""
|
580
|
+
|
492
581
|
msgid "view the job in progress"
|
493
582
|
msgstr ""
|
494
583
|
|