foreman_leapp 0.0.6 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -20
  3. data/app/controllers/api/v2/concerns/api_authorizer.rb +27 -0
  4. data/app/controllers/api/v2/preupgrade_reports_controller.rb +21 -2
  5. data/app/controllers/preupgrade_reports_controller.rb +11 -1
  6. data/app/lib/actions/preupgrade_job.rb +2 -1
  7. data/app/lib/helpers/job_helper.rb +3 -4
  8. data/app/models/preupgrade_report.rb +1 -0
  9. data/app/models/preupgrade_report_entry.rb +1 -0
  10. data/app/views/api/v2/preupgrade_report_entries/base.json.rabl +1 -1
  11. data/app/views/api/v2/preupgrade_reports/job_invocation.json.rabl +3 -0
  12. data/app/views/foreman_leapp/job_templates/leapp_check.erb +15 -0
  13. data/app/views/foreman_leapp/job_templates/{preupgrade.erb → leapp_preupgrade.erb} +5 -2
  14. data/app/views/foreman_leapp/job_templates/leapp_remediation.erb +29 -0
  15. data/app/views/foreman_leapp/job_templates/{upgrade.erb → leapp_upgrade.erb} +9 -7
  16. data/config/routes.rb +2 -1
  17. data/db/migrate/20200429080939_report_entries_flags.rb +5 -0
  18. data/db/seeds.d/10_leapp_preupgrade.rb +1 -1
  19. data/lib/foreman_leapp/engine.rb +7 -6
  20. data/lib/foreman_leapp/version.rb +1 -1
  21. data/locale/action_names.rb +6 -0
  22. data/locale/en/foreman_leapp.po +104 -2
  23. data/locale/foreman_leapp.pot +164 -8
  24. data/package.json +3 -2
  25. data/test/functional/api/v2/preupgrade_reports_controller_test.rb +89 -6
  26. data/test/functional/preupgrade_reports_controller_test.rb +27 -4
  27. data/test/unit/actions/preupgrade_job_test.rb +1 -1
  28. data/test/unit/helpers/job_helper_test.rb +3 -10
  29. data/webpack/__mocks__/foremanReact/common/I18n.js +1 -1
  30. data/webpack/__mocks__/foremanReact/components/common/EmptyState.js +1 -0
  31. data/webpack/components/PreupgradeReports/PreupgradeReports.js +104 -21
  32. data/webpack/components/PreupgradeReports/PreupgradeReportsActions.js +1 -1
  33. data/webpack/components/PreupgradeReports/PreupgradeReportsHelpers.js +132 -15
  34. data/webpack/components/PreupgradeReports/PreupgradeReportsReducer.js +2 -0
  35. data/webpack/components/PreupgradeReports/PreupgradeReportsSelectors.js +10 -0
  36. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.fixtures.js +45 -7
  37. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReports.test.js +17 -1
  38. data/webpack/components/PreupgradeReports/__tests__/PreupgradeReportsHelpers.test.js +43 -3
  39. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReports.test.js.snap +82 -134
  40. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsHelpers.test.js.snap +409 -2
  41. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsReducer.test.js.snap +21 -1
  42. data/webpack/components/PreupgradeReports/__tests__/__snapshots__/PreupgradeReportsSelectors.test.js.snap +17 -1
  43. data/webpack/components/PreupgradeReports/components/EntriesFilter.js +121 -0
  44. data/webpack/components/PreupgradeReports/components/EntriesFilter.scss +3 -0
  45. data/webpack/components/PreupgradeReports/components/EntriesFilter.test.js +30 -0
  46. data/webpack/components/PreupgradeReports/components/{FixAllButton.js → FixSelectedButton.js} +6 -8
  47. data/webpack/components/PreupgradeReports/components/FixSelectedButton.test.js +15 -0
  48. data/webpack/components/PreupgradeReports/components/NoReports.js +35 -0
  49. data/webpack/components/PreupgradeReports/components/NoReports.test.js +15 -0
  50. data/webpack/components/PreupgradeReports/components/UpgradeAllButton.js +29 -0
  51. data/webpack/components/PreupgradeReports/components/{FixAllButton.test.js → UpgradeAllButton.test.js} +3 -4
  52. data/webpack/components/PreupgradeReports/components/__snapshots__/EntriesFilter.test.js.snap +330 -0
  53. data/webpack/components/PreupgradeReports/components/__snapshots__/{FixAllButton.test.js.snap → FixSelectedButton.test.js.snap} +9 -3
  54. data/webpack/components/PreupgradeReports/components/__snapshots__/NoReports.test.js.snap +19 -0
  55. data/webpack/components/PreupgradeReports/components/__snapshots__/UpgradeAllButton.test.js.snap +29 -0
  56. data/webpack/components/PreupgradeReports/index.js +22 -4
  57. data/webpack/components/PreupgradeReportsList/PreupgradeReportList.scss +37 -0
  58. data/webpack/components/PreupgradeReportsList/__tests__/PreupgradeReportsList.test.js +16 -0
  59. data/webpack/components/PreupgradeReportsList/__tests__/__snapshots__/PreupgradeReportsList.test.js.snap +38 -0
  60. data/webpack/components/PreupgradeReportsList/components/InfoItem.js +1 -1
  61. data/webpack/components/PreupgradeReportsList/components/InhibitorInfoItem.js +33 -0
  62. data/webpack/components/PreupgradeReportsList/components/PreupgradeReportEntry.js +19 -9
  63. data/webpack/components/PreupgradeReportsList/components/PreupgradeReportsListHeader.js +56 -0
  64. data/webpack/components/PreupgradeReportsList/components/SortableHeaderItem.js +50 -0
  65. data/webpack/components/PreupgradeReportsList/components/__tests__/InhibitorInfoItem.test.js +27 -0
  66. data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportEntry.test.js +2 -0
  67. data/webpack/components/PreupgradeReportsList/components/__tests__/PreupgradeReportsListHeader.test.js +14 -0
  68. data/webpack/components/PreupgradeReportsList/components/__tests__/SortableHeaderItem.test.js +29 -0
  69. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/InhibitorInfoItem.test.js.snap +32 -0
  70. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/PreupgradeReportEntry.test.js.snap +23 -17
  71. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/PreupgradeReportsListHeader.test.js.snap +113 -0
  72. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/SortableHeaderItem.test.js.snap +36 -0
  73. data/webpack/components/PreupgradeReportsList/components/__tests__/__snapshots__/helpers.test.js.snap +4 -10
  74. data/webpack/components/PreupgradeReportsList/components/__tests__/helpers.test.js +0 -2
  75. data/webpack/components/PreupgradeReportsList/components/foreman_leapp.scss +7 -1
  76. data/webpack/components/PreupgradeReportsList/components/helpers.js +47 -19
  77. data/webpack/components/PreupgradeReportsList/components/images/i_severity-critical.svg +61 -0
  78. data/webpack/components/PreupgradeReportsList/components/images/i_severity-high.svg +61 -0
  79. data/webpack/components/PreupgradeReportsList/components/images/i_severity-low.svg +62 -0
  80. data/webpack/components/PreupgradeReportsList/components/images/i_severity-med.svg +62 -0
  81. data/webpack/components/PreupgradeReportsList/index.js +28 -3
  82. metadata +54 -18
  83. data/app/views/foreman_leapp/job_templates/remediation.erb +0 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a75680a7afc44c4a8e90727d2319a53b231748a6db1f8a1c3627c319b3483902
