foreman_leapp 4.1.2 → 4.3.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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/foreman_leapp/locale/de/foreman_leapp.js +37 -4
  3. data/app/assets/javascripts/foreman_leapp/locale/en/foreman_leapp.js +36 -3
  4. data/app/assets/javascripts/foreman_leapp/locale/fr/foreman_leapp.js +37 -4
  5. data/app/assets/javascripts/foreman_leapp/locale/ja/foreman_leapp.js +37 -4
  6. data/app/assets/javascripts/foreman_leapp/locale/ka/foreman_leapp.js +40 -7
  7. data/app/assets/javascripts/foreman_leapp/locale/ko/foreman_leapp.js +37 -4
  8. data/app/assets/javascripts/foreman_leapp/locale/zh_CN/foreman_leapp.js +37 -4
  9. data/app/controllers/api/v2/preupgrade_report_entries_controller.rb +17 -29
  10. data/app/controllers/concerns/foreman_leapp/preupgrade_report_entry_bulk_remediate.rb +69 -0
  11. data/app/lib/actions/foreman_leapp/preupgrade_job.rb +1 -2
  12. data/app/lib/helpers/job_helper.rb +8 -0
  13. data/app/views/api/v2/job_invocations/leapp_preupgrade_report.json.rabl +3 -0
  14. data/config/routes.rb +1 -2
  15. data/lib/foreman_leapp/engine.rb +3 -12
  16. data/lib/foreman_leapp/version.rb +1 -1
  17. data/locale/de/LC_MESSAGES/foreman_leapp.mo +0 -0
  18. data/locale/de/foreman_leapp.po +38 -5
  19. data/locale/en/LC_MESSAGES/foreman_leapp.mo +0 -0
  20. data/locale/en/foreman_leapp.po +36 -3
  21. data/locale/foreman_leapp.pot +66 -18
  22. data/locale/fr/LC_MESSAGES/foreman_leapp.mo +0 -0
  23. data/locale/fr/foreman_leapp.po +38 -5
  24. data/locale/ja/LC_MESSAGES/foreman_leapp.mo +0 -0
  25. data/locale/ja/foreman_leapp.po +38 -5
  26. data/locale/ka/LC_MESSAGES/foreman_leapp.mo +0 -0
  27. data/locale/ka/foreman_leapp.po +41 -8
  28. data/locale/ko/LC_MESSAGES/foreman_leapp.mo +0 -0
  29. data/locale/ko/foreman_leapp.po +38 -5
  30. data/locale/zh_CN/LC_MESSAGES/foreman_leapp.mo +0 -0
  31. data/locale/zh_CN/foreman_leapp.po +38 -5
  32. data/package.json +0 -1
  33. data/test/functional/api/v2/job_invocations_controller_test.rb +39 -0
  34. data/test/functional/api/v2/preupgrade_report_entries_controller_test.rb +64 -0
  35. data/test/unit/helpers/job_helper_test.rb +20 -0
  36. data/webpack/components/PreupgradeReportsTable/PreupgradeReportsTableHelpers.js +44 -17
  37. data/webpack/components/PreupgradeReportsTable/__tests__/PreupgradeReportsTable.test.js +131 -10
  38. data/webpack/components/PreupgradeReportsTable/index.js +67 -74
  39. data/webpack/index.js +0 -13
  40. metadata +7 -67
  41. data/app/controllers/preupgrade_reports_controller.rb +0 -17
  42. data/app/views/job_invocations/_leapp_preupgrade_report.html.erb +0 -11
  43. data/app/views/preupgrade_report_entries/base.json.rabl +0 -4
  44. data/app/views/preupgrade_reports/index.json.rabl +0 -3
  45. data/app/views/preupgrade_reports/show.json.rabl +0 -7
  46. data/test/functional/preupgrade_reports_controller_test.rb +0 -39
  47. data/webpack/components/PreupgradeReports/PreupgradeReports.js +0 -154
  48. data/webpack/components/PreupgradeReports/PreupgradeReportsActions.js +0 -31
  49. data/webpack/components/PreupgradeReports/PreupgradeReportsHelpers.js +0 -152
  50. data/webpack/components/PreupgradeReports/PreupgradeReportsReducer.js +0 -37
  51. data/webpack/components/PreupgradeReports/PreupgradeReportsSelectors.js +0 -18
  52. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.fixtures.js +0 -129
  53. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.test.js +0 -159
  54. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReportsHelpers.test.js +0 -78
  55. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReportsReducer.test.js +0 -44
  56. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReportsSelectors.test.js +0 -28
  57. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsHelpers.test.js.snap +0 -489
  58. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsReducer.test.js.snap +0 -102
  59. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsSelectors.test.js.snap +0 -76
  60. data/webpack/components/PreupgradeReports/components/EntriesFilter.js +0 -121
  61. data/webpack/components/PreupgradeReports/components/EntriesFilter.scss +0 -3
  62. data/webpack/components/PreupgradeReports/components/EntriesFilter.test.js +0 -30
  63. data/webpack/components/PreupgradeReports/components/FixSelectedButton.js +0 -35
  64. data/webpack/components/PreupgradeReports/components/FixSelectedButton.test.js +0 -15
  65. data/webpack/components/PreupgradeReports/components/NoReports.js +0 -35
  66. data/webpack/components/PreupgradeReports/components/NoReports.test.js +0 -29
  67. data/webpack/components/PreupgradeReports/components/UpgradeAllButton.js +0 -28
  68. data/webpack/components/PreupgradeReports/components/UpgradeAllButton.test.js +0 -17
  69. data/webpack/components/PreupgradeReports/components/__snapshots__/EntriesFilter.test.js.snap +0 -330
  70. data/webpack/components/PreupgradeReports/components/__snapshots__/FixSelectedButton.test.js.snap +0 -40
  71. data/webpack/components/PreupgradeReports/components/__snapshots__/UpgradeAllButton.test.js.snap +0 -41
  72. data/webpack/components/PreupgradeReports/index.js +0 -57
  73. data/webpack/components/PreupgradeReportsList/PreupgradeReportList.scss +0 -37
  74. data/webpack/components/PreupgradeReportsList/__tests__/PreupgradeReportsList.test.js +0 -124
  75. data/webpack/components/PreupgradeReportsList/components/EmptyInfoItem.js +0 -16
  76. data/webpack/components/PreupgradeReportsList/components/InfoItem.js +0 -34
  77. data/webpack/components/PreupgradeReportsList/components/InhibitorInfoItem.js +0 -33
  78. data/webpack/components/PreupgradeReportsList/components/PreupgradeReportEntry.js +0 -64
  79. data/webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js +0 -56
  80. data/webpack/components/PreupgradeReportsList/components/SortableHeaderItem.js +0 -50
  81. data/webpack/components/PreupgradeReportsList/components/__tests__/EmptyInfoItem.test.js +0 -13
  82. data/webpack/components/PreupgradeReportsList/components/__tests__/InhibitorInfoItem.test.js +0 -27
  83. data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportEntry.fixtures.js +0 -38
  84. data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportEntry.test.js +0 -14
  85. data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportsListHeader.test.js +0 -14
  86. data/webpack/components/PreupgradeReportsList/components/__tests__/SortableHeaderItem.test.js +0 -29
  87. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/EmptyInfoItem.test.js.snap +0 -8
  88. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/InhibitorInfoItem.test.js.snap +0 -32
  89. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/PreupgradeReportEntry.test.js.snap +0 -134
  90. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/PreupgradeReportsListHeader.test.js.snap +0 -113
  91. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/SortableHeaderItem.test.js.snap +0 -36
  92. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/helpers.test.js.snap +0 -197
  93. data/webpack/components/PreupgradeReportsList/components/__tests__/helpers.test.js +0 -28
  94. data/webpack/components/PreupgradeReportsList/components/foreman_leapp.scss +0 -15
  95. data/webpack/components/PreupgradeReportsList/components/helpers.js +0 -186
  96. data/webpack/components/PreupgradeReportsList/components/images/i_severity-critical.svg +0 -61
  97. data/webpack/components/PreupgradeReportsList/components/images/i_severity-high.svg +0 -61
  98. data/webpack/components/PreupgradeReportsList/components/images/i_severity-low.svg +0 -62
  99. data/webpack/components/PreupgradeReportsList/components/images/i_severity-med.svg +0 -62
  100. data/webpack/components/PreupgradeReportsList/index.js +0 -61
  101. data/webpack/consts.js +0 -3
  102. data/webpack/csrf.js +0 -4
  103. data/webpack/reducer.js +0 -5
