foreman_rh_cloud 1.0.18 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (325) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -33
  3. data/app/controllers/foreman_inventory_upload/accounts_controller.rb +8 -9
  4. data/app/controllers/foreman_inventory_upload/react_controller.rb +7 -0
  5. data/app/controllers/foreman_inventory_upload/uploads_controller.rb +12 -49
  6. data/app/views/{layouts/foreman_rh_cloud/application.html.erb → foreman_inventory_upload/layouts/react.html.erb} +2 -2
  7. data/config/routes.rb +1 -18
  8. data/lib/foreman_inventory_upload.rb +1 -18
  9. data/lib/foreman_inventory_upload/async/generate_all_reports_job.rb +0 -8
  10. data/lib/foreman_inventory_upload/async/generate_report_job.rb +1 -1
  11. data/lib/foreman_inventory_upload/async/shell_process.rb +9 -17
  12. data/lib/foreman_inventory_upload/async/upload_report_job.rb +5 -21
  13. data/lib/foreman_inventory_upload/generators/archived_report.rb +4 -7
  14. data/lib/foreman_inventory_upload/generators/fact_helpers.rb +0 -91
  15. data/lib/foreman_inventory_upload/generators/json_stream.rb +3 -18
  16. data/lib/foreman_inventory_upload/generators/metadata.rb +0 -3
  17. data/lib/foreman_inventory_upload/generators/queries.rb +4 -11
  18. data/lib/foreman_inventory_upload/generators/slice.rb +40 -90
  19. data/lib/foreman_rh_cloud.rb +0 -68
  20. data/lib/foreman_rh_cloud/engine.rb +6 -49
  21. data/lib/foreman_rh_cloud/version.rb +1 -1
  22. data/lib/tasks/generator.rake +29 -0
  23. data/package.json +21 -103
  24. data/test/controllers/accounts_controller_test.rb +3 -8
  25. data/test/controllers/uploads_controller_test.rb +0 -13
  26. data/test/unit/archived_report_generator_test.rb +0 -1
  27. data/test/unit/metadata_generator_test.rb +0 -2
  28. data/test/unit/slice_generator_test.rb +19 -480
  29. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountList.fixtures.js +5 -32
  30. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountList.js +13 -16
  31. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountList.stories.js +5 -14
  32. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListActions.js +15 -23
  33. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListHelper.js +0 -10
  34. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListReducer.js +0 -34
  35. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListSelectors.js +1 -18
  36. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyState/__tests__/EmptyState.test.js +1 -1
  37. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ErrorState/__tests__/ErrorState.test.js +1 -1
  38. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ListItem/ListItem.fixtures.js +1 -10
  39. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ListItem/ListItem.js +10 -7
  40. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ListItem/__tests__/ListItem.test.js +1 -1
  41. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ListItem/__tests__/__snapshots__/ListItem.test.js.snap +8 -11
  42. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/ListItemStatus/__tests__/ListItemStatus.test.js +1 -1
  43. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountList.test.js +1 -2
  44. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListActions.test.js +2 -16
  45. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListIntegration.test.js +2 -2
  46. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListReducer.test.js +5 -33
  47. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListSelectors.test.js +9 -30
  48. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountList.test.js.snap +9 -8
  49. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListActions.test.js.snap +2 -40
  50. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListReducer.test.js.snap +3 -35
  51. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListSelectors.test.js.snap +8 -20
  52. data/webpack/ForemanInventoryUpload/Components/AccountList/index.js +0 -2
  53. data/webpack/ForemanInventoryUpload/Components/Dashboard/Dashboard.fixtures.js +13 -9
  54. data/webpack/ForemanInventoryUpload/Components/Dashboard/Dashboard.stories.js +5 -15
  55. data/webpack/ForemanInventoryUpload/Components/Dashboard/DashboardActions.js +3 -4
  56. data/webpack/ForemanInventoryUpload/Components/Dashboard/DashboardSelectors.js +1 -1
  57. data/webpack/ForemanInventoryUpload/Components/Dashboard/__tests__/Dashboard.test.js +1 -2
  58. data/webpack/ForemanInventoryUpload/Components/Dashboard/__tests__/DashboardActions.test.js +4 -3
  59. data/webpack/ForemanInventoryUpload/Components/Dashboard/__tests__/DashboardIntegration.test.js +2 -3
  60. data/webpack/ForemanInventoryUpload/Components/Dashboard/__tests__/DashboardReducer.test.js +1 -1
  61. data/webpack/ForemanInventoryUpload/Components/Dashboard/__tests__/DashboardSelectors.test.js +3 -4
  62. data/webpack/ForemanInventoryUpload/Components/FileDownload/__tests__/FileDownload.test.js +1 -1
  63. data/webpack/ForemanInventoryUpload/Components/FullScreenModal/FullScreenModal.js +1 -5
  64. data/webpack/ForemanInventoryUpload/Components/FullScreenModal/__tests__/FullScreenModal.test.js +1 -1
  65. data/webpack/ForemanInventoryUpload/Components/FullScreenModal/__tests__/__snapshots__/FullScreenModal.test.js.snap +0 -1
  66. data/webpack/ForemanInventoryUpload/Components/FullScreenModal/fullScreenModal.scss +13 -15
  67. data/webpack/ForemanInventoryUpload/Components/NavContainer/NavContainer.fixtures.js +5 -2
  68. data/webpack/ForemanInventoryUpload/Components/NavContainer/__tests__/NavContainer.test.js +1 -2
  69. data/webpack/ForemanInventoryUpload/Components/NavContainer/__tests__/__snapshots__/NavContainer.test.js.snap +1 -1
  70. data/webpack/ForemanInventoryUpload/Components/ReportGenerate/__tests__/ReportGenerate.test.js +1 -1
  71. data/webpack/ForemanInventoryUpload/Components/ReportUpload/__tests__/ReportUpload.test.js +1 -1
  72. data/webpack/ForemanInventoryUpload/Components/ScheduledRun/ScheduledRun.fixtures.js +0 -1
  73. data/webpack/ForemanInventoryUpload/Components/ScheduledRun/ScheduledRun.js +2 -4
  74. data/webpack/ForemanInventoryUpload/Components/ScheduledRun/__tests__/ScheduledRun.test.js +2 -1
  75. data/webpack/ForemanInventoryUpload/Components/ScheduledRun/__tests__/__snapshots__/ScheduledRun.test.js.snap +2 -0
  76. data/webpack/ForemanInventoryUpload/Components/ScheduledRun/index.js +1 -12
  77. data/webpack/ForemanInventoryUpload/Components/StatusChart/StatusChart.js +1 -1
  78. data/webpack/ForemanInventoryUpload/Components/StatusChart/__tests__/StatusChart.test.js +1 -1
  79. data/webpack/ForemanInventoryUpload/Components/StatusChart/__tests__/__snapshots__/StatusChart.test.js.snap +1 -1
  80. data/webpack/ForemanInventoryUpload/Components/TabBody/__tests__/TabBody.test.js +1 -1
  81. data/webpack/ForemanInventoryUpload/Components/TabBody/__tests__/__snapshots__/TabBody.test.js.snap +1 -1
  82. data/webpack/ForemanInventoryUpload/Components/TabContainer/__tests__/TabContainer.test.js +1 -1
  83. data/webpack/ForemanInventoryUpload/Components/TabContainer/tabContainer.scss +1 -1
  84. data/webpack/ForemanInventoryUpload/Components/TabFooter/__tests__/TabFooter.test.js +1 -1
  85. data/webpack/ForemanInventoryUpload/Components/TabHeader/TabHeader.js +1 -6
  86. data/webpack/ForemanInventoryUpload/Components/TabHeader/__tests__/TabHeader.test.js +1 -1
  87. data/webpack/ForemanInventoryUpload/Components/Terminal/Terminal.js +5 -3
  88. data/webpack/ForemanInventoryUpload/Components/Terminal/__tests__/Terminal.test.js +1 -2
  89. data/webpack/ForemanInventoryUpload/ForemanInventoryUpload.js +9 -18
  90. data/webpack/ForemanInventoryUpload/{__tests__/ForemanInventoryUpload.test.js → ForemanInventoryUpload.test.js} +2 -2
  91. data/webpack/ForemanInventoryUpload/ForemanInventoryUploadReducers.js +4 -6
  92. data/webpack/ForemanInventoryUpload/ForemanInventoryUploadSelectors.js +4 -0
  93. data/webpack/ForemanInventoryUpload/{__tests__/__snapshots__ → __snapshots__}/ForemanInventoryUpload.test.js.snap +5 -6
  94. data/webpack/index.js +6 -3
  95. metadata +16 -251
  96. data/app/controllers/foreman_inventory_upload/tasks_controller.rb +0 -25
  97. data/app/controllers/foreman_rh_cloud/react_controller.rb +0 -11
  98. data/app/controllers/insights_cloud/hits_controller.rb +0 -17
  99. data/app/controllers/insights_cloud/settings_controller.rb +0 -24
  100. data/app/controllers/insights_cloud/tasks_controller.rb +0 -7
  101. data/app/helpers/foreman_inventory_upload_host_helper.rb +0 -19
  102. data/app/models/concerns/rh_cloud_host.rb +0 -15
  103. data/app/models/insights_facet.rb +0 -7
  104. data/app/models/insights_hit.rb +0 -6
  105. data/app/models/inventory_sync/inventory_status.rb +0 -30
  106. data/app/models/setting/rh_cloud.rb +0 -18
  107. data/app/overrides/hosts_list.rb +0 -13
  108. data/app/services/foreman_rh_cloud/cloud_auth.rb +0 -28
  109. data/app/views/foreman_rh_cloud/react/insights_cloud.html.erb +0 -6
  110. data/app/views/foreman_rh_cloud/react/inventory_upload.html.erb +0 -1
  111. data/app/views/hosts/_insights_tab.html.erb +0 -15
  112. data/config/Gemfile.lock.gh_test +0 -757
  113. data/config/database.yml.example +0 -17
  114. data/config/package-lock.json.gh_test +0 -30855
  115. data/db/migrate/20191215104806_create_insights_hits.foreman_inventory_upload.rb +0 -14
  116. data/db/migrate/20191216062008_create_insights_facets.foreman_inventory_upload.rb +0 -7
  117. data/db/migrate/20200727111529_add_uuid_column_to_insights_facets.foreman_rh_cloud.rb +0 -5
  118. data/db/migrate/20201007115752_add_hits_count_to_insights_facets_table.foreman_rh_cloud.rb +0 -5
  119. data/db/migrate/20201007121540_setup_hits_count_cache.foreman_rh_cloud.rb +0 -10
  120. data/lib/foreman_inventory_upload/async/async_helpers.rb +0 -13
  121. data/lib/foreman_inventory_upload/notifications/manifest_import_success_notification_override.rb +0 -19
  122. data/lib/insights_cloud.rb +0 -15
  123. data/lib/insights_cloud/async/insights_full_sync.rb +0 -84
  124. data/lib/insights_cloud/async/insights_scheduled_sync.rb +0 -23
  125. data/lib/inventory_sync/async/host_result.rb +0 -50
  126. data/lib/inventory_sync/async/inventory_full_sync.rb +0 -80
  127. data/lib/tasks/insights.rake +0 -15
  128. data/lib/tasks/rh_cloud_inventory.rake +0 -37
  129. data/test/controllers/insights_sync/settings_controller_test.rb +0 -30
  130. data/test/factories/insights_factories.rb +0 -31
  131. data/test/jobs/insights_full_sync_test.rb +0 -94
  132. data/test/jobs/inventory_full_sync_test.rb +0 -91
  133. data/test/jobs/upload_report_job_test.rb +0 -34
  134. data/test/unit/fact_helpers_test.rb +0 -51
  135. data/test/unit/insights_facet_test.rb +0 -23
  136. data/test/unit/rh_cloud_http_proxy_test.rb +0 -65
  137. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyResults/EmptyResults.js +0 -15
  138. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyResults/__tests__/EmptyResults.test.js +0 -13
  139. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyResults/__tests__/__snapshots__/EmptyResults.test.js.snap +0 -18
  140. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyResults/emptyResults.scss +0 -7
  141. data/webpack/ForemanInventoryUpload/Components/AccountList/Components/EmptyResults/index.js +0 -1
  142. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListHelper.test.js +0 -12
  143. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcher.fixtures.js +0 -3
  144. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcher.js +0 -32
  145. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcherActions.js +0 -29
  146. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcherConstants.js +0 -1
  147. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/AutoUploadSwitcher.test.js +0 -14
  148. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/AutoUploadSwitcherActions.test.js +0 -24
  149. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/__snapshots__/AutoUploadSwitcher.test.js.snap +0 -38
  150. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/__snapshots__/AutoUploadSwitcherActions.test.js.snap +0 -31
  151. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/autoUploadSwitcher.scss +0 -3
  152. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/index.js +0 -17
  153. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcher.fixtures.js +0 -1
  154. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcher.js +0 -30
  155. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcherActions.js +0 -29
  156. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcherConstants.js +0 -1
  157. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/ExcludePackagesSwitcher.test.js +0 -13
  158. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/ExcludePackagesSwitcherActions.test.js +0 -21
  159. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/ExcludePackagesSwitcher.test.js.snap +0 -38
  160. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/ExcludePackagesSwitcherActions.test.js.snap +0 -31
  161. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/integration.test.js.snap +0 -41
  162. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/integration.test.js +0 -38
  163. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/excludePackagesSwitcher.scss +0 -3
  164. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/index.js +0 -20
  165. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.fixtures.js +0 -2
  166. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.js +0 -30
  167. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.scss +0 -3
  168. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcherActions.js +0 -29
  169. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcherConstants.js +0 -1
  170. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/HostObfuscationSwitcher.test.js +0 -14
  171. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/HostObfuscationSwitcherActions.test.js +0 -24
  172. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/__snapshots__/HostObfuscationSwitcher.test.js.snap +0 -38
  173. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/__snapshots__/HostObfuscationSwitcherActions.test.js.snap +0 -31
  174. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/index.js +0 -20
  175. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/Components/ClearButton/ClearButton.js +0 -26
  176. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/Components/ClearButton/index.js +0 -1
  177. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilter.fixtures.js +0 -2
  178. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilter.js +0 -39
  179. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilterActions.js +0 -16
  180. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilterConstants.js +0 -3
  181. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilterReducer.js +0 -36
  182. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/InventoryFilterSelectors.js +0 -7
  183. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/InventoryFilter.test.js +0 -14
  184. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/InventoryFilterActions.test.js +0 -14
  185. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/InventoryFilterReducer.test.js +0 -35
  186. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/InventoryFilterSelectors.test.js +0 -21
  187. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/__snapshots__/InventoryFilter.test.js.snap +0 -25
  188. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/__snapshots__/InventoryFilterActions.test.js.snap +0 -17
  189. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/__snapshots__/InventoryFilterReducer.test.js.snap +0 -25
  190. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/__snapshots__/InventoryFilterSelectors.test.js.snap +0 -9
  191. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/__snapshots__/integration.test.js.snap +0 -40
  192. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/__tests__/integration.test.js +0 -18
  193. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/index.js +0 -17
  194. data/webpack/ForemanInventoryUpload/Components/InventoryFilter/inventoryFilter.scss +0 -28
  195. data/webpack/ForemanInventoryUpload/Components/InventorySettings/InventorySettings.js +0 -19
  196. data/webpack/ForemanInventoryUpload/Components/InventorySettings/__tests__/InventorySettings.test.js +0 -13
  197. data/webpack/ForemanInventoryUpload/Components/InventorySettings/__tests__/__snapshots__/InventorySettings.test.js.snap +0 -15
  198. data/webpack/ForemanInventoryUpload/Components/InventorySettings/index.js +0 -1
  199. data/webpack/ForemanInventoryUpload/Components/InventorySettings/inventorySettings.scss +0 -15
  200. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcher.fixtures.js +0 -1
  201. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcher.js +0 -29
  202. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcherActions.js +0 -29
  203. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcherConstants.js +0 -1
  204. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/IpsObfuscationSwitcher.test.js +0 -13
  205. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/IpsObfuscationSwitcherActions.test.js +0 -21
  206. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/__snapshots__/IpsObfuscationSwitcher.test.js.snap +0 -38
  207. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/__snapshots__/IpsObfuscationSwitcherActions.test.js.snap +0 -31
  208. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/index.js +0 -20
  209. data/webpack/ForemanInventoryUpload/Components/PageHeader/PageHeader.js +0 -40
  210. data/webpack/ForemanInventoryUpload/Components/PageHeader/__tests__/PageHeader.test.js +0 -13
  211. data/webpack/ForemanInventoryUpload/Components/PageHeader/__tests__/__snapshots__/PageHeader.test.js.snap +0 -61
  212. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/DocsButton/DocsButton.js +0 -18
  213. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/DocsButton/__tests__/DocsButton.test.js +0 -13
  214. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/DocsButton/__tests__/__snapshots__/DocsButton.test.js.snap +0 -21
  215. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/DocsButton/index.js +0 -1
  216. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/HistoryButton/HistoryButton.js +0 -19
  217. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/HistoryButton/__tests__/HistoryButton.test.js +0 -14
  218. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/HistoryButton/__tests__/__snapshots__/HistoryButton.test.js.snap +0 -22
  219. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/HistoryButton/index.js +0 -1
  220. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/PageDescription/PageDescription.js +0 -24
  221. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/PageDescription/__tests__/PageDescription.test.js +0 -11
  222. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/PageDescription/__tests__/__snapshots__/PageDescription.test.js.snap +0 -17
  223. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/PageDescription/index.js +0 -1
  224. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButton.js +0 -58
  225. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonActions.js +0 -57
  226. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonConstants.js +0 -3
  227. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonReducer.js +0 -36
  228. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonSelectors.js +0 -13
  229. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButton.test.js +0 -13
  230. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonActions.test.js +0 -31
  231. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonFixtures.js +0 -9
  232. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonReducer.test.js +0 -26
  233. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonSelectors.test.js +0 -36
  234. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButton.test.js.snap +0 -26
  235. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButtonActions.test.js.snap +0 -98
  236. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButtonReducer.test.js.snap +0 -18
  237. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButtonSelectors.test.js.snap +0 -18
  238. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/components/Modal.js +0 -63
  239. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/components/Toast.js +0 -41
  240. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/components/modal.scss +0 -20
  241. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/index.js +0 -22
  242. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/ToolbarButtons/ToolbarButtons.js +0 -15
  243. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/ToolbarButtons/__tests__/ToolbarButtons.test.js +0 -12
  244. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/ToolbarButtons/__tests__/__snapshots__/ToolbarButtons.test.js.snap +0 -11
  245. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/ToolbarButtons/index.js +0 -1
  246. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/ToolbarButtons/toolbarButtons.scss +0 -12
  247. data/webpack/ForemanInventoryUpload/Components/PageHeader/index.js +0 -1
  248. data/webpack/ForemanInventoryUpload/Components/PageHeader/pageHeader.scss +0 -3
  249. data/webpack/ForemanInventoryUpload/ForemanInventoryConstants.js +0 -9
  250. data/webpack/ForemanInventoryUpload/ForemanInventoryHelpers.js +0 -20
  251. data/webpack/ForemanInventoryUpload/SubscriptionsPageExtension/SubscriptionsPageExtensionActions.js +0 -34
  252. data/webpack/ForemanInventoryUpload/__tests__/ForemanInventoryHelpers.test.js +0 -12
  253. data/webpack/ForemanInventoryUpload/__tests__/__snapshots__/ForemanInventoryHelpers.test.js.snap +0 -5
  254. data/webpack/ForemanRhCloudHelpers.js +0 -6
  255. data/webpack/ForemanRhCloudPages.js +0 -9
  256. data/webpack/ForemanRhCloudReducers.js +0 -12
  257. data/webpack/ForemanRhCloudSelectors.js +0 -10
  258. data/webpack/ForemanRhCloudTestHelpers.js +0 -20
  259. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettings.js +0 -33
  260. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsActions.js +0 -57
  261. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsConstants.js +0 -4
  262. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsReducer.js +0 -24
  263. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsSelectors.js +0 -6
  264. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettings.test.js +0 -18
  265. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettingsActions.test.js +0 -62
  266. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettingsReducer.test.js +0 -33
  267. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettingsSelectors.test.js +0 -21
  268. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettings.test.js.snap +0 -15
  269. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettingsActions.test.js.snap +0 -65
  270. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettingsReducer.test.js.snap +0 -19
  271. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettingsSelectors.test.js.snap +0 -9
  272. data/webpack/InsightsCloudSync/Components/InsightsSettings/index.js +0 -21
  273. data/webpack/InsightsCloudSync/Components/InsightsSettings/insightsSettings.scss +0 -16
  274. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/InsightsSyncSwitcher.fixtures.js +0 -1
  275. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/InsightsSyncSwitcher.js +0 -45
  276. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/__tests__/InsightsSyncSwitcher.test.js +0 -17
  277. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/__tests__/__snapshots__/InsightsSyncSwitcher.test.js.snap +0 -38
  278. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/index.js +0 -1
  279. data/webpack/InsightsCloudSync/Components/InsightsSyncSwitcher/insightsSyncSwitcher.scss +0 -3
  280. data/webpack/InsightsCloudSync/InsightsCloudSync.js +0 -59
  281. data/webpack/InsightsCloudSync/InsightsCloudSync.test.js +0 -16
  282. data/webpack/InsightsCloudSync/InsightsCloudSyncActions.js +0 -22
  283. data/webpack/InsightsCloudSync/InsightsCloudSyncConstants.js +0 -4
  284. data/webpack/InsightsCloudSync/InsightsCloudSyncHelpers.js +0 -3
  285. data/webpack/InsightsCloudSync/InsightsCloudSyncReducers.js +0 -8
  286. data/webpack/InsightsCloudSync/__snapshots__/InsightsCloudSync.test.js.snap +0 -67
  287. data/webpack/InsightsCloudSync/__tests__/InsightsCloudSyncHelpers.test.js +0 -11
  288. data/webpack/InsightsCloudSync/__tests__/__snapshots__/InsightsCloudSyncHelpers.test.js.snap +0 -3
  289. data/webpack/InsightsCloudSync/index.js +0 -18
  290. data/webpack/InsightsHostDetailsTab/InsightsTab.js +0 -64
  291. data/webpack/InsightsHostDetailsTab/InsightsTab.scss +0 -86
  292. data/webpack/InsightsHostDetailsTab/InsightsTabActions.js +0 -31
  293. data/webpack/InsightsHostDetailsTab/InsightsTabConstants.js +0 -2
  294. data/webpack/InsightsHostDetailsTab/InsightsTabReducer.js +0 -19
  295. data/webpack/InsightsHostDetailsTab/InsightsTabSelectors.js +0 -3
  296. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTab.fixtures.js +0 -25
  297. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTab.test.js +0 -13
  298. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabActions.test.js +0 -19
  299. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabIntegration.test.js +0 -17
  300. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabReducer.test.js +0 -26
  301. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabSelectors.test.js +0 -13
  302. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTab.test.js.snap +0 -30
  303. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTabActions.test.js.snap +0 -58
  304. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTabReducer.test.js.snap +0 -34
  305. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTabSelectors.test.js.snap +0 -20
  306. data/webpack/InsightsHostDetailsTab/components/ListItem/ListItem.js +0 -69
  307. data/webpack/InsightsHostDetailsTab/components/ListItem/index.js +0 -1
  308. data/webpack/InsightsHostDetailsTab/index.js +0 -20
  309. data/webpack/__mocks__/foremanReact/components/Layout/LayoutConstants.js +0 -1
  310. data/webpack/__mocks__/foremanReact/constants.js +0 -5
  311. data/webpack/__mocks__/foremanReact/redux/actions/toasts.js +0 -8
  312. data/webpack/__tests__/ForemanRhCloudHelpers.test.js +0 -11
  313. data/webpack/__tests__/ForemanRhCloudSelectors.test.js +0 -22
  314. data/webpack/__tests__/ForemanRhCloudTestHelpers.test.js +0 -20
  315. data/webpack/__tests__/__snapshots__/ForemanRhCloudHelpers.test.js.snap +0 -3
  316. data/webpack/__tests__/__snapshots__/ForemanRhCloudSelectors.test.js.snap +0 -25
  317. data/webpack/__tests__/__snapshots__/ForemanRhCloudTestHelpers.test.js.snap +0 -39
  318. data/webpack/stories/ForemanInventoryUploadReducers.js +0 -3
  319. data/webpack/stories/configureStore.js +0 -15
  320. data/webpack/stories/decorators/index.js +0 -1
  321. data/webpack/stories/decorators/withCardsDecorator.js +0 -14
  322. data/webpack/stories/index.js +0 -10
  323. data/webpack/stories/index.scss +0 -7
  324. data/webpack/subscriptions_extension_index.js +0 -8
  325. data/webpack/test_setup.js +0 -6
