foreman_rh_cloud 9.0.57 → 10.0.1
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/services/foreman_rh_cloud/cloud_request_forwarder.rb +1 -1
- data/lib/foreman_inventory_upload/generators/fact_helpers.rb +1 -1
- data/lib/foreman_inventory_upload.rb +1 -1
- data/lib/foreman_rh_cloud/version.rb +1 -1
- data/lib/insights_cloud/async/insights_resolutions_sync.rb +7 -1
- data/lib/inventory_sync/async/inventory_hosts_sync.rb +1 -1
- data/lib/tasks/insights.rake +4 -3
- data/package.json +1 -1
- data/test/jobs/inventory_hosts_sync_test.rb +53 -5
- data/test/unit/services/foreman_rh_cloud/cloud_request_forwarder_test.rb +4 -5
- data/test/unit/slice_generator_test.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0ff94b0740c89b0b945f90e7feba658b30341a7f8bb5c1fd2e59cdfc68d05969
|
|
4
|
+
data.tar.gz: b25c4f29a021b554b425d6d464971aed419e3021736730b696710c10e9804670
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
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]
|
|
@@ -75,7 +75,7 @@ module ForemanInventoryUpload
|
|
|
75
75
|
end
|
|
76
76
|
|
|
77
77
|
def self.inventory_export_url
|
|
78
|
-
tags =
|
|
78
|
+
tags = CGI.escape("satellite/satellite_instance_id=#{Foreman.instance_id}")
|
|
79
79
|
inventory_base_url + "?tags=#{tags}"
|
|
80
80
|
end
|
|
81
81
|
|
|
@@ -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
|
|
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
|
|
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
|
data/lib/tasks/insights.rake
CHANGED
|
@@ -15,9 +15,10 @@ namespace :rh_cloud_insights do
|
|
|
15
15
|
end
|
|
16
16
|
|
|
17
17
|
cleaner = ForemanRhCloud::InsightsStatusCleaner.new
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
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
|
@@ -44,11 +44,59 @@ class InventoryHostsSyncTest < ActiveSupport::TestCase
|
|
|
44
44
|
|
|
45
45
|
inventory_json = <<-INVENTORY_JSON
|
|
46
46
|
{
|
|
47
|
-
"total":
|
|
48
|
-
"count":
|
|
47
|
+
"total": 4,
|
|
48
|
+
"count": 4,
|
|
49
49
|
"page": 1,
|
|
50
|
-
"per_page":
|
|
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
|
|
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
|
|
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
|
-
|
|
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' =>
|
|
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
|
|
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 '
|
|
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:
|
|
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-
|
|
11
|
+
date: 2024-06-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: foreman_ansible
|