@@ -5,6 +5,7 @@ module Api
5
5
  class PreupgradeReportEntriesController < ::Api::V2::BaseController
6
6
  include ApiAuthorizer
7
7
  include Foreman::Controller::AutoCompleteSearch
8
+ include ForemanLeapp::PreupgradeReportEntryBulkRemediate
8
9
 
9
10
  skip_before_action :store_redirect_to_url, :reset_redirect_to_url, raise: false
10
11
  before_action :find_preupgrade_report, if: -> { params[:preupgrade_report_id].present? }
@@ -25,29 +26,23 @@ module Api
25
26
  N_('Search autocomplete for preupgrade report entries')
26
27
  param :search, String, required: false, desc: N_('Search string')
27
28
  param :preupgrade_report_id, :identifier, required: false, desc: N_('ID of the preupgrade report')
29
+ param :job_invocation_id, :identifier, required: false, desc: N_('ID of the job invocation')
28
30
 
31
+ api :POST, '/preupgrade_report_entries/bulk_remediate',
32
+ N_('Trigger a remediation job for selected preupgrade report entries')
29
33
  api :POST, '/preupgrade_reports/:preupgrade_report_id/preupgrade_report_entries/bulk_remediate',
30
34
  N_('Trigger a remediation job for selected preupgrade report entries')