@@ -26,13 +26,8 @@ module ForemanInventoryUpload
26
26
  @out << string
27
27
  end
28
28
 
29
- def simple_field(name, value, last = false, &block)
30
- return if value.nil? || value.try(:empty?)
31
- return if value.kind_of?(Array) && value.compact.empty?
32
-
33
- block ||= ->(value) { value }
34
-
35
- @out << "\"#{name}\": #{stringify_value(block.call(value))}#{last ? '' : ','}"
29
+ def simple_field(name, value, last = false)
30
+ @out << "\"#{name}\": #{stringify_value(value)}#{last ? '' : ','}" unless value.nil?
36
31
  end
37
32
 
38
33
  def array_field(name, last = false, &block)
@@ -41,16 +36,6 @@ module ForemanInventoryUpload
41
36
  @out << ',' unless last
42
37
  end
43
38
 
44
- def string_array_value(name, value, last = false)
45
- return if value.empty?
46
-
47
- string_value = value.map { |v| stringify_value(v) }
48
-
49
- array_field(name, last) do
50
- raw(string_value.join(', '))
51
- end
52
- end
53
-
54
39
  def object_field(name, last = false, &block)
55
40
  @out << "\"#{name}\": "
56
41
  object(&block)
@@ -63,7 +48,7 @@ module ForemanInventoryUpload
63
48
  return value if value.is_a?(FalseClass)