4
- data.tar.gz: 8506877b49e172205eeadb3a898d9ee5e8e1235525155673d52b98efdfb7441f
3
+ metadata.gz: 59cdca70be055403d924f568f8ccdd333123fbbdd6d6665bdaa7ca59706b7410
4
+ data.tar.gz: f1e4859e8b1c84faf8807d58656205ee60d2a8139ad304ec220810c64976f8c7
5
5
  SHA512:
6
- metadata.gz: 18a93546178c2252cd530f913d98633e24808dbf66698ddff5d4249d2eec0c9df2513447a304df59cd55e4b54c0bcefb31cae0713dd002ca1895bb78bb19be28
7
- data.tar.gz: 4993f008708cdb78a9defd9cd311cadb7396e75ad16f0827675ab32e0361e5ad5154810d3e8b1d5f9504d1db2849c6aebe9addae16006a9ff8698b70719b2247
6
+ metadata.gz: 89d6b5ebb3171d2a286f91995fd719652bcd486d3038b3e349ea8a147925464d41d1cc47e52d0b4e719a57c1aa88ca458eb36745870d7e1b3796a8c33779c42a
7
+ data.tar.gz: ffe034b5513860e72b8c4672b5a444c886334f21a7f7d232b4eb82e9b92d8defd8fca5150fc257d69ce7263c38f12941d2558ac04809aa023cdba7109a240834
data/README.md CHANGED
@@ -1,32 +1,23 @@
1
1
  # ForemanLeapp