35
+ param :ids, Array, of: :number, required: false,
36
+ desc: N_('IDs of fixable preupgrade report entries to remediate')
31
37
  param :search, String, required: false, desc: N_('Search string')
32
38
  param :excluded_ids, Array, required: false, desc: N_('Array of excluded entry IDs')
33
39
  def bulk_remediate
34
- entries = filtered_remediation_entries
35
- remediation_ids = entries.pluck(:id)
36
-
37
- if remediation_ids.empty?
38
- return render json: { error: _('No fixable entries found matching the selection.') },
39
- status: :unprocessable_entity
40
- end
40
+ job_id = perform_bulk_remediate
41
+ return if performed?
41
42
 
42
- composer = JobInvocationComposer.for_feature(
43
- 'leapp_remediation_plan',
44
- target_host_ids(entries),
45
- { 'remediation_ids' => remediation_ids.join(',') }
46
- )
47
- composer.trigger!
48
- job_invocation = composer.job_invocation
49
-
50
- render json: { id: job_invocation.id }
43
+ render json: { id: job_id }
44
+ rescue Foreman::Exception => e
45
+ render_exception(e, status: :unprocessable_entity)
51
46
  rescue StandardError => e
52
47
  Foreman::Logging.exception('Failed to trigger bulk remediation job', e)
53
48
  render json: { error: _('An unexpected error occurred while creating the remediation job.') },
@@ -63,6 +58,12 @@ module Api
63
58
  def resource_scope(_options = {})
64
59
  scope = if @preupgrade_report
65
60
  @preupgrade_report.preupgrade_report_entries
61
+ elsif params[:job_invocation_id].present?
62
+ PreupgradeReportEntry.where(
63
+ preupgrade_report_id: PreupgradeReport.where(
64
+ job_invocation_id: params[:job_invocation_id]
65
+ ).select(:id)
66
+ )
66
67
  else
67
68
  PreupgradeReportEntry
68
69
  end
@@ -82,19 +83,6 @@ module Api
82
83
 
83
84
  private
84
85
 
85
- def filtered_remediation_entries
86
- combined_search = [params[:search].presence, 'fix_type = command'].compact.join(' AND ')
87
- entries = resource_scope.search_for(combined_search)
88
- entries = entries.where.not(id: params[:excluded_ids]) if params[:excluded_ids].present?
89
- entries
90
- end
91
-
92
- def target_host_ids(entries)
93
- host_ids = entries.pluck(:host_id).uniq.compact
94
- host_ids = [@preupgrade_report.host_id].compact if host_ids.empty? && @preupgrade_report
95
- host_ids
96
- end
97
-
98
86
  def find_preupgrade_report
99
87
  @preupgrade_report = PreupgradeReport