64
49
  return value.to_json if value.is_a?(Hash)
65
50
 
66
- ActiveSupport::JSON.encode(value)
51
+ "\"#{value}\""
67
52
  end
68
53
  end
69
54
  end
@@ -21,9 +21,6 @@ module ForemanInventoryUpload
21
21
  private
22
22
 
23
23
  def render_report(metadata)
24
- metadata ||= {}
25
- metadata['foreman_rh_cloud_version'] = ForemanRhCloud::VERSION
26
-
27
24
  @stream.object do
28
25
  @stream.simple_field('report_id', Foreman.uuid)
29
26
  @stream.simple_field('host_inventory_api_version', '1.0')
@@ -18,35 +18,28 @@ module ForemanInventoryUpload
18
18
  'uname::release',
19
19
  'lscpu::flags',
20
20
  'distribution::version',
21
- 'distribution::id',
22
- 'virt::is_guest',
23
- 'dmi::system::manufacturer',
24
- 'dmi::system::product_name',
25
- 'dmi::chassis::asset_tag',
26
- 'insights_client::obfuscate_hostname_enabled',
27
- 'insights_client::obfuscate_ip_enabled',
28
- 'insights_client::hostname',
29
- 'insights_client::ips',
30
21
  ]).pluck(:name, :id)