2
2
 
3
- This plugin allows to run inplace upgrades for rhel7 vms in foreman using leapp tool.
4
- For more information about leapp check [github](https://github.com/oamg/leapp) or
5
- [developer docs](https://leapp.readthedocs.io/en/latest/).
3
+ This plugin allows to run inplace upgrades for RHEL 7 hosts in Foreman using Leapp tool.
4
+ For more information about Leapp tool check [github](https://github.com/oamg/leapp) or [developer docs](https://leapp.readthedocs.io/en/latest/).
6
5
 
7
6
  ## Installation
8
7
 
9
- See [How_to_Install_a_Plugin](http://projects.theforeman.org/projects/foreman/wiki/How_to_Install_a_Plugin)
10
- for how to install Foreman plugins
8
+ See [Plugins Manual](https://www.theforeman.org/plugins/#2.Installation) for how to install Foreman plugins.
11
9
 
12
10
  ## Usage
13
11
 
14
- The plugin will add 2 remote execution jobs, "Run preupgrade via leapp" and "Run upgrade via leapp". Only
15
- preupgrade reports storage and retrieval has been implemented so far.
12
+ The plugin will add following jobs:
13
+ - Run preupgrade via Leapp
14
+ - Remediation plan
15
+ - Run upgrade via Leapp
16
16
 
17
- After running a preupgrade remote execution job on one or more foreman hosts the report can be retrieved from foreman db.
18
-
19
- The retrieval api looks like:
20
-
21
- - to fetch a specific preupgrade report - GET http://FOREMAN_URL:FOREMAN_PORT/api/v2/preupgrade_reports/REPORT_ID.
22
- - to fetch all reports for specific job invocation - GET http://FOREMAN_URL:FOREMAN_PORT/api/v2/aggregation/JOB_INVOCATION_ID.
23
- - to fetch last preupgrade report per host - GET http://FOREMAN_URL:FOREMAN_PORT/api/v2/preupgrade_reports/hosts/HOST_NAME_OR_ID/last.
24
-
25
- ## TODO
26
-
27
- - Unit tests
28
- - Automate rubocop checks
29
- - Frontend (either from scratch or adapt the react/patternfly/typescript one for cockpit upgrades)
17
+ ## Api
18
+ - `GET /api/preupgrade_reports` List Preupgrade reports
19
+ - `GET /api/preupgrade_reports/:id` Show Preupgrade report
20
+ - `GET /api/job_invocations/:id/preupgrade_reports` List Preupgrade reports for Job invocation
30
21
 
31
22
  ## Contributing
32
23
 
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ApiAuthorizer
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ before_action :hosts_permission
8
+ end
9
+
10
+ private
11
+
12
+ def hosts_permission
13
+ return if User.current.can?('view_hosts')
14
+
15
+ render_error 'access_denied', status: :forbidden,
16
+ locals: { details: _('Missing one of the required permissions: view_hosts'),
17
+ missing_permissions: 'view_hosts' }
18
+ end
19
+
20
+ def resource_scope(_options = {})
21
+ @resource_scope ||= begin
22
+ scope = PreupgradeReport.joins(:host).merge(Host.authorized(:view_hosts, Host))
23
+ scope = scope.where(job_invocation_id: params[:id]) if action_name == 'job_invocation'
24
+ scope
25
+ end
26
+ end
27
+ end
@@ -3,7 +3,9 @@
3
3
  module Api
4
4
  module V2
5
5
  class PreupgradeReportsController < ::Api::V2::BaseController
6
- before_action :find_resource, only: %i[show]
6
+ include ApiAuthorizer
7
+
8
+ layout 'api/v2/layouts/index_layout', except: %i[show]
7
9
 
8
10
  api :GET, '/preupgrade_reports/', N_('List Preupgrade reports')
9
11
  param_group :search_and_pagination, ::Api::V2::BaseController
@@ -13,7 +15,24 @@ module Api
13
15
 
14
16
  api :GET, '/preupgrade_reports/:id', N_('Show Preupgrade report')
15
17
  param :id, :identifier, required: true
16
- def show; end
18
+ def show
19
+ @preupgrade_report = resource_scope.find(params[:id])
20
+ end
21
+
22
+ api :GET, '/job_invocations/:id/preupgrade_reports', N_('List Preupgrade reports for Job invocation')
23
+ param :id, :identifier, required: true
24
+ def job_invocation
25
+ @preupgrade_reports = resource_scope_for_index.where(job_invocation_id: params[:id])
26
+ end
27
+
28
+ private
29
+
30
+ # By overriding path_to_authenticate we can require REX's permission view_job_invocations
31
+ def path_to_authenticate
32
+ params['action'] = 'show' if params['action'] == 'job_invocation'
33
+ Foreman::AccessControl.normalize_path_hash params.slice(:action, :id, :user_id)
34
+ .merge({ controller: 'api/v2/job_invocations' })
35
+ end
17
36
  end
18
37
  end
19
38
  end
@@ -1,7 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class PreupgradeReportsController < ::Api::V2::BaseController
4
+ include ApiAuthorizer
5
+
4
6
  def index
5
- @preupgrade_reports = resource_scope.search_for(*search_options)
7
+ @preupgrade_reports = resource_scope.includes(:preupgrade_report_entries).search_for(*search_options)
8
+ end
9
+
10
+ private
11
+
12
+ # By overriding :path_to_authenticate we can require REX's :view_job_invocations permission
13
+ def path_to_authenticate
14
+ Foreman::AccessControl.normalize_path_hash params.slice(:action, :id, :user_id)
15
+ .merge({ controller: 'job_invocations' })
6
16
  end
7
17
  end
@@ -8,7 +8,8 @@ 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')
11
+ return unless ::Helpers::JobHelper.correct_feature?(job_invocation, 'leapp_preupgrade') ||
12
+ ::Helpers::JobHelper.correct_feature?(job_invocation, 'leapp_remediation_plan')
12
13
 
13
14
  plan_self(host_id: host.id, job_invocation_id: job_invocation.id)
14
15
  end
@@ -4,10 +4,9 @@ module Helpers
4
4
  module JobHelper
5
5
  class << self
6
6
  def correct_feature?(job_invocation, feature)
7
- job_invocation.job_category == ::ForemanLeapp::JOB_CATEGORY &&
8
- RemoteExecutionFeature.find_by(job_template_id: job_invocation.pattern_template_invocations
9
- .pluck(:template_id)
10
- .first)&.label == feature
7
+ RemoteExecutionFeature.where(job_template_id: job_invocation.pattern_template_invocations
8
+ .first
9
+ .template_id, label: feature).any?
11
10
  end
12
11
  end
13
12
  end
@@ -27,6 +27,7 @@ class PreupgradeReport < ::Report
27
27
  leapp_run_id: data['leapp_run_id'],
28
28
  summary: entry['summary'],
29
29
  tags: entry['tags'],
30
+ flags: entry['flags'],
30
31
  detail: entry['detail'] }
31
32
  end
32
33
  end
@@ -5,6 +5,7 @@ class PreupgradeReportEntry < ApplicationRecord
5
5
  belongs_to_host
6
6
 
7
7
  serialize :tags, Array
8
+ serialize :flags, Array
8
9
  serialize :detail, JSON
9
10
 
10
11
  validates :preupgrade_report, :host, :hostname, :title, :actor, :audience, :severity, :leapp_run_id, presence: true
@@ -1,4 +1,4 @@
1
1
  object @preupgrade_report_entry
2
2
 
3
3
  attributes :id, :preupgrade_report_id, :host_id, :hostname, :title, :actor, :audience,
4
- :severity, :leapp_run_id, :summary, :tags, :created_at, :updated_at
4
+ :severity, :leapp_run_id, :summary, :tags, :flags, :created_at, :updated_at
@@ -0,0 +1,3 @@
1
+ collection @preupgrade_reports
2
+
3
+ extends 'api/v2/preupgrade_reports/base'
@@ -0,0 +1,15 @@
1
+ <%#
2
+ name: Check Leapp
3
+ description_format: 'Check if Leapp package is installed.'
4
+ kind: job_template
5
+ job_category: Leapp
6
+ provider_type: SSH
7
+ snippet: true
8
+ model: JobTemplate
9
+ %>
10
+
11
+ if ! command -v leapp > /dev/null
12
+ then
13
+ echo "Leapp is not installed."
14
+ exit 1
15
+ fi
@@ -1,14 +1,17 @@
1
1
  <%#
2
2
  kind: job_template
3
3
  name: Run preupgrade via Leapp
4
- job_category: Leapp
4
+ job_category: Leapp - Preupgrade
5
5
  description_format: 'Upgradeability check for RHEL 7 host'
6
6
  provider_type: SSH
7
7
  feature: leapp_preupgrade
8
+ model: JobTemplate
8
9
  %>
9
10
 
11
+ <%= render_template 'Check Leapp' %>
12
+
13
+ rm -f /var/log/leapp/leapp-report.json
10
14
  leapp preupgrade
11
- [ $? -eq 0 ] || exit 1
12
15
 
13
16
  echo "===leap_upgrade_report_start==="
14
17
  cat /var/log/leapp/leapp-report.json
@@ -0,0 +1,29 @@
1
+ <%#
2
+ kind: job_template
3
+ name: Run remediation plan via Leapp
4
+ job_category: Other
5
+ description_format: 'Run remediation plan via Leapp'
6
+ provider_type: SSH
7
+ feature: leapp_remediation_plan
8
+ model: JobTemplate
9
+ template_inputs:
10
+ - name: remediation_ids
11
+ required: true
12
+ advanced: true
13
+ input_type: user
14
+ value_type: plain
15
+ description: List of remediation ids
16
+ - name: run_preupgrade
17
+ description: Run preupgrade check again when remediation entries are fixed.
18
+ input_type: user
19
+ required: true
20
+ options: "true\nfalse"
21
+ default: "true"
22
+ %>
23
+
24
+ <%= render_template 'Check Leapp' %>
25
+
26
+ <%= build_remediation_plan(input('remediation_ids').split(','), @host) %>
27
+ <% if input('run_preupgrade') == 'true' %>
28
+ <%= render_template 'Run preupgrade via Leapp' %>
29
+ <% end %>
@@ -1,24 +1,26 @@
1
1
  <%#
2
2
  kind: job_template
3
3
  name: Run upgrade via Leapp
4
- job_category: Ansible Playbook
4
+ job_category: Leapp - Upgrade
5
5
  description_format: 'Upgrade RHEL 7 host'
6
6
  provider_type: Ansible
7
7
  feature: leapp_upgrade
8
+ model: JobTemplate
8
9
  template_inputs:
9
- - name: reboot
10
- description: reboot the vm automaticaly to continue with the upgrade
10
+ - name: Reboot
11
+ description: Reboot the host automaticaly to continue with the upgrade
11
12
  input_type: user
12
- required: false
13
- options: "false\ntrue"
13
+ required: true
14
+ default: "true"
15
+ options: "true\nfalse"
14
16
  %>
15
17
  ---
16
18
  - hosts: all
17
19
  tasks:
18
20
  - name: Run Leapp Upgrade
19
21
  command: leapp upgrade
20
- <% if input('reboot') == "true" %>
22
+ <%- if input('Reboot') == "true" -%>
21
23
  - name: Reboot the machine
22
24
  reboot:
23
25
  reboot_timeout: 1800
24
- <% end %>
26
+ <%- end -%>
@@ -4,8 +4,9 @@ Rails.application.routes.draw do
4
4
  resources :preupgrade_reports, :only => %i[index]
5
5
 
6
6
  namespace :api, defaults: { format: 'json' } do
7
- scope '(:apiv)', module: :v2, defaults: { apiv: 'v2'}, apiv: /v2/, constraints: ApiConstraints.new( version: 2, default: true) do
7
+ scope '(:apiv)', module: :v2, defaults: { apiv: 'v2' }, apiv: /v2/, constraints: ApiConstraints.new( version: 2, default: true) do
8
8
  resources :preupgrade_reports, only: %i[index show]
9
+ get 'job_invocations/:id/preupgrade_reports', to: 'preupgrade_reports#job_invocation'
9
10
  end
10
11
  end
11
12
  end
@@ -0,0 +1,5 @@
1
+ class ReportEntriesFlags < ActiveRecord::Migration[6.0]
2
+ def change
3
+ add_column :preupgrade_report_entries, :flags, :text
4
+ end
5
+ end
@@ -9,7 +9,7 @@ User.as_anonymous_admin do
9
9
  'job_templates/**/*.erb')].each do |template|
10
10
  template = JobTemplate.import_raw!(File.read(template),
11
11
  :default => true,
12
- :locked => true,
12
+ :lock => true,
13
13
  :update => true)
14
14
  template.organizations = organizations if template.present?
15
15
  template.locations = locations if template.present?
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ForemanLeapp
4
- JOB_CATEGORY = 'Leapp'
5
-
6
4
  class Engine < ::Rails::Engine
7
5
  engine_name 'foreman_leapp'
8
6
 
@@ -23,7 +21,7 @@ module ForemanLeapp
23
21
 
24
22
  initializer 'foreman_leapp.register_plugin', before: :finisher_hook do |_app|
25
23
  Foreman::Plugin.register :foreman_leapp do
26
- requires_foreman '>= 1.16'
24
+ requires_foreman '>= 2.1'
27
25
 
28
26
  apipie_documented_controllers ["#{ForemanLeapp::Engine.root}/app/controllers/api/v2/*.rb"]
29
27
  extend_template_helpers ForemanLeapp::TemplateHelper
@@ -33,7 +31,10 @@ module ForemanLeapp
33
31
  partial: 'job_invocations/leapp_preupgrade_report',
34
32
  name: _('Leapp preupgrade report'),
35
33
  id: 'leapp_preupgrade_report',
36
- onlyif: proc { |subject| ::Helpers::JobHelper.correct_feature?(subject, 'leapp_preupgrade') }
34
+ onlyif: proc { |subject|
35
+ ::Helpers::JobHelper.correct_feature?(subject, 'leapp_preupgrade') ||
36
+ ::Helpers::JobHelper.correct_feature?(subject, 'leapp_remediation_plan')
37
+ }
37
38
  end
38
39
  end
39
40
  end
@@ -41,8 +42,8 @@ module ForemanLeapp
41
42
  # Include concerns in this config.to_prepare block
42
43
  config.to_prepare do
43
44
  begin
44
- HostsHelper.prepend ForemanLeapp::HostsHelperExtensions
45
- Host::JobInvocation.include ForemanLeapp::JobInvocationExtensions
45
+ ::HostsHelper.prepend ForemanLeapp::HostsHelperExtensions
46
+ ::JobInvocation.include ForemanLeapp::JobInvocationExtensions
46
47
  rescue StandardError => e
47
48
  Rails.logger.warn "ForemanLeapp: skipping engine hook (#{e})"
48
49
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ForemanLeapp
4
- VERSION = '0.0.6'
4
+ VERSION = '0.1.4'
5
5
  end
@@ -0,0 +1,6 @@
1
+ # Autogenerated!
2
+ _("Preupgrade job")
3
+ _("Remote action:")
4
+ _("Import Puppet classes")
5
+ _("Import facts")
6
+ _("Action with sub plans")
@@ -2,12 +2,10 @@
2
2
  #
3
3
  # This file is distributed under the same license as foreman_leapp.
4
4
  #
5
- #, fuzzy
6
5
  msgid ""
7
6
  msgstr ""
8
7
  "Project-Id-Version: version 0.0.1\n"
9
8
  "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2014-08-20 08:46+0100\n"
11
9
  "PO-Revision-Date: 2014-08-20 08:54+0100\n"
12
10
  "Last-Translator: Foreman Team <foreman-dev@googlegroups.com>\n"
13
11
  "Language-Team: Foreman Team <foreman-dev@googlegroups.com>\n"
@@ -17,3 +15,107 @@ msgstr ""
17
15
  "Content-Transfer-Encoding: 8bit\n"
18
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
17
 
18
+ msgid "A foreman plugin to support inplace RHEL 7 -> RHEL 8 upgrades with Leapp utility."
19
+ msgstr ""
20
+
21
+ msgid "All"
22
+ msgstr ""
23
+
24
+ msgid "Command"
25
+ msgstr ""
26
+
27
+ msgid "Fix Selected"
28
+ msgstr ""
29
+
30
+ msgid "Fix Type"
31
+ msgstr ""
32
+
33
+ msgid "Has Remediation?"
34
+ msgstr ""
35
+
36
+ msgid "High"
37
+ msgstr ""
38
+
39
+ msgid "Hint"
40
+ msgstr ""
41
+
42
+ msgid "Host"
43
+ msgstr ""
44
+
45
+ msgid "Info"
46
+ msgstr ""
47
+
48
+ msgid "Inhibitor"
49
+ msgstr ""
50
+
51
+ msgid "Inhibitor?"
52
+ msgstr ""
53
+
54
+ msgid "Leapp preupgrade report"
55
+ msgstr ""
56
+
57
+ msgid "List Preupgrade reports"
58
+ msgstr ""
59
+
60
+ msgid "List Preupgrade reports for Job invocation"
61
+ msgstr ""
62
+
63
+ msgid "Low"
64
+ msgstr ""
65
+
66
+ msgid "Medium"
67
+ msgstr ""
68
+
69
+ msgid "Missing one of the required permissions: view_hosts"
70
+ msgstr ""
71
+
72
+ msgid "No"
73
+ msgstr ""
74
+
75
+ msgid "No Preupgrade Report Available"
76
+ msgstr ""
77
+
78
+ msgid "Preupgrade check with Leapp"
79
+ msgstr ""
80
+
81
+ msgid "Remediation plan"
82
+ msgstr ""
83
+
84
+ msgid "Rerun preupgrade check"
85
+ msgstr ""
86
+
87
+ msgid "Risk Factor"
88
+ msgstr ""
89
+
90
+ msgid "Run Leapp Preupgrade check again"
91
+ msgstr ""
92
+
93
+ msgid "Run Leapp upgrade job for RHEL 7 host"
94
+ msgstr ""
95
+
96
+ msgid "Run Remediation plan with Leapp"
97
+ msgstr ""
98
+
99
+ msgid "Run Upgrade"
100
+ msgstr ""
101
+
102
+ msgid "Show Preupgrade report"
103
+ msgstr ""
104
+
105
+ msgid "The preupgrade report will be available after the job finishes"
106
+ msgstr ""
107
+
108
+ msgid "This issue inhibits the upgrade."
109
+ msgstr ""
110
+
111
+ msgid "Title"
112
+ msgstr ""
113
+
114
+ msgid "Upgrade with Leapp"
115
+ msgstr ""
116
+
117
+ msgid "Upgradeability check for RHEL 7 host"
118
+ msgstr ""
119
+
120
+ msgid "Yes"
121
+ msgstr ""