100
88
  .joins(:host)
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ForemanLeapp
4
+ module PreupgradeReportEntryBulkRemediate
5
+ extend ActiveSupport::Concern
6
+
7
+ def perform_bulk_remediate
8
+ entries = filtered_remediation_entries
9
+ remediation_ids = entries.pluck(:id)
10
+
11
+ if remediation_ids.empty?
12
+ render json: { error: _('No fixable entries found matching the selection.') },
13
+ status: :unprocessable_entity
14
+ return
15
+ end
16
+
17
+ composer = JobInvocationComposer.for_feature(
18
+ 'leapp_remediation_plan',
19
+ target_host_ids(entries),
20
+ { 'remediation_ids' => remediation_ids.join(',') }
21
+ )
22
+ composer.trigger!
23
+ composer.job_invocation.id
24
+ end
25
+
26
+ private
27
+
28
+ def filtered_remediation_entries
29
+ fixable_remediation_scope(scope_for_bulk_selection)
30
+ end
31
+
32
+ def scope_for_bulk_selection
33
+ return resource_scope.where(id: params[:ids]) if params[:ids].present?
34
+
35
+ unless scoped_to_report_or_job?
36
+ raise Foreman::Exception,
37
+ N_('Either ids, preupgrade_report_id or job_invocation_id must be provided')
38
+ end
39
+
40
+ apply_excluded_ids(search_fixable_entries)
41
+ end
42
+
43
+ def scoped_to_report_or_job?
44
+ @preupgrade_report.present? || params[:job_invocation_id].present?
45
+ end
46
+
47
+ def search_fixable_entries
48
+ combined_search = [params[:search].presence, 'fix_type = command'].compact.join(' AND ')
49
+ resource_scope.search_for(combined_search)
50
+ end
51
+
52
+ def apply_excluded_ids(entries)
53
+ return entries.where.not(id: params[:excluded_ids]) if params[:excluded_ids].present?
54
+
55
+ entries
56
+ end
57
+
58
+ def fixable_remediation_scope(scope)
59
+ scope.search_for('fix_type = command')
60
+ end
61
+
62
+ def target_host_ids(entries)
63
+ host_ids = entries.pluck(:host_id).uniq.compact
64
+ return [@preupgrade_report.host_id].compact if host_ids.empty? && @preupgrade_report
65
+
66
+ host_ids
67
+ end
68
+ end
69
+ end
@@ -8,8 +8,7 @@ module Actions
8
8
  end
9
9
 
10
10
  def plan(job_invocation, host, *_args)
11
- return unless ::Helpers::JobHelper.correct_feature?(job_invocation, 'leapp_preupgrade') ||
12
- ::Helpers::JobHelper.correct_feature?(job_invocation, 'leapp_remediation_plan')
11
+ return unless ::Helpers::JobHelper.with_leapp_report(job_invocation)
13
12
 
14
13
  plan_self(host_id: host.id, job_invocation_id: job_invocation.id)
15
14
  end
@@ -2,7 +2,15 @@
2
2
 
3
3
  module Helpers
4
4
  module JobHelper
5
+ PREUPGRADE_REPORT_FEATURES = %w[leapp_preupgrade leapp_remediation_plan].freeze
6
+
5
7
  class << self
8
+ def with_leapp_report(job_invocation)
9
+ PREUPGRADE_REPORT_FEATURES.any? do |feature|
10
+ correct_feature?(job_invocation, feature)
11
+ end
12
+ end
13
+
6
14
  # Returns true if the given feature is present in the job_invocation's job_features,
7
15
  # or if a matching RemoteExecutionFeature exists for the job_template.
8
16
  def correct_feature?(job_invocation, feature)
@@ -0,0 +1,3 @@
1
+ node(:has_leapp_report) do |invocation|
2
+ ::Helpers::JobHelper.with_leapp_report(invocation)
3
+ end
data/config/routes.rb CHANGED
@@ -1,14 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  Rails.application.routes.draw do
4
- resources :preupgrade_reports, only: %i[index]
5
-
6
4
  namespace :api, defaults: { format: 'json' } do
7
5
  scope '(:apiv)', module: :v2, defaults: { apiv: 'v2' }, apiv: /v2/,
8
6
  constraints: ApiConstraints.new(version: 2, default: true) do