31
22
  ]
32
23
  end
33
24
 
34
25
  def self.for_slice(base)
26
+ fact_values = FactValue.where(fact_name_id: fact_names.values)
35
27
  base
36
28
  .joins(:subscription_facet)
29
+ .eager_load(:fact_values)
37
30
  .preload(
38
31
  :interfaces,
39
32
  :installed_packages,
40
33
  :content_facet,
41
34
  :host_statuses,
42
- :inventory_upload_facts,
43
35
  subscription_facet: [:pools, :installed_products, :hypervisor_host]
44
36
  )
37
+ .merge(fact_values)
45
38
  end
46
39
 
47
40
  def self.for_report(portal_user)
48
41
  org_ids = organizations_for_user(portal_user).pluck(:id)
49
- for_org(org_ids)
42
+ for_slice(Host.unscoped.where(organization_id: org_ids)).in_batches(of: 1_000)
50
43
  end
51
44
 
52
45
  def self.for_org(organization_id)
@@ -3,16 +3,12 @@ module ForemanInventoryUpload
3
3
  class Slice
4
4
  include FactHelpers
5
5
 
6
- SATELLITE_NAMESPACE = 'satellite'
7
-
8
6
  attr_accessor :slice_id
9
- attr_reader :hosts_count
10
7
 
