foreman_rh_cloud 10.0.2 → 11.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2cacfda4be0f9786225bb206cd63b4a1904867fb49383bb9b9f0e911cc948990
4
- data.tar.gz: 3e973105f40419257f6a4555420286ef47955f74962e7798d6f329d7b5b47a01
3
+ metadata.gz: fcd4ee874e42e9236bbc4fae540911c372af73f3a336507c9421693b8fb128da
4
+ data.tar.gz: da0c96b9b8fb3d737d0f8902da7176adbd2f1a8810260ddeba547c3a22004ec7
5
5
  SHA512:
6
- metadata.gz: 7f30326a06444b4f746b129839a3e228d90cfe0237a26cb251d013e09a64ad9c20d530e7611d102082d1f2c252e19d748b058fab75f44649880395ccaa2fb1ec
7
- data.tar.gz: 3b331d263956ff30f8da848ce249ea13a4b16f09a17dce7b70f01d37f92f516aaf2d9ecd4a0db65c5ffb053b02d6d1efa4d6197ad9abc7426a509627dcd70cf1
6
+ metadata.gz: 12343eaac2bfb4c666c156a84a868f02a3b684f4a4bf044f7a838d9134d140ec6fb698b356c35efb8b11618fa0c36b3a61c0cc411caf48ff91b8fc9957528074
7
+ data.tar.gz: 41f578f21a65aee43ade158a99991c1b3b7b37ee2000e0e1c8c7d55cba60ac94d31e734d205e589bfc1bf1850fb98142b91ea975b3d9580361a11803eac8f17b
@@ -1,5 +1,5 @@
1
1
  module ForemanRhCloud
2
- class UrlRemediationsRetriever < RemediationsRetriever
2
+ class URLRemediationsRetriever < RemediationsRetriever
3
3
  attr_reader :url, :payload, :headers
4
4
 
5
5
  def initialize(url:, organization_id:, payload: '', headers: {}, logger: Logger.new(IO::NULL))
@@ -0,0 +1,3 @@
1
+ Rails.autoloaders.main.ignore(
2
+ ForemanRhCloud::Engine.root.join('lib/foreman_rh_cloud/version.rb')
3
+ )
@@ -20,15 +20,6 @@ module ForemanRhCloud
20
20
  rescue ActiveRecord::TransactionIsolationError
21
21
  end
22
22
 
23
- initializer 'foreman_rh_cloud.load_default_settings', :before => :load_config_initializers do
24
- require_dependency File.expand_path('settings.rb', __dir__)
25
- end
26
-
27
- config.autoload_paths += Dir["#{config.root}/app/controllers/concerns"]
28
- config.autoload_paths += Dir["#{config.root}/app/helpers/concerns"]
29
- config.autoload_paths += Dir["#{config.root}/app/models/concerns"]
30
- config.autoload_paths += Dir["#{config.root}/app/services"]
31
- config.autoload_paths += Dir["#{config.root}/app/overrides"]
32
23
  config.autoload_paths += Dir["#{config.root}/lib"]
33
24
 
34
25
  config.eager_load_paths += Dir["#{config.root}/lib"]
@@ -40,109 +31,124 @@ module ForemanRhCloud
40
31
  end
41
32
  end
42
33
 