9
7
  resources :preupgrade_report_entries, only: %i[index] do
10
8
  collection do
11
9
  get :auto_complete_search
10
+ post :bulk_remediate
12
11
  end
13
12
  end
14
13
 
@@ -23,20 +23,11 @@ module ForemanLeapp
23
23
  apipie_documented_controllers ["#{ForemanLeapp::Engine.root}/app/controllers/api/v2/*.rb"]
24
24
  extend_template_helpers ForemanLeapp::TemplateHelper
25
25
 
26
- extend_page 'job_invocations/show' do |cx|
27
- cx.add_pagelet :main_tabs,
28
- partial: 'job_invocations/leapp_preupgrade_report',
29
- name: _('Leapp preupgrade report'),
30
- id: 'leapp_preupgrade_report',
31
- onlyif: proc { |subject|
32
- ::Helpers::JobHelper.correct_feature?(subject, 'leapp_preupgrade') ||
33
- ::Helpers::JobHelper.correct_feature?(subject, 'leapp_remediation_plan')
34
- }
35
- end
26
+ extend_rabl_template 'api/v2/job_invocations/main',
27
+ 'api/v2/job_invocations/leapp_preupgrade_report'
36
28
 
37
29
  security_block :foreman_leapp do
38
- permission :view_job_invocations, { :preupgrade_reports => %i[index show job_invocation],
39
- 'api/v2/preupgrade_reports' => %i[index show job_invocation] },
30
+ permission :view_job_invocations, { 'api/v2/preupgrade_reports' => %i[index show job_invocation] },
40
31
  :resource_type => 'JobInvocation'
41
32
  end
42
33
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ForemanLeapp
4
- VERSION = '4.1.2'
4
+ VERSION = '4.3.0'
5
5
  end
Binary file
@@ -8,14 +8,14 @@
8
8
  # Ettore Atalan <atalanttore@googlemail.com>, 2022
9
9
  # Wiederoder <stefanwiederoder@googlemail.com>, 2022
10
10
  # Lukas Kallies <github.com@luke-web.de>, 2022
11
- # Bryan Kearney <bryan.kearney@gmail.com>, 2023
11
+ # Bryan Kearney <bryan.kearney@gmail.com>, 2026
12
12
  #
13
13
  msgid ""
14
14
  msgstr ""
15
- "Project-Id-Version: foreman_leapp 3.2.0\n"
15
+ "Project-Id-Version: foreman_leapp 4.1.2\n"
16
16
  "Report-Msgid-Bugs-To: \n"
17
17
  "PO-Revision-Date: 2022-10-12 12:00+0000\n"
18
- "Last-Translator: Bryan Kearney <bryan.kearney@gmail.com>, 2023\n"
18
+ "Last-Translator: Bryan Kearney <bryan.kearney@gmail.com>, 2026\n"
19
19
  "Language-Team: German (https://app.transifex.com/foreman/teams/114/de/)\n"
20
20
  "MIME-Version: 1.0\n"
21
21
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -29,6 +29,12 @@ msgstr ""
29
29
  msgid "All"
30
30
  msgstr "Alle"
31
31
 
32
+ msgid "An unexpected error occurred while creating the remediation job."
33
+ msgstr ""
34
+
35
+ msgid "Array of excluded entry IDs"
36
+ msgstr ""
37
+
32
38
  msgid "Command"
33
39
  msgstr "Befehl"
34
40
 
@@ -62,6 +68,9 @@ msgstr "Hinweis"
62
68
  msgid "Host"
63
69
  msgstr "Host"
64
70
 
71
+ msgid "ID of the preupgrade report"
72
+ msgstr ""
73
+
65
74
  msgid "Info"
66
75
  msgstr "Info"
67
76
 
@@ -83,6 +92,12 @@ msgstr ""
83
92
  msgid "List Preupgrade reports for Job invocation"
84
93
  msgstr ""
85
94
 
95
+ msgid "List all preupgrade report entries"
96
+ msgstr ""
97
+
98
+ msgid "List entries for a specific preupgrade report"
99
+ msgstr ""
100
+
86
101
  msgid "Low"
87
102
  msgstr "Niedrig"
88
103
 