11
8
  def initialize(hosts, output = [], slice_id = Foreman.uuid)
12
9
  @stream = JsonStream.new(output)
13
10
  @hosts = hosts
14
11
  @slice_id = slice_id
15
- @hosts_count = 0
16
12
  end
17
13
 
18
14
  def render
@@ -28,34 +24,39 @@ module ForemanInventoryUpload
28
24
  @stream.array_field('hosts', :last) do
29
25
  first = true
30
26
  hosts_batch.each do |host|
31
- next unless host&.subscription_facet
27
+ next unless host&.subscription_facet&.pools&.first
32
28
  @stream.comma unless first
33
- if report_host(host)
34
- first = false
35
- @hosts_count += 1
36
- end
29
+ first = false if report_host(host)
37
30
  end
38
31
  end
39
32
  end
40
33
  end
41
34
 
42
35
  def report_host(host)
43
- host_ips_cache = host_ips(host)
44
36
  @stream.object do
45
- @stream.simple_field('fqdn', fqdn(host))
46
- @stream.simple_field('account', account_id(host.organization).to_s)
47
- @stream.simple_field('subscription_manager_id', host.subscription_facet&.uuid)
48
- @stream.simple_field('satellite_id', host.subscription_facet&.uuid)
37
+ @stream.simple_field('display_name', host.name)
38
+ @stream.simple_field('fqdn', host.fqdn)
39
+ @stream.simple_field('account', host.subscription_facet.pools.first.account_number.to_s)
40
+ @stream.simple_field('subscription_manager_id', host.subscription_facet.uuid)
41
+ @stream.simple_field('satellite_id', host.subscription_facet.uuid)
49
42
  @stream.simple_field('bios_uuid', fact_value(host, 'dmi::system::uuid'))
