foreman_rh_cloud 9.0.57 → 10.0.1

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: 63684c35a1618be19a8a593c01271deda04e42afce5bb29b604b9af5bc6bba32
4
- data.tar.gz: 7e431b41e130d528a4528fbcba7c4aef6efb1c44228c43691c1cad8a58afb690
3
+ metadata.gz: 0ff94b0740c89b0b945f90e7feba658b30341a7f8bb5c1fd2e59cdfc68d05969
4
+ data.tar.gz: b25c4f29a021b554b425d6d464971aed419e3021736730b696710c10e9804670
5
5
  SHA512:
6
- metadata.gz: 19c9d15f55a75ef46d56b0b45e1058472afb6d69a8ce496730d5154d563c07f95ce52e099b0ab95115c0c3833b5b030c34d76cdbe78035d336deec6b84357432
7
- data.tar.gz: d4e1e3ea2f38b898a527e05ce841f5f9d981fdb685a5dd706734e02b1f79baeb57f031e67ca20a34f4c492da18dafc0e138acc05b38bbaee61164f548e1962b7
6
+ metadata.gz: 6c4b8398e71971b211bb7eb5a76f3d4acd2a274eb69cd9c6f33c8961e0824c8f9da3a34e7ae72c438ab9ddc5042f9a4e3aee53bf24c5ad07ce617b3bdba83eee
7
+ data.tar.gz: a0f2b3d8d0b1ddf1c0bccd5eeef2c818d8f81bf1a05eaa5e9f0a9bacd70368381d362343f5bc454023b258c238127664f4aaac709fe40feae03ae8b400f80f0c
@@ -38,7 +38,7 @@ module ForemanRhCloud
38
38
  def prepare_forward_payload(original_request, controller_name)
39
39
  forward_payload = original_request.request_parameters[controller_name]
40
40
 
41
- forward_payload = original_request.raw_post.clone if original_request.post? && original_request.raw_post
41
+ forward_payload = original_request.raw_post.clone if (original_request.post? || original_request.patch?) && original_request.raw_post
42
42
  forward_payload = original_request.body.read if original_request.put?
43
43
 
44
44
  forward_payload = original_request.params.slice(:file, :metadata) if original_request.params[:file]
@@ -6,7 +6,7 @@ module ForemanInventoryUpload
6
6
  extend ActiveSupport::Concern
7
7
 
8
8
  CLOUD_AMAZON = 'aws'
9
- CLOUD_GOOGLE = 'google'
9
+ CLOUD_GOOGLE = 'gcp'
10
10
  CLOUD_AZURE = 'azure'
11
11
  CLOUD_ALIBABA = 'alibaba'
12
12
 
@@ -75,7 +75,7 @@ module ForemanInventoryUpload
75
75
  end
76
76
 
77
77
  def self.inventory_export_url
78
- tags = URI.encode("satellite/satellite_instance_id=#{Foreman.instance_id}")
78
+ tags = CGI.escape("satellite/satellite_instance_id=#{Foreman.instance_id}")
79
79
  inventory_base_url + "?tags=#{tags}"
80
80
  end
81
81
 
@@ -1,3 +1,3 @@
1
1
  module ForemanRhCloud
2
- VERSION = '9.0.57'.freeze
2
+ VERSION = '10.0.1'.freeze
3
3
  end
@@ -60,7 +60,13 @@ module InsightsCloud
60
60
 
61
61
  def write_resolutions(response)
62
62
  all_resolutions = response.map do |rule_id, rule_details|
63
- rule_details['resolutions'].map { |resolution| to_resolution_hash(to_rule_id(rule_id), resolution) }
63
+ if rule_details
64
+ rule_details['resolutions'].map { |resolution| to_resolution_hash(to_rule_id(rule_id), resolution) }
65
+ else
66
+ logger.info("Rules response: #{rule_id} #{rule_details}")
67
+ logger.debug("Response: #{response}\n Failed id #{rule_id}")
68
+ []
69
+ end
64
70
  end.flatten
65
71
 
66
72
  InsightsResolution.create(all_resolutions)
@@ -68,7 +68,7 @@ module InventorySync
68
68
 
69
69
  def to_ip_address_string(ip_addresses)
70
70
  string_size = 0
71
- ip_addresses.take_while { |address| (string_size += address.length) <= MAX_IP_STRING_SIZE }
71
+ ip_addresses&.take_while { |address| (string_size += address.length) <= MAX_IP_STRING_SIZE }
72
72
  end
73
73
 
74
74
  def plan_self_host_sync
@@ -15,9 +15,10 @@ namespace :rh_cloud_insights do
15
15
  end
16
16
 
17
17
  cleaner = ForemanRhCloud::InsightsStatusCleaner.new
18
- deleted_count = cleaner.clean(hosts_search)
19
-
20
- puts "Deleted #{deleted_count} insights statuses"
18
+ User.as_anonymous_admin do
19
+ deleted_count = cleaner.clean(hosts_search)
20
+ puts "Deleted #{deleted_count} insights statuses"
21
+ end
21
22
  end
22
23
 
23
24
  desc "Re-announce all organizations into Sources on RH cloud."
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foreman_rh_cloud",
3
- "version": "9.0.57",
3
+ "version": "10.0.1",
4
4
  "description": "Inventory Upload =============",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -44,11 +44,59 @@ class InventoryHostsSyncTest < ActiveSupport::TestCase
44
44
 
45
45
  inventory_json = <<-INVENTORY_JSON