@@ -104,10 +119,13 @@ msgstr "Nein"
104
119
  msgid "No Preupgrade Report Available"
105
120
  msgstr ""
106
121
 
107
- msgid "Preupgrade check with Leapp"
122
+ msgid "No fixable entries found matching the selection."
108
123
  msgstr ""
109
124
 
110
- msgid "Preupgrade job"
125
+ msgid "No results found for your search."
126
+ msgstr ""
127
+
128
+ msgid "Preupgrade check with Leapp"
111
129
  msgstr ""
112
130
 
113
131
  msgid "Remediation plan"
@@ -125,6 +143,12 @@ msgstr "Sanierungsplan mit Leapp ausführen"
125
143
  msgid "Run Upgrade"
126
144
  msgstr "Aktualisierung ausführen"
127
145
 
146
+ msgid "Search autocomplete for preupgrade report entries"
147
+ msgstr ""
148
+
149
+ msgid "Search string"
150
+ msgstr "Suchbegriff"
151
+
128
152
  msgid "Show Preupgrade report"
129
153
  msgstr ""
130
154
 
@@ -149,6 +173,15 @@ msgstr ""
149
173
  msgid "Title"
150
174
  msgstr "Titel"
151
175
 
176
+ msgid "Trigger a remediation job for selected preupgrade report entries"
177
+ msgstr ""
178
+
179
+ msgid "Unknown fix_type value '%s' for search_fix_type"
180
+ msgstr ""
181
+
182
+ msgid "Unknown search key '%s' for search_yes_no_fields"
183
+ msgstr ""
184
+
152
185
  msgid "Upgrade with Leapp"
153
186
  msgstr "Aktualisiere mit Leapp"
154
187
 
Binary file
@@ -8,7 +8,7 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: foreman_leapp 1.0.0\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "PO-Revision-Date: 2026-03-09 16:32+0100\n"
11
+ "PO-Revision-Date: 2026-09-29 11:07+0000\n"
12
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
14
  "Language: \n"
@@ -23,6 +23,12 @@ msgstr ""
23
23
  msgid "All"
24
24
  msgstr ""
25
25
 
26
+ msgid "An unexpected error occurred while creating the remediation job."
27
+ msgstr ""
28
+
29
+ msgid "Array of excluded entry IDs"
30
+ msgstr ""
31
+
26
32
  msgid "Command"
27
33
  msgstr ""
28
34
 
@@ -56,6 +62,9 @@ msgstr ""
56
62
  msgid "Host"
57
63
  msgstr ""
58
64
 
65
+ msgid "ID of the preupgrade report"
66
+ msgstr ""
67
+
59
68
  msgid "Info"
60
69
  msgstr ""
61
70
 
@@ -77,6 +86,12 @@ msgstr ""
77
86
  msgid "List Preupgrade reports for Job invocation"
78
87
  msgstr ""
79
88
 
89
+ msgid "List all preupgrade report entries"
90
+ msgstr ""
91
+
92
+ msgid "List entries for a specific preupgrade report"
93
+ msgstr ""
94
+
80
95
  msgid "Low"
81
96
  msgstr ""
82
97
 
@@ -98,10 +113,13 @@ msgstr ""
98
113
  msgid "No Preupgrade Report Available"
99
114
  msgstr ""
100
115
 
101
- msgid "Preupgrade check with Leapp"
116
+ msgid "No fixable entries found matching the selection."
117
+ msgstr ""
118
+
119
+ msgid "No results found for your search."
102
120
  msgstr ""
103
121
 
104
- msgid "Preupgrade job"
122
+ msgid "Preupgrade check with Leapp"
105
123
  msgstr ""
106
124
 
107
125
  msgid "Remediation plan"
@@ -119,6 +137,12 @@ msgstr ""
119
137
  msgid "Run Upgrade"
120
138
  msgstr ""
121
139
 
140
+ msgid "Search autocomplete for preupgrade report entries"
141
+ msgstr ""
142
+
143
+ msgid "Search string"
144
+ msgstr ""
145
+
122
146
  msgid "Show Preupgrade report"
123
147
  msgstr ""
124
148
 
@@ -143,6 +167,15 @@ msgstr ""
143
167
  msgid "Title"
144
168
  msgstr ""
145
169
 