43
- initializer 'foreman_rh_cloud.register_plugin', :before => :finisher_hook do |_app|
44
- Foreman::Plugin.register :foreman_rh_cloud do
45
- requires_foreman '>= 3.7'
46
- register_gettext
47
-
48
- apipie_documented_controllers ["#{ForemanRhCloud::Engine.root}/app/controllers/api/v2/**/*.rb"]
49
-
50
- # Add permissions
51
- security_block :foreman_rh_cloud do
52
- permission(
53
- :generate_foreman_rh_cloud,
54
- 'foreman_inventory_upload/reports': [:generate],
55
- 'foreman_inventory_upload/tasks': [:create],
56
- 'api/v2/rh_cloud/inventory': [:get_hosts, :remove_hosts, :sync_inventory_status, :download_file, :generate_report, :enable_cloud_connector],
57
- 'foreman_inventory_upload/uploads': [:enable_cloud_connector],
58
- 'foreman_inventory_upload/uploads_settings': [:set_advanced_setting],
59
- 'foreman_inventory_upload/missing_hosts': [:remove_hosts],
60
- 'insights_cloud/settings': [:update],
61
- 'insights_cloud/tasks': [:create]
62
- )
63
- permission(
64
- :view_foreman_rh_cloud,
65
- 'foreman_inventory_upload/accounts': [:index],
66
- 'foreman_inventory_upload/reports': [:last],
67
- 'foreman_inventory_upload/uploads': [:auto_upload, :show_auto_upload, :download_file, :last],
68
- 'foreman_inventory_upload/tasks': [:show],
69
- 'foreman_inventory_upload/cloud_status': [:index],
70
- 'foreman_inventory_upload/uploads_settings': [:index],
71
- 'foreman_inventory_upload/missing_hosts': [:index],
72
- 'react': [:index]
73
- )
74
- permission(
75
- :view_insights_hits,
76
- {
77
- '/foreman_rh_cloud/insights_cloud': [:index], # for bookmarks and later for showing the page
78
- 'insights_cloud/hits': [:index, :show, :auto_complete_search, :resolutions],
79
- 'insights_cloud/settings': [:index, :show],
80
- 'react': [:index],
81
- },
82
- :resource_type => ::InsightsHit.name
83
- )
84
- permission(
85
- :dispatch_cloud_requests,
86
- 'api/v2/rh_cloud/cloud_request': [:update]
87
- )
88
- permission(
89
- :control_organization_insights,
90
- 'insights_cloud/settings': [:set_org_parameter]
91
- )
92
- end
34
+ initializer 'foreman_rh_cloud.register_plugin', :before => :finisher_hook do |app|
35
+ app.reloader.to_prepare do
36
+ Foreman::Plugin.register :foreman_rh_cloud do
37
+ requires_foreman '>= 3.13'
38
+ register_gettext
39
+
40
+ apipie_documented_controllers ["#{ForemanRhCloud::Engine.root}/app/controllers/api/v2/**/*.rb"]
41
+
42
+ settings do
43
+ category(:rh_cloud, N_('RHCloud')) do
44
+ setting('allow_auto_inventory_upload', type: :boolean, description: N_('Enable automatic upload of your host inventory to the Red Hat cloud'), default: true, full_name: N_('Automatic inventory upload'))
45
+ setting('allow_auto_insights_sync', type: :boolean, description: N_('Enable automatic synchronization of Insights recommendations from the Red Hat cloud'), default: false, full_name: N_('Synchronize recommendations Automatically'))
46
+ setting('allow_auto_insights_mismatch_delete', type: :boolean, description: N_('Enable automatic deletion of mismatched host records from the Red Hat cloud'), default: false, full_name: N_('Automatic mismatch deletion'))
47
+ setting('obfuscate_inventory_hostnames', type: :boolean, description: N_('Obfuscate host names sent to the Red Hat cloud'), default: false, full_name: N_('Obfuscate host names'))
48
+ setting('obfuscate_inventory_ips', type: :boolean, description: N_('Obfuscate ipv4 addresses sent to the Red Hat cloud'), default: false, full_name: N_('Obfuscate host ipv4 addresses'))
49
+ setting('exclude_installed_packages', type: :boolean, description: N_('Exclude installed packages from being uploaded to the Red Hat cloud'), default: false, full_name: N_("Exclude installed Packages"))
50
+ setting('include_parameter_tags', type: :boolean, description: N_('Should import include parameter tags from Foreman?'), default: false, full_name: N_('Include parameters in insights-client reports'))
51
+ setting('rhc_instance_id', type: :string, description: N_('RHC daemon id'), default: nil, full_name: N_('ID of the RHC(Yggdrasil) daemon'))
52
+ end
53
+ end
93
54
 