46
46
  {
47
- "total": 3,
48
- "count": 3,
47
+ "total": 4,
48
+ "count": 4,
49
49
  "page": 1,
50
- "per_page": 3,
50
+ "per_page": 4,
51
51
  "results": [
52
+ {
53
+ "insights_id": "72d29d75-dbbf-4121-9566-2f581ab77f39",
54
+ "rhel_machine_id": null,
55
+ "subscription_manager_id": "d29bde40-348e-437c-8acf-8fa98320fc1c",
56
+ "satellite_id": "bb72bf95-0a19-4090-8009-f0d8c68aca61",
57
+ "bios_uuid": "b48a7e5f-cb50-4029-a75e-366bf43db642",
58
+ "fqdn": "rhel81-demo.oss-lab.net",
59
+ "mac_addresses": [
60
+ "52:54:00:aa:12:12",
61
+ "00:00:00:00:00:00"
62
+ ],
63
+ "external_id": null,
64
+ "id": "59ab38db-c25b-4fc7-bfb2-c8eb01d865a4",
65
+ "account": "1460290",
66
+ "display_name": "insights-rh71.example.com",
67
+ "ansible_host": null,
68
+ "facts": [
69
+ {
70
+ "namespace": "satellite",
71
+ "facts": {
72
+ "virtual_host_name": "virt-who-nobody.home-1",
73
+ "satellite_instance_id": "fc4d0cb0-a0b0-421e-b096-b028319b8e47",
74
+ "is_simple_content_access": false,
75
+ "distribution_version": "7.3",
76
+ "satellite_version": "6.8.4",
77
+ "organization_id": 1,
78
+ "is_hostname_obfuscated": false,
79
+ "virtual_host_uuid": "a90e6294-4766-420a-8dc0-3ec5b96d60ec"
80
+ }
81
+ },
82
+ {
83
+ "namespace": "yupana",
84
+ "facts": {
85
+ "report_platform_id": "d37afa50-08ce-4efb-a0e5-759c2a016661",
86
+ "report_slice_id": "5bf791d7-5e30-4a3c-929a-11dd9fa6eb72",
87
+ "source": "Satellite",
88
+ "yupana_host_id": "e85958b6-58db-4cfd-aeb6-01ee81bc0f43",
89
+ "account": "1460290"
90
+ }
91
+ }
92
+ ],
93
+ "reporter": "puptoo",
94
+ "stale_timestamp": "2021-03-19T07:57:42.466399+00:00",
95
+ "stale_warning_timestamp": "2021-03-26T07:57:42.466399+00:00",
96
+ "culled_timestamp": "2021-04-02T07:57:42.466399+00:00",
97
+ "created": "2021-02-08T14:36:03.613880+00:00",
98
+ "updated": "2021-03-18T02:57:42.535250+00:00"
99
+ },
52
100
  {
53
101
  "insights_id": "72d29d75-dbbf-4121-9566-2f581ab77f36",
54
102
  "rhel_machine_id": null,
@@ -307,7 +355,7 @@ class InventoryHostsSyncTest < ActiveSupport::TestCase
307
355
 
308
356
  ForemanTasks.sync_task(InventorySync::Async::InventoryHostsSync, [org])
309
357
 
310
- assert_equal 2, InsightsMissingHost.count
358
+ assert_equal 3, InsightsMissingHost.count
311
359
  end
312
360
 
313
361
  test 'Inventory should remove old missing host records' do
@@ -324,6 +372,6 @@ class InventoryHostsSyncTest < ActiveSupport::TestCase
324
372
 
325
373
  ForemanTasks.sync_task(InventorySync::Async::InventoryHostsSync, [org])
326
374
 
327
- assert_equal 2, InsightsMissingHost.count
375
+ assert_equal 3, InsightsMissingHost.count
328
376
  end
329
377
  end
@@ -65,16 +65,15 @@ class CloudRequestForwarderTest < ActiveSupport::TestCase
65
65
  end
66
66
 
67
67
  test 'should forward patch payload' do
68
- params = { 'pumpkin' => 'pie' }
68
+ post_data = 'Random PATCH data'
69
69
  req = ActionDispatch::Request.new(
70
70
  'REQUEST_URI' => '/foo/bar?baz=awesome',
71
71
  'REQUEST_METHOD' => 'PATCH',
72
72
  'rack.input' => ::Puma::NullIO.new,
73
- 'RAW_POST_DATA' => 'Random PATCH data',
74
- "action_dispatch.request.path_parameters" => { :format => "json" },
75
- "action_dispatch.request.request_parameters" => { 'vegetables' => params }
73
+ 'RAW_POST_DATA' => post_data,
74
+ "action_dispatch.request.path_parameters" => { :format => "json" }
76
75
  )
77
- assert_equal params.to_json, @forwarder.prepare_forward_payload(req, 'vegetables')
76
+ assert_equal post_data, @forwarder.prepare_forward_payload(req, 'Random PATCH data')
78
77
  end
79
78
 
80
79
  test 'should forward file with metadata' do
@@ -594,7 +594,7 @@ class SliceGeneratorTest < ActiveSupport::TestCase
594
594
  assert_equal '00000000-0000-0000-0000-000000000000', actual['report_slice_id']
595
595
  assert_not_nil(actual_host = actual['hosts'].first)
596
596
  assert_not_nil(actual_profile = actual_host['system_profile'])
597
- assert_equal 'google', actual_profile['cloud_provider']
597
+ assert_equal 'gcp', actual_profile['cloud_provider']
598
598
  end
599
599
 
600
600
  test 'Identifies Azure cloud provider' do
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: 9.0.57
4
+ version: 10.0.1
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-08-06 00:00:00.000000000 Z
11
+ date: 2024-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: foreman_ansible