170
+ msgid "Trigger a remediation job for selected preupgrade report entries"
171
+ msgstr ""
172
+
173
+ msgid "Unknown fix_type value '%s' for search_fix_type"
174
+ msgstr ""
175
+
176
+ msgid "Unknown search key '%s' for search_yes_no_fields"
177
+ msgstr ""
178
+
146
179
  msgid "Upgrade with Leapp"
147
180
  msgstr ""
148
181
 
@@ -8,8 +8,8 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: foreman_leapp 1.0.0\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2026-03-09 16:32+0100\n"
12
- "PO-Revision-Date: 2026-03-09 16:32+0100\n"
11
+ "POT-Creation-Date: 2026-09-29 11:07+0000\n"
12
+ "PO-Revision-Date: 2026-09-29 11:07+0000\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
15
15
  "Language: \n"
@@ -18,6 +18,44 @@ msgstr ""
18
18
  "Content-Transfer-Encoding: 8bit\n"
19
19
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
20
20
 
21
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:13
22
+ msgid "List entries for a specific preupgrade report"
23
+ msgstr ""
24
+
25
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:14
26
+ msgid "List all preupgrade report entries"
27
+ msgstr ""
28
+
29
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:16
30
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:27
31
+ msgid "ID of the preupgrade report"
32
+ msgstr ""
33
+
34
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:25
35
+ msgid "Search autocomplete for preupgrade report entries"
36
+ msgstr ""
37
+
38
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:26
39
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:31
40
+ msgid "Search string"
41
+ msgstr ""
42
+
43
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:30
44
+ msgid "Trigger a remediation job for selected preupgrade report entries"
45
+ msgstr ""
46
+
47
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:32
48
+ msgid "Array of excluded entry IDs"
49
+ msgstr ""
50
+
51
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:38
52
+ msgid "No fixable entries found matching the selection."
53
+ msgstr ""
54
+
55
+ #: ../app/controllers/api/v2/preupgrade_report_entries_controller.rb:53
56
+ msgid "An unexpected error occurred while creating the remediation job."
57
+ msgstr ""
58
+
21
59
  #: ../app/controllers/api/v2/preupgrade_reports_controller.rb:10
22
60
  msgid "List Preupgrade reports"
23
61
  msgstr ""
@@ -44,8 +82,16 @@ msgstr ""
44
82
  msgid "Upgrade with Leapp"
45
83
  msgstr ""
46
84
 
85
+ #: ../app/models/preupgrade_report_entry.rb:62
86
+ msgid "Unknown search key '%s' for search_yes_no_fields"
87
+ msgstr ""
88
+
89
+ #: ../app/models/preupgrade_report_entry.rb:75
90
+ msgid "Unknown fix_type value '%s' for search_fix_type"
91
+ msgstr ""
92
+
47
93
  #: ../lib/foreman_leapp/engine.rb:29
48
- #: ../webpack/components/PreupgradeReportsTable/index.js:159
94
+ #: ../webpack/components/PreupgradeReportsTable/index.js:396
49
95
  msgid "Leapp preupgrade report"
50
96
  msgstr ""
51
97
 
@@ -65,7 +111,7 @@ msgstr ""
65
111
  msgid "Run Remediation plan with Leapp"
66
112
  msgstr ""
67
113
 
68
- #: ../webpack/components/PreupgradeReports/PreupgradeReports.js:122
114
+ #: ../webpack/components/PreupgradeReports/PreupgradeReports.js:129
69
115
  msgid "Could not retrieve data: %(status)s - %(msg)s"
70
116
  msgstr ""
71
117
 
@@ -77,7 +123,7 @@ msgstr ""
77
123
  #: ../webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js:38
78
124
  #: ../webpack/components/PreupgradeReportsList/components/helpers.js:81
79
125
  #: ../webpack/components/PreupgradeReportsTable/ReportDetails.js:33
80
- #: ../webpack/components/PreupgradeReportsTable/index.js:29
126
+ #: ../webpack/components/PreupgradeReportsTable/index.js:135
81
127
  msgid "Title"
82
128
  msgstr ""
83
129
 
@@ -85,13 +131,13 @@ msgstr ""
85
131
  #: ../webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js:13
86
132
  #: ../webpack/components/PreupgradeReportsList/components/helpers.js:95