94
- plugin_permissions = [:view_foreman_rh_cloud, :generate_foreman_rh_cloud, :view_insights_hits, :dispatch_cloud_requests, :control_organization_insights]
55
+ # Add permissions
56
+ security_block :foreman_rh_cloud do
57
+ permission(
58
+ :generate_foreman_rh_cloud,
59
+ 'foreman_inventory_upload/reports': [:generate],
60
+ 'foreman_inventory_upload/tasks': [:create],
61
+ 'api/v2/rh_cloud/inventory': [:get_hosts, :remove_hosts, :sync_inventory_status, :download_file, :generate_report, :enable_cloud_connector],
62
+ 'foreman_inventory_upload/uploads': [:enable_cloud_connector],
63
+ 'foreman_inventory_upload/uploads_settings': [:set_advanced_setting],
64
+ 'foreman_inventory_upload/missing_hosts': [:remove_hosts],
65
+ 'insights_cloud/settings': [:update],
66
+ 'insights_cloud/tasks': [:create]
67
+ )
68
+ permission(
69
+ :view_foreman_rh_cloud,
70
+ 'foreman_inventory_upload/accounts': [:index],
71
+ 'foreman_inventory_upload/reports': [:last],
72
+ 'foreman_inventory_upload/uploads': [:auto_upload, :show_auto_upload, :download_file, :last],
73
+ 'foreman_inventory_upload/tasks': [:show],
74
+ 'foreman_inventory_upload/cloud_status': [:index],
75
+ 'foreman_inventory_upload/uploads_settings': [:index],
76
+ 'foreman_inventory_upload/missing_hosts': [:index],
77
+ 'react': [:index]
78
+ )
79
+ permission(
80
+ :view_insights_hits,
81
+ {
82
+ '/foreman_rh_cloud/insights_cloud': [:index], # for bookmarks and later for showing the page
83
+ 'insights_cloud/hits': [:index, :show, :auto_complete_search, :resolutions],
84
+ 'insights_cloud/settings': [:index, :show],
85
+ 'react': [:index],
86
+ },
87
+ :resource_type => ::InsightsHit.name
88
+ )
89
+ permission(
90
+ :dispatch_cloud_requests,
91
+ 'api/v2/rh_cloud/cloud_request': [:update]
92
+ )
93
+ permission(
94
+ :control_organization_insights,
95
+ 'insights_cloud/settings': [:set_org_parameter]
96
+ )
97
+ end
98
+
99
+ plugin_permissions = [:view_foreman_rh_cloud, :generate_foreman_rh_cloud, :view_insights_hits, :dispatch_cloud_requests, :control_organization_insights]
95
100
 
96
- role 'ForemanRhCloud', plugin_permissions, 'Role granting permissions to view the hosts inventory,
97
- generate a report, upload it to the cloud and download it locally'
101
+ role 'ForemanRhCloud', plugin_permissions, 'Role granting permissions to view the hosts inventory,
102
+ generate a report, upload it to the cloud and download it locally'
98
103
 
99
- add_permissions_to_default_roles Role::ORG_ADMIN => plugin_permissions,
100
- Role::MANAGER => plugin_permissions,
101
- Role::SYSTEM_ADMIN => plugin_permissions
104
+ add_permissions_to_default_roles Role::ORG_ADMIN => plugin_permissions,
105
+ Role::MANAGER => plugin_permissions,
106
+ Role::SYSTEM_ADMIN => plugin_permissions
102
107
 
103
- # Adding a sub menu after hosts menu
104
- divider :top_menu, caption: N_('RH Cloud'), parent: :configure_menu
105
- menu :top_menu, :inventory_upload, caption: N_('Inventory Upload'), url: '/foreman_rh_cloud/inventory_upload', url_hash: { controller: :react, action: :index }, parent: :configure_menu
106
- menu :top_menu, :insights_hits, caption: N_('Insights'), url: '/foreman_rh_cloud/insights_cloud', url_hash: { controller: :react, action: :index }, parent: :configure_menu
108
+ # Adding a sub menu after hosts menu
109
+ divider :top_menu, caption: N_('RH Cloud'), parent: :configure_menu
110
+ menu :top_menu, :inventory_upload, caption: N_('Inventory Upload'), url: '/foreman_rh_cloud/inventory_upload', url_hash: { controller: :react, action: :index }, parent: :configure_menu
111
+ menu :top_menu, :insights_hits, caption: N_('Insights'), url: '/foreman_rh_cloud/insights_cloud', url_hash: { controller: :react, action: :index }, parent: :configure_menu
107
112
 