50
43
  @stream.simple_field('vm_uuid', fact_value(host, 'virt::uuid'))
51
- report_ip_addresses(host, host_ips_cache)
52
- report_mac_addresses(host)
44
+ @stream.array_field('ip_addresses') do
45
+ @stream.raw(host.interfaces.map do |nic|
46
+ @stream.stringify_value(nic.ip) if nic.ip
47
+ end.compact.join(', '))
48
+ end
49
+ @stream.array_field('mac_addresses') do
50
+ @stream.raw(host.interfaces.map do |nic|
51
+ @stream.stringify_value(nic.mac) if nic.mac
52
+ end.compact.join(', '))
53
+ end
53
54
  @stream.object_field('system_profile') do
54
- report_system_profile(host, host_ips_cache)
55
+ report_system_profile(host)
55
56
  end
56
57
  @stream.array_field('facts') do
57
58
  @stream.object do
58
- @stream.simple_field('namespace', SATELLITE_NAMESPACE)
59
+ @stream.simple_field('namespace', 'satellite')
59
60
  @stream.object_field('facts', :last) do
60
61
  report_satellite_facts(host)
61
62
  end
@@ -63,15 +64,8 @@ module ForemanInventoryUpload
63
64
  end
64
65
 
65
66
  @stream.array_field('tags', :last) do
66
- report_satellite_tag('satellite_instance_id', Foreman.instance_id) if Foreman.respond_to?(:instance_id)
67
- report_satellite_tag('lifecycle_environment', host.lifecycle_environment&.name)
68
- report_satellite_tag('content_view', host.content_view&.name)
69
- report_satellite_tag('activation_key', host.activation_keys) { |key| key.name }
70
- report_satellite_tag('host_collection', host.host_collections) { |collection| collection.name }
71
- report_satellite_tag('location', host.location.name)
72
- report_satellite_tag('organization', host.organization.name)
73
- report_satellite_tag('hostgroup', host.hostgroup&.name)
74
- report_satellite_tag('organization_id', host.organization_id.to_s, :last)
67
+ report_tag('satellite', 'satellite_instance_id', Foreman.instance_id) if Foreman.respond_to?(:instance_id)
68
+ report_tag('satellite', 'organization_id', host.organization_id, :last)
75
69
  end
76
70
  end
77
71
  end
@@ -85,29 +79,17 @@ module ForemanInventoryUpload
85
79
  @stream.comma unless last
86
80
  end
87
81
 
88
- def report_satellite_tag(key, value, last = nil)
89
- return if value.nil?
90
-
91
- array_value = Array(value)
92
- last_index = array_value.count - 1
93
-
94
- array_value.each_with_index do |value, index|
95
- value = yield(value) if block_given?
96
- report_tag(SATELLITE_NAMESPACE, key, value, last && index == last_index)
97
- end
98
- end
99
-
100
- def report_system_profile(host, host_ips_cache)
101
- @stream.simple_field('number_of_cpus', fact_value(host, 'cpu::cpu(s)')) { |v| v.to_i }
102
- @stream.simple_field('number_of_sockets', fact_value(host, 'cpu::cpu_socket(s)')) { |v| v.to_i }
103
- @stream.simple_field('cores_per_socket', fact_value(host, 'cpu::core(s)_per_socket')) { |v| v.to_i }
104
- @stream.simple_field('system_memory_bytes', fact_value(host, 'memory::memtotal')) { |v| kilobytes_to_bytes(v.to_i) }
82
+ def report_system_profile(host)
83
+ @stream.simple_field('number_of_cpus', fact_value(host, 'cpu::cpu(s)').to_i)
84
+ @stream.simple_field('number_of_sockets', fact_value(host, 'cpu::cpu_socket(s)').to_i)
85
+ @stream.simple_field('cores_per_socket', fact_value(host, 'cpu::core(s)_per_socket').to_i)
86
+ @stream.simple_field('system_memory_bytes', kilobytes_to_bytes(fact_value(host, 'memory::memtotal').to_i))
105
87
  @stream.array_field('network_interfaces') do