87
133
  #: ../webpack/components/PreupgradeReportsTable/ReportDetails.js:40
88
- #: ../webpack/components/PreupgradeReportsTable/index.js:37
134
+ #: ../webpack/components/PreupgradeReportsTable/index.js:146
89
135
  msgid "Risk Factor"
90
136
  msgstr ""
91
137
 
92
138
  #: ../webpack/components/PreupgradeReports/components/EntriesFilter.js:21
93
139
  #: ../webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js:12
94
- #: ../webpack/components/PreupgradeReportsTable/index.js:32
140
+ #: ../webpack/components/PreupgradeReportsTable/index.js:140
95
141
  msgid "Host"
96
142
  msgstr ""
97
143
 
@@ -144,18 +190,19 @@ msgid "Command"
144
190
  msgstr ""
145
191
 
146
192
  #: ../webpack/components/PreupgradeReports/components/EntriesFilter.js:42
147
- #: ../webpack/components/PreupgradeReportsTable/index.js:43
148
- #: ../webpack/components/PreupgradeReportsTable/index.js:50
193
+ #: ../webpack/components/PreupgradeReportsTable/index.js:153
194
+ #: ../webpack/components/PreupgradeReportsTable/index.js:162
149
195
  msgid "Yes"
150
196
  msgstr ""
151
197
 
152
198
  #: ../webpack/components/PreupgradeReports/components/EntriesFilter.js:43
153
- #: ../webpack/components/PreupgradeReportsTable/index.js:43
154
- #: ../webpack/components/PreupgradeReportsTable/index.js:53
199
+ #: ../webpack/components/PreupgradeReportsTable/index.js:153
200
+ #: ../webpack/components/PreupgradeReportsTable/index.js:165
155
201
  msgid "No"
156
202
  msgstr ""
157
203
 
158
204
  #: ../webpack/components/PreupgradeReports/components/FixSelectedButton.js:12
205
+ #: ../webpack/components/PreupgradeReportsTable/index.js:443
159
206
  msgid "Fix Selected"
160
207
  msgstr ""
161
208
 
@@ -174,24 +221,25 @@ msgid "No Preupgrade Report Available"
174
221
  msgstr ""
175
222
 
176
223
  #: ../webpack/components/PreupgradeReports/components/UpgradeAllButton.js:8
224
+ #: ../webpack/components/PreupgradeReportsTable/index.js:454
177
225
  msgid "Run Upgrade"
178
226
  msgstr ""
179
227
 
180
228
  #:
181
229
  #: ../webpack/components/PreupgradeReportsList/components/InhibitorInfoItem.js:17
182
- #: ../webpack/components/PreupgradeReportsTable/index.js:49
230
+ #: ../webpack/components/PreupgradeReportsTable/index.js:161
183
231
  msgid "This issue inhibits the upgrade."
184
232
  msgstr ""
185
233
 
186
234
  #:
187
235
  #: ../webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js:14
188
- #: ../webpack/components/PreupgradeReportsTable/index.js:41
236
+ #: ../webpack/components/PreupgradeReportsTable/index.js:152
189
237
  msgid "Has Remediation?"
190
238
  msgstr ""
191
239
 
192
240
  #:
193
241
  #: ../webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js:15
194
- #: ../webpack/components/PreupgradeReportsTable/index.js:46
242
+ #: ../webpack/components/PreupgradeReportsTable/index.js:158
195
243
  msgid "Inhibitor?"
196
244
  msgstr ""
197
245
 
@@ -227,12 +275,12 @@ msgstr ""
227
275
  msgid "Links"
228
276
  msgstr ""
229
277
 
230
- #: ../webpack/components/PreupgradeReportsTable/index.js:180
231
- msgid "The preupgrade report shows no issues."
278
+ #: ../webpack/components/PreupgradeReportsTable/index.js:483
279
+ msgid "No results found for your search."
232
280
  msgstr ""
233
281
 
234
- #: action_names.rb:2
235
- msgid "Preupgrade job"
282
+ #: ../webpack/components/PreupgradeReportsTable/index.js:484
283
+ msgid "The preupgrade report shows no issues."
236
284
  msgstr ""
237
285
 
238
286
  #: gemspec.rb:4
Binary file