108
- register_facet InsightsFacet, :insights do
109
- configure_host do
110
- set_dependent_action :destroy
113
+ register_facet InsightsFacet, :insights do
114
+ configure_host do
115
+ set_dependent_action :destroy
116
+ end
111
117
  end
112
- end
113
118
 
114
- register_global_js_file 'global'
119
+ register_global_js_file 'global'
115
120
 
116
- register_custom_status InventorySync::InventoryStatus
117
- register_custom_status InsightsClientReportStatus
121
+ register_custom_status InventorySync::InventoryStatus
122
+ register_custom_status InsightsClientReportStatus
118
123
 
119
- describe_host do
120
- overview_buttons_provider :insights_host_overview_buttons
121
- end
124
+ describe_host do
125
+ overview_buttons_provider :insights_host_overview_buttons
126
+ end
122
127
 
123
- extend_page 'hosts/show' do |context|
124
- context.add_pagelet :main_tabs,
125
- partial: 'hosts/insights_tab',
126
- name: _('Insights'),
127
- id: 'insights',
128
- onlyif: proc { |host| host.insights }
129
- end
128
+ extend_page 'hosts/show' do |context|
129
+ context.add_pagelet :main_tabs,
130
+ partial: 'hosts/insights_tab',
131
+ name: _('Insights'),
132
+ id: 'insights',
133
+ onlyif: proc { |host| host.insights }
134
+ end
130
135
 
131
- extend_page 'hosts/_list' do |context|
132
- context.with_profile :cloud, _('RH Cloud'), default: true do
133
- add_pagelet :hosts_table_column_header, key: :insights_recommendations_count, label: _('Recommendations'), sortable: true, width: '12%', class: 'hidden-xs ellipsis', priority: 100,
134
- export_data: CsvExporter::ExportDefinition.new(:insights_recommendations_count, callback: ->(host) { host&.insights_hits&.count })
135
- add_pagelet :hosts_table_column_content, key: :insights_recommendations_count, callback: ->(host) { hits_counts_cell(host) }, class: 'hidden-xs ellipsis text-center', priority: 100
136
+ extend_page 'hosts/_list' do |context|
137
+ context.with_profile :cloud, _('RH Cloud'), default: true do
138
+ add_pagelet :hosts_table_column_header, key: :insights_recommendations_count, label: _('Recommendations'), sortable: true, width: '12%', class: 'hidden-xs ellipsis', priority: 100,
139
+ export_data: CsvExporter::ExportDefinition.new(:insights_recommendations_count, callback: ->(host) { host&.insights_hits&.count })
140
+ add_pagelet :hosts_table_column_content, key: :insights_recommendations_count, callback: ->(host) { hits_counts_cell(host) }, class: 'hidden-xs ellipsis text-center', priority: 100
141
+ end
136
142
  end
137
- end
138
143
 
139
- extend_template_helpers ForemanRhCloud::TemplateRendererHelper
140
- allowed_template_helpers :remediations_playbook, :download_rh_playbook
141
- end
144
+ extend_template_helpers ForemanRhCloud::TemplateRendererHelper
145
+ allowed_template_helpers :remediations_playbook, :download_rh_playbook
146
+ end
142
147
 
143
- ::Katello::UINotifications::Subscriptions::ManifestImportSuccess.include ForemanInventoryUpload::Notifications::ManifestImportSuccessNotificationOverride if defined?(Katello)
148
+ ::Katello::UINotifications::Subscriptions::ManifestImportSuccess.include ForemanInventoryUpload::Notifications::ManifestImportSuccessNotificationOverride if defined?(Katello)
144
149
 
145
- ::Host::Managed.include RhCloudHost
150
+ ::Host::Managed.include RhCloudHost
151
+ end
146
152
  end