106
- @stream.raw(host.interfaces.reject { |nic| nic.identifier.empty? }.map do |nic|
88
+ @stream.raw(host.interfaces.map do |nic|
107
89
  {
108
- 'ipv4_addresses': [host_ips_cache[nic.ip]].reject(&:empty?),
109
- 'ipv6_addresses': [nic.ip6].reject(&:empty?),
110
- 'mtu': nic.try(:mtu) && nic.mtu.to_i,
90
+ 'ipv4_addresses': [nic.ip].compact,
91
+ 'ipv6_addresses': [nic.ip6].compact,
92
+ 'mtu': nic.try(:mtu),
111
93
  'mac_address': nic.mac,
112
94
  'name': nic.identifier,
113
95
  }.compact.to_json
@@ -123,22 +105,12 @@ module ForemanInventoryUpload
123
105
  end.join(', '))
124
106
  end
125
107
  end
126
- @stream.simple_field(
127
- 'os_release', [
128
- fact_value(host, 'distribution::name'),
129
- fact_value(host, 'distribution::version'),
130
- fact_value(host, 'distribution::id'),
131
- ]
132
- ) { |v| os_release_value(*v) }
108
+ @stream.simple_field('os_release', fact_value(host, 'distribution::name'))
133
109
  @stream.simple_field('os_kernel_version', fact_value(host, 'uname::release'))
134
110
  @stream.simple_field('arch', host.architecture&.name)
135
111
  @stream.simple_field('subscription_status', host.subscription_status_label)
136
112
  @stream.simple_field('katello_agent_running', host.content_facet&.katello_agent_installed?)
137
- @stream.simple_field(
138
- 'infrastructure_type',
139
- ActiveModel::Type::Boolean.new.cast(fact_value(host, 'virt::is_guest')) ? 'virtual' : 'physical'
140
- )
141
- @stream.simple_field('cloud_provider', cloud_provider(host))
113
+ @stream.simple_field('satellite_managed', true)
142
114
  unless (installed_products = host.subscription_facet&.installed_products).empty?
143
115
  @stream.array_field('installed_products') do
144
116
  @stream.raw(installed_products.map do |product|
@@ -149,49 +121,27 @@ module ForemanInventoryUpload
149
121
  end.join(', '))
150
122
  end
151
123
  end
152
- unless Setting[:exclude_installed_packages]
153
- @stream.array_field('installed_packages') do
154
- first = true
155
- host.installed_packages.each do |package|
156
- @stream.raw("#{first ? '' : ', '}#{@stream.stringify_value(package.nvra)}")
157
- first = false
158
- end
124
+ @stream.array_field('installed_packages', :last) do
125
+ first = true
126
+ host.installed_packages.each do |package|
127
+ @stream.raw("#{first ? '' : ', '}#{@stream.stringify_value(package.nvra)}")
128
+ first = false
159
129
  end
160
130
  end
161
- @stream.simple_field('satellite_managed', true, :last)
162
131
  end
163
132
 
164
133
  def report_satellite_facts(host)
165
- @stream.simple_field('virtual_host_name', host.subscription_facet&.hypervisor_host&.name)
166
- @stream.simple_field('virtual_host_uuid', host.subscription_facet&.hypervisor_host&.subscription_facet&.uuid)
134
+ @stream.simple_field('virtual_host_name', host.subscription_facet.hypervisor_host&.name)
135
+ @stream.simple_field('virtual_host_uuid', host.subscription_facet.hypervisor_host&.subscription_facet&.uuid)
167
136
  if defined?(ForemanThemeSatellite)
168
137
  @stream.simple_field('satellite_version', ForemanThemeSatellite::SATELLITE_VERSION)
169
138
  end
170
139
  @stream.simple_field('system_purpose_usage', host.subscription_facet.purpose_usage)
171
140
  @stream.simple_field('system_purpose_role', host.subscription_facet.purpose_role)
172
- @stream.simple_field('system_purpose_sla', host.subscription_facet.service_level)
173
141
  @stream.simple_field('distribution_version', fact_value(host, 'distribution::version'))
174
- @stream.simple_field('satellite_instance_id', Foreman.try(:instance_id))
175
- @stream.simple_field('is_simple_content_access', golden_ticket?(host.organization))
176
- @stream.simple_field('is_hostname_obfuscated', !!obfuscate_hostname?(host))
142
+ @stream.simple_field('satellite_instance_id', Foreman.respond_to?(:instance_id) ? Foreman.instance_id : nil)
177
143
  @stream.simple_field('organization_id', host.organization_id, :last)
178
144
  end
179
-
180
- def report_ip_addresses(host, host_ips_cache)
181
- ip_addresses = host.interfaces.map { |nic| host_ips_cache[nic.ip] }.compact
182
-
183
- @stream.string_array_value('ip_addresses', ip_addresses)
184
- end
185
-
186
- def report_mac_addresses(host)
187
- macs = host.interfaces.map { |nic| nic.mac }.compact
188
-
189
- @stream.string_array_value('mac_addresses', macs)
190
- end
191
-
192
- def os_release_value(name, version, codename)
193
- "#{name} #{version} (#{codename})"
194
- end
195
145
  end
196
146
  end
197
147
  end
@@ -1,72 +1,4 @@
1
1
  require 'foreman_rh_cloud/engine.rb'
2
- require 'cgi'
3
- require 'uri'
4
2
 
5
3
  module ForemanRhCloud
6
- def self.base_url
7
- # for testing set ENV to 'https://ci.cloud.redhat.com'
8
- @base_url ||= ENV['SATELLITE_RH_CLOUD_URL'] || 'https://cloud.redhat.com'
9
- end
10
-
11
- def self.authentication_url
12
- # https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token
13
- @authentication_url ||= ENV['SATELLITE_RH_CLOUD_SSO_URL'] || 'https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token'
14
- end
15
-
16
- def self.verify_ssl_method
17
- @verify_ssl_method ||= ENV['SATELLITE_RH_CLOUD_URL'] ? OpenSSL::SSL::VERIFY_NONE : OpenSSL::SSL::VERIFY_PEER
18
- end
19
-
20
- def self.http_proxy_string(logger: Foreman::Logging.logger('background'))
21
- ForemanRhCloud.proxy_setting(logger: logger)
22
- end
23
-
24
- def self.transformed_http_proxy_string(logger: Foreman::Logging.logger('background'))
25
- ForemanRhCloud.transform_scheme(ForemanRhCloud.proxy_setting(logger: logger))
26
- end
27
-
28
- def self.proxy_setting(logger: Foreman::Logging.logger('background'))
29
- HttpProxy.default_global_content_proxy&.full_url ||
30
- ForemanRhCloud.cdn_proxy(logger: logger) ||
31
- ForemanRhCloud.global_foreman_proxy ||
32
- ''
33
- end
34
-
35
- def self.cdn_proxy(logger: Foreman::Logging.logger('app'))
36
- proxy_config = SETTINGS[:katello][:cdn_proxy]
37
- return nil unless proxy_config
38
-
39
- uri = URI('')
40
- uri.host = proxy_config[:host]
41
- uri.port = proxy_config[:port]
42
- uri.scheme = proxy_config[:scheme] || 'http'
43
-
44
- if proxy_config[:user]
45
- uri.user = CGI.escape(proxy_config[:user])
46
- uri.password = CGI.escape(proxy_config[:password])
47
- end
48
- uri.to_s
49
- rescue URI::Error => e
50
- logger.warn("cdn_proxy parsing failed: #{e}")
51
- nil
52
- end
53
-
54
- def self.global_foreman_proxy
55
- Setting[:http_proxy]
56
- end
57
-
58
- # This method assumes uri_string contains uri-encoded username and p@$$word:
59
- # http://user:p%40%24%24word@localhost:8888
60
- def self.transform_scheme(uri_string)
61
- transformed_uri = URI.parse(uri_string)
62
-
63
- case transformed_uri.scheme
64
- when "http"
65
- transformed_uri.scheme = 'proxy'
66
- when "https"
67
- transformed_uri.scheme = 'proxys'
68
- end
69
-
70
- transformed_uri.to_s
71
- end
72
4
  end
@@ -5,15 +5,10 @@ module ForemanRhCloud
5
5
  class Engine < ::Rails::Engine
6
6
  engine_name 'foreman_rh_cloud'
7
7
 
8
- initializer 'foreman_rh_cloud.load_default_settings', :before => :load_config_initializers do
9
- require_dependency File.expand_path('../../app/models/setting/rh_cloud.rb', __dir__)
10
- end
11
-
12
8
  config.autoload_paths += Dir["#{config.root}/app/controllers/concerns"]
13
9
  config.autoload_paths += Dir["#{config.root}/app/helpers/concerns"]
14
10
  config.autoload_paths += Dir["#{config.root}/app/models/concerns"]
15
11
  config.autoload_paths += Dir["#{config.root}/app/overrides"]
16
- config.autoload_paths += Dir["#{config.root}/app/services"]
17
12
  config.autoload_paths += Dir["#{config.root}/lib"]
18
13
 
19
14
  config.eager_load_paths += Dir["#{config.root}/lib"]
@@ -27,65 +22,27 @@ module ForemanRhCloud
27
22
 
28
23
  initializer 'foreman_rh_cloud.register_plugin', :before => :finisher_hook do |_app|
29
24
  Foreman::Plugin.register :foreman_rh_cloud do
30
- requires_foreman '~> 1.24.0'
25
+ requires_foreman '> 1.24'
31
26
 
32
27
  # Add permissions
33
28
  security_block :foreman_rh_cloud do
34
- permission(
35
- :generate_foreman_rh_cloud,
36
- 'foreman_inventory_upload/reports': [:generate]
37
- )
38
- permission(
39
- :view_foreman_rh_cloud,
40
- 'foreman_inventory_upload/accounts': [:index],
41
- 'foreman_inventory_upload/reports': [:last],
42
- 'foreman_inventory_upload/uploads': [:auto_upload, :download_file, :last],
43
- 'foreman_rh_cloud/react': [:inventory_upload]
44
- )
29
+ permission :view_foreman_rh_cloud, :'foreman_rh_cloud/reports' => [:last]
45
30
  end
46
31
 
47
- plugin_permissions = [:view_foreman_rh_cloud, :generate_foreman_rh_cloud]
48
-
49
- role 'ForemanRhCloud', plugin_permissions, 'Role granting permissions to view the hosts inventory,
50
- generate a report, upload it to the cloud and download it locally'
51
-
52
- add_permissions_to_default_roles Role::ORG_ADMIN => plugin_permissions,
53
- Role::MANAGER => plugin_permissions,
54
- Role::SYSTEM_ADMIN => plugin_permissions
32
+ # Add a new role called 'Discovery' if it doesn't exist
33
+ role 'ForemanRhCloud', [:view_foreman_rh_cloud]
55
34
 
56
35
  # Adding a sub menu after hosts menu
57
- divider :top_menu, caption: N_('RH Cloud'), parent: :configure_menu
58
- menu :top_menu, :inventory_upload, caption: N_('Inventory Upload'), url_hash: { controller: :'foreman_rh_cloud/react', action: :inventory_upload }, parent: :configure_menu
59
- menu :top_menu, :insights_hits_import, caption: N_('Insights'), url_hash: { controller: :'foreman_rh_cloud/react', action: :insights_cloud }, parent: :configure_menu
60
-
61
- register_facet InsightsFacet, :insights do
62
- configure_host do
63
- set_dependent_action :destroy
64
- end
65
- end
66
-
67
- register_global_js_file 'subscriptions_extension'
68
-
69
- register_custom_status(InventorySync::InventoryStatus)
70
-
71
- extend_page 'hosts/show' do |context|
72
- context.add_pagelet :main_tabs,
73
- partial: 'hosts/insights_tab',
74
- name: _('Insights'),
75
- onlyif: proc { |host| host.insights }
36
+ sub_menu :top_menu, :foreman_rh_cloud, :caption => N_('RH Cloud'), :icon => 'fa fa-cloud-upload' do
37
+ menu :top_menu, :level1, :caption => N_('Inventory Upload'), :url_hash => { controller: :'foreman_inventory_upload/react', :action => :index}
76
38
  end
77
39
  end
78
-
79
- ::Katello::UINotifications::Subscriptions::ManifestImportSuccess.include ForemanInventoryUpload::Notifications::ManifestImportSuccessNotificationOverride if defined?(Katello)
80
-
81
- ::Host::Managed.include RhCloudHost
82
40
  end
83
41
 
84
42
  initializer "foreman_rh_cloud.set_dynflow.config.on_init", :before => :finisher_hook do |_app|
85
43
  unless Rails.env.test?
86
44
  ForemanTasks.dynflow.config.on_init do |world|
87
45
  ForemanInventoryUpload::Async::GenerateAllReportsJob.spawn_if_missing(world)
88
- InsightsCloud::Async::InsightsScheduledSync.spawn_if_missing(world)
89
46
  end
90
47
  end
91
48
  end