147
153
 
148
154
  rake_tasks do
@@ -1,3 +1,3 @@
1
1
  module ForemanRhCloud
2
- VERSION = '10.0.2'.freeze
2
+ VERSION = '11.0.0'.freeze
3
3
  end
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foreman_rh_cloud",
3
- "version": "10.0.2",
3
+ "version": "11.0.0",
4
4
  "description": "Inventory Upload =============",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,8 +1,8 @@
1
1
  require 'test_plugin_helper'
2
2
 
3
- class UrlRemediationsRetrieverTest < ActiveSupport::TestCase
3
+ class URLRemediationsRetrieverTest < ActiveSupport::TestCase
4
4
  test 'Calls the given url' do
5
- retreiver = ForemanRhCloud::UrlRemediationsRetriever.new(
5
+ retreiver = ForemanRhCloud::URLRemediationsRetriever.new(
6
6
  organization_id: FactoryBot.create(:organization).id,
7
7
  url: 'http://test.example.com',
8
8
  payload: 'TEST_PAYLOAD',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_rh_cloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.0.2
4
+ version: 11.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Foreman Red Hat Cloud team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-09 00:00:00.000000000 Z
11
+ date: 2024-09-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: foreman_ansible
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 15.0.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 15.0.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: foreman-tasks
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 10.0.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 10.0.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: katello
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -144,6 +144,7 @@ files:
144
144
  - app/views/job_templates/rh_cloud_remediations.erb
145
145
  - app/views/layouts/foreman_rh_cloud/application.html.erb
146
146
  - config/database.yml.example
147
+ - config/initializers/zeitwerk.rb
147
148
  - config/package-lock.json.plugin
148
149
  - config/rh_cert-api_chain.pem
149
150
  - config/routes.rb
@@ -185,7 +186,6 @@ files:
185
186
  - lib/foreman_rh_cloud.rb
186
187
  - lib/foreman_rh_cloud/async/exponential_backoff.rb
187
188
  - lib/foreman_rh_cloud/engine.rb
188
- - lib/foreman_rh_cloud/settings.rb
189
189
  - lib/foreman_rh_cloud/version.rb
190
190
  - lib/insights_cloud.rb
191
191
  - lib/insights_cloud/async/cloud_connector_announce_task.rb
@@ -1,12 +0,0 @@
1
- Foreman::SettingManager.define(:foreman) do
2
- category(:rh_cloud, N_('RHCloud')) do
3
- setting('allow_auto_inventory_upload', type: :boolean, description: N_('Enable automatic upload of your host inventory to the Red Hat cloud'), default: true, full_name: N_('Automatic inventory upload'))
4
- setting('allow_auto_insights_sync', type: :boolean, description: N_('Enable automatic synchronization of Insights recommendations from the Red Hat cloud'), default: false, full_name: N_('Synchronize recommendations Automatically'))
5
- setting('allow_auto_insights_mismatch_delete', type: :boolean, description: N_('Enable automatic deletion of mismatched host records from the Red Hat cloud'), default: false, full_name: N_('Automatic mismatch deletion'))
6
- setting('obfuscate_inventory_hostnames', type: :boolean, description: N_('Obfuscate host names sent to the Red Hat cloud'), default: false, full_name: N_('Obfuscate host names'))
7
- setting('obfuscate_inventory_ips', type: :boolean, description: N_('Obfuscate ipv4 addresses sent to the Red Hat cloud'), default: false, full_name: N_('Obfuscate host ipv4 addresses'))
8
- setting('exclude_installed_packages', type: :boolean, description: N_('Exclude installed packages from being uploaded to the Red Hat cloud'), default: false, full_name: N_("Exclude installed Packages"))
9
- setting('include_parameter_tags', type: :boolean, description: N_('Should import include parameter tags from Foreman?'), default: false, full_name: N_('Include parameters in insights-client reports'))
10
- setting('rhc_instance_id', type: :string, description: N_('RHC daemon id'), default: nil, full_name: N_('ID of the RHC(Yggdrasil) daemon'))
11
- end
12
- end