foreman_rh_cloud 2.0.12 → 2.0.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -0
  3. data/app/controllers/foreman_inventory_upload/accounts_controller.rb +2 -0
  4. data/app/controllers/foreman_inventory_upload/uploads_controller.rb +18 -0
  5. data/app/helpers/foreman_inventory_upload_host_helper.rb +2 -3
  6. data/app/models/concerns/rh_cloud_host.rb +4 -1
  7. data/app/models/insights_hit.rb +1 -1
  8. data/app/models/setting/rh_cloud.rb +5 -3
  9. data/app/overrides/hosts_list.rb +1 -1
  10. data/app/services/foreman_rh_cloud/cloud_auth.rb +28 -0
  11. data/app/views/foreman_rh_cloud/react/insights_cloud.html.erb +1 -6
  12. data/app/views/foreman_rh_cloud/react/inventory_upload.html.erb +1 -1
  13. data/app/views/hosts/_insights_tab.html.erb +1 -7
  14. data/app/views/layouts/foreman_rh_cloud/application.html.erb +0 -1
  15. data/config/Gemfile.lock.gh_test +815 -0
  16. data/config/database.yml.example +17 -0
  17. data/config/package-lock.json.gh_test +36317 -0
  18. data/config/routes.rb +2 -0
  19. data/db/migrate/20201007115752_add_hits_count_to_insights_facets_table.foreman_rh_cloud.rb +5 -0
  20. data/db/migrate/20201007121540_setup_hits_count_cache.foreman_rh_cloud.rb +10 -0
  21. data/lib/foreman_inventory_upload.rb +1 -1
  22. data/lib/foreman_inventory_upload/generators/archived_report.rb +1 -1
  23. data/lib/foreman_inventory_upload/generators/fact_helpers.rb +35 -0
  24. data/lib/foreman_inventory_upload/generators/json_stream.rb +7 -2
  25. data/lib/foreman_inventory_upload/generators/queries.rb +2 -0
  26. data/lib/foreman_inventory_upload/generators/slice.rb +27 -25
  27. data/lib/foreman_rh_cloud.rb +2 -1
  28. data/lib/foreman_rh_cloud/engine.rb +3 -3
  29. data/lib/foreman_rh_cloud/version.rb +1 -1
  30. data/lib/insights_cloud/async/insights_full_sync.rb +4 -25
  31. data/lib/inventory_sync/async/inventory_full_sync.rb +2 -23
  32. data/lib/tasks/rh_cloud_inventory.rake +23 -0
  33. data/package.json +1 -1
  34. data/test/unit/fact_helpers_test.rb +22 -0
  35. data/test/unit/insights_facet_test.rb +7 -0
  36. data/test/unit/slice_generator_test.rb +142 -2
  37. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountList.fixtures.js +14 -1
  38. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListActions.js +22 -18
  39. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListReducer.js +16 -0
  40. data/webpack/ForemanInventoryUpload/Components/AccountList/AccountListSelectors.js +6 -0
  41. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListActions.test.js +7 -0
  42. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListReducer.test.js +12 -8
  43. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/AccountListSelectors.test.js +9 -0
  44. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListActions.test.js.snap +19 -0
  45. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListReducer.test.js.snap +11 -0
  46. data/webpack/ForemanInventoryUpload/Components/AccountList/__tests__/__snapshots__/AccountListSelectors.test.js.snap +6 -0
  47. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcher.fixtures.js +2 -0
  48. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcherActions.js +10 -11
  49. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/AutoUploadSwitcherConstants.js +0 -1
  50. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/AutoUploadSwitcherActions.test.js +12 -2
  51. data/webpack/ForemanInventoryUpload/Components/AutoUploadSwitcher/__tests__/__snapshots__/AutoUploadSwitcherActions.test.js.snap +17 -0
  52. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcher.fixtures.js +1 -0
  53. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcher.js +30 -0
  54. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcherActions.js +29 -0
  55. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/ExcludePackagesSwitcherConstants.js +1 -0
  56. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/ExcludePackagesSwitcher.test.js +13 -0
  57. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/ExcludePackagesSwitcherActions.test.js +21 -0
  58. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/ExcludePackagesSwitcher.test.js.snap +38 -0
  59. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/ExcludePackagesSwitcherActions.test.js.snap +31 -0
  60. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/__snapshots__/integration.test.js.snap +41 -0
  61. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/__tests__/integration.test.js +36 -0
  62. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/excludePackagesSwitcher.scss +3 -0
  63. data/webpack/ForemanInventoryUpload/Components/ExcludePackagesSwitcher/index.js +20 -0
  64. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.fixtures.js +2 -1
  65. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.js +1 -0
  66. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcher.scss +3 -0
  67. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcherActions.js +10 -11
  68. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/HostObfuscationSwitcherConstants.js +0 -2
  69. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/HostObfuscationSwitcherActions.test.js +12 -2
  70. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/__tests__/__snapshots__/HostObfuscationSwitcherActions.test.js.snap +18 -1
  71. data/webpack/ForemanInventoryUpload/Components/InventorySettings/InventorySettings.js +4 -0
  72. data/webpack/ForemanInventoryUpload/Components/InventorySettings/__tests__/__snapshots__/InventorySettings.test.js.snap +2 -0
  73. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcher.fixtures.js +1 -0
  74. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcher.js +29 -0
  75. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcherActions.js +29 -0
  76. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/IpsObfuscationSwitcherConstants.js +1 -0
  77. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/IpsObfuscationSwitcher.test.js +13 -0
  78. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/IpsObfuscationSwitcherActions.test.js +21 -0
  79. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/__snapshots__/IpsObfuscationSwitcher.test.js.snap +38 -0
  80. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/__tests__/__snapshots__/IpsObfuscationSwitcherActions.test.js.snap +31 -0
  81. data/webpack/ForemanInventoryUpload/Components/IpsObfuscationSwitcher/index.js +20 -0
  82. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButton.js +8 -2
  83. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonActions.js +9 -11
  84. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonConstants.js +1 -1
  85. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/SyncButtonReducer.js +2 -2
  86. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonActions.test.js +18 -0
  87. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/SyncButtonReducer.test.js +1 -8
  88. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButtonActions.test.js.snap +62 -0
  89. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/__tests__/__snapshots__/SyncButtonReducer.test.js.snap +0 -7
  90. data/webpack/ForemanInventoryUpload/Components/PageHeader/components/SyncButton/components/Modal.js +2 -2
  91. data/webpack/ForemanInventoryUpload/Components/TabHeader/TabHeader.js +6 -1
  92. data/webpack/ForemanInventoryUpload/Components/Terminal/Terminal.js +2 -4
  93. data/webpack/ForemanInventoryUpload/ForemanInventoryHelpers.js +8 -0
  94. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsActions.js +17 -20
  95. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsConstants.js +0 -6
  96. data/webpack/InsightsCloudSync/Components/InsightsSettings/InsightsSettingsReducer.js +0 -4
  97. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettingsActions.test.js +16 -0
  98. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/InsightsSettingsReducer.test.js +1 -24
  99. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettingsActions.test.js.snap +38 -4
  100. data/webpack/InsightsCloudSync/Components/InsightsSettings/__tests__/__snapshots__/InsightsSettingsReducer.test.js.snap +0 -14
  101. data/webpack/InsightsCloudSync/InsightsCloudSync.js +3 -5
  102. data/webpack/InsightsCloudSync/InsightsCloudSync.test.js +1 -3
  103. data/webpack/InsightsCloudSync/InsightsCloudSyncActions.js +10 -11
  104. data/webpack/InsightsCloudSync/InsightsCloudSyncConstants.js +0 -2
  105. data/webpack/InsightsCloudSync/__snapshots__/InsightsCloudSync.test.js.snap +1 -1
  106. data/webpack/InsightsHostDetailsTab/InsightsTab.js +8 -6
  107. data/webpack/InsightsHostDetailsTab/InsightsTab.scss +2 -2
  108. data/webpack/InsightsHostDetailsTab/InsightsTabActions.js +9 -8
  109. data/webpack/InsightsHostDetailsTab/InsightsTabConstants.js +0 -1
  110. data/webpack/InsightsHostDetailsTab/InsightsTabReducer.js +2 -9
  111. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabActions.test.js +7 -1
  112. data/webpack/InsightsHostDetailsTab/__tests__/InsightsTabReducer.test.js +0 -9
  113. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTab.test.js.snap +26 -22
  114. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTabActions.test.js.snap +40 -2
  115. data/webpack/InsightsHostDetailsTab/__tests__/__snapshots__/InsightsTabReducer.test.js.snap +0 -7
  116. metadata +30 -3
  117. data/webpack/ForemanInventoryUpload/Components/HostObfuscationSwitcher/hostObfuscationSwitcher.scss +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 32e82a148a80e18485bbcc80e69715ad4cbda072aaf6e011e18030212461aa4e
4
- data.tar.gz: 9294a0e1779a60bfa568c0413f9f3c84ab464a563cb36060798637b97f2adcff
3
+ metadata.gz: a7230451a1045df7986bd01f42f32d66ccf3d16efc6858c7eb40bd001cc5d40a
4
+ data.tar.gz: 0675fa4485a9cd91579cf35d4df110b0d1bd7aa8c422183b4c0e58ce5cf11f1a
5
5
  SHA512:
6
- metadata.gz: 5652f82aaf2127c5eba23bc81e92959a665993ea329a8462c4078b946f840cf06f9c6f385b18cfce494be83df376ed9d697f15691929b297133994edab745569
7
- data.tar.gz: 71fcfbb4dff6cb22e1078c732c42a0ffe99ec14e865ec88a9668c53fc9f91919661a1d406cc34b45cbd59c8bf058803d3ec3b5aa23b1127cf759c708fc3c3bc2
6
+ metadata.gz: ca8d9900c62c798990eb72dd5224b5341caf9120a3cd4e2c1c02cf53d7928d6edaca21901f0de47a604cbaa791f91accce79c70a0d00301b5f9fb221e79cec25
7
+ data.tar.gz: c612e9dcc3d1662f41552c23a585148f659f2fd2d3a059a831b189f6b53c26b5189ec95d59fad7cfff97d3aa6f604cc882051d4ee694a7fffdf48903f06b34de
data/README.md CHANGED
@@ -19,10 +19,23 @@ In UI: Configure -> Inventory Upload -> Restart
19
19
 
20
20
  From command-line:
21
21
 
22
+ # generate and upload report for all organizations
23
+ /usr/sbin/foreman-rake rh_cloud_inventory:report:generate_upload
24
+
25
+ # generate and upload report for specific organization
26
+ export organization_id=1
27
+ /usr/sbin/foreman-rake rh_cloud_inventory:report:generate_upload
28
+
29
+ # generate report for specific organization (don't upload)
22
30
  export organization_id=1
23
31
  export target=/var/lib/foreman/red_hat_inventory/generated_reports/
24
32
  /usr/sbin/foreman-rake rh_cloud_inventory:report:generate
25
33
 
34
+ # upload previously generated report (needs to be named 'report_for_#{organization_id}.tar.gz')
35
+ export organization_id=1
36
+ export target=/var/lib/foreman/red_hat_inventory/generated_reports/
37
+ /usr/sbin/foreman-rake rh_cloud_inventory:report:upload
38
+
26
39
  #### Fetch hosts remediation data
27
40
 
28
41
  In UI: Configure -> Insights -> Sync now
@@ -23,7 +23,9 @@ module ForemanInventoryUpload
23
23
  render json: {
24
24
  autoUploadEnabled: Setting[:allow_auto_inventory_upload],
25
25
  hostObfuscationEnabled: Setting[:obfuscate_inventory_hostnames],
26
+ ipsObfuscationEnabled: Setting[:obfuscate_inventory_ips],
26
27
  cloudToken: Setting[:rh_cloud_token],
28
+ excludePackages: Setting[:exclude_installed_packages],
27
29
  accounts: accounts,
28
30
  }, status: :ok
29
31
  end
@@ -46,6 +46,24 @@ module ForemanInventoryUpload
46
46
  ActiveModel::Type::Boolean.new.cast(params.require(:value))
47
47
  end
48
48
 
49
+ def installed_packages_inclusion
50
+ Setting[:exclude_installed_packages] = host_obfuscation_params
51
+ render_setting(:excludePackages, :exclude_installed_packages)
52
+ end
53
+
54
+ def installed_packages_inclusion_params
55
+ ActiveModel::Type::Boolean.new.cast(params.require(:value))
56
+ end
57
+
58
+ def ips_obfuscation
59
+ Setting[:obfuscate_inventory_ips] = ips_obfuscation_params
60
+ render_setting(:ipsObfuscationEnabled, :obfuscate_inventory_ips)
61
+ end
62
+
63
+ def ips_obfuscation_params
64
+ ActiveModel::Type::Boolean.new.cast(params.require(:value))
65
+ end
66
+
49
67
  private
50
68
 
51
69
  def render_setting(node_name, setting)
@@ -5,11 +5,10 @@ module ForemanInventoryUploadHostHelper
5
5
 
6
6
  def hits_counts_cell(host)
7
7
  host_hits = hits_counts[host.id]
8
- content = n_('One recommendation', '%{hits} recommendations', host_hits) % { hits: host_hits } if host_hits
9
- tag.td class: ['hidden-xs', 'ellipsis'] do
8
+ tag.td class: ['hidden-xs', 'ellipsis', 'text-center'] do
10
9
  if host_hits
11
10
  link_to(
12
- content,
11
+ host_hits,
13
12
  InsightsCloud::WebUi.system_url(InsightsCloud::WebUi::ADVISOR, host.insights.uuid),
14
13
  :rel => 'external noopener noreferrer',
15
14
  :target => '_blank'
@@ -6,7 +6,10 @@ module RhCloudHost
6
6
  :inventory_upload_facts,
7
7
  -> { where(fact_name_id: ForemanInventoryUpload::Generators::Queries.fact_names.values) },
8
8
  class_name: 'FactValue',
9
- :foreign_key => :host_id
9
+ foreign_key: :host_id
10
10
  )
11
+
12
+ has_many :insights_hits, through: :insights, source: :hits
13
+ scoped_search :relation => :insights, :on => :hits_count, :only_explicit => true, :rename => :insights_recommendations_count
11
14
  end
12
15
  end
@@ -2,5 +2,5 @@ class InsightsHit < ApplicationRecord
2
2
  has_one :host
3
3
  # since the facet is one-to-one association with a host, we can connect
4
4
  # through host_id column on both this model and facet.
5
- has_one :insights_facet, foreign_key: 'host_id', primary_key: 'host_id'
5
+ belongs_to :insights_facet, foreign_key: 'host_id', primary_key: 'host_id', counter_cache: :hits_count
6
6
  end
@@ -3,10 +3,12 @@ class Setting::RhCloud < Setting
3
3
  return unless ActiveRecord::Base.connection.table_exists?('settings')
4
4
  return unless super
5
5
  [
6
- set('allow_auto_inventory_upload', N_('Allow automatic upload of the host inventory to the Red Hat cloud'), false),
7
- set('allow_auto_insights_sync', N_('Allow recommendations synchronization from Red Hat cloud'), false),
8
- set('obfuscate_inventory_hostnames', N_('Obfuscate host names sent to Red Hat cloud'), false),
6
+ set('allow_auto_inventory_upload', N_('Allow automatic upload of the host inventory to the Red Hat cloud'), false, N_('Allow automatic inventory uploads')),
7
+ set('allow_auto_insights_sync', N_('Allow recommendations synchronization from Red Hat cloud'), false, N_('Allow recommendations synchronization')),
8
+ set('obfuscate_inventory_hostnames', N_('Obfuscate host names sent to Red Hat cloud'), false, N_('Obfuscate host names')),
9
+ set('obfuscate_inventory_ips', N_('Obfuscate ip addresses sent to Red Hat cloud'), false, N_('Obfuscate IPs')),
9
10
  set('rh_cloud_token', N_('Authentication token to Red Hat cloud services. Used to authenticate requests to cloud APIs'), 'DEFAULT', N_('Red Hat Cloud token'), nil, encrypted: true),
11
+ set('exclude_installed_packages', N_('Exclude installed packages from Red Hat cloud inventory report'), false, N_("Don't upload installed packages")),
10
12
  ]
11
13
  end
12
14
 
@@ -2,7 +2,7 @@ Deface::Override.new(
2
2
  virtual_path: 'hosts/_list',
3
3
  name: 'insights_hits_header',
4
4
  insert_before: 'thead tr th.hidden-xs:first-of-type',
5
- text: '<th class="hidden-xs" width="10%"><%= _("Insights")%></th>'
5
+ text: '<th class="hidden-xs ellipsis" width="12%"><%= sort :insights_recommendations_count, :as => _("Recommendations")%></th>'
6
6
  )
7
7
 
8
8
  Deface::Override.new(
@@ -0,0 +1,28 @@
1
+ module ForemanRhCloud
2
+ module CloudAuth
3
+ extend ActiveSupport::Concern
4
+
5
+ def rh_credentials
6
+ @rh_credentials ||= query_refresh_token
7
+ end
8
+
9
+ def query_refresh_token
10
+ token_response = RestClient::Request.execute(
11
+ method: :post,
12
+ url: ForemanRhCloud.authentication_url,
13
+ verify_ssl: ForemanRhCloud.verify_ssl_method,
14
+ proxy: ForemanRhCloud.transformed_http_proxy_string(logger: logger),
15
+ payload: {
16
+ grant_type: 'refresh_token',
17
+ client_id: 'rhsm-api',
18
+ refresh_token: Setting[:rh_cloud_token],
19
+ }
20
+ )
21
+
22
+ JSON.parse(token_response)['access_token']
23
+ rescue RestClient::ExceptionWithResponse => e
24
+ Foreman::Logging.exception('Unable to authenticate using rh_cloud_token setting', e)
25
+ raise ::Foreman::WrappedException.new(e, N_('Unable to authenticate using rh_cloud_token setting'))
26
+ end
27
+ end
28
+ end
@@ -1,6 +1 @@
1
- <%= mount_react_component(
2
- 'InsightsCloudSync',
3
- '#ForemanRhCloudReactRoot',
4
- {
5
- settingsUrl: settings_url(search: 'name = rh_cloud_token')
6
- }.to_json) %>
1
+ <%= react_component('InsightsCloudSync', { settingsUrl: settings_url(search: 'name = rh_cloud_token') }) %>
@@ -1 +1 @@
1
- <%= mount_react_component('ForemanInventoryUpload', '#ForemanRhCloudReactRoot') %>
1
+ <%= react_component('ForemanInventoryUpload') %>
@@ -6,10 +6,4 @@
6
6
  <%= webpacked_plugins_css_for :'foreman_rh_cloud' %>
7
7
  <% end %>
8
8
 
9
- <div id="host_details_insights_react_container"></div>
10
- <%= mount_react_component(
11
- 'InsightsHostDetailsTab',
12
- '#host_details_insights_react_container',
13
- { hostID: host.id }.to_json,
14
- flatten_data: true
15
- ) %>
9
+ <%= react_component('InsightsHostDetailsTab', { hostID: host.id }) %>
@@ -10,7 +10,6 @@
10
10
  <%= notifications %>
11
11
  <div id="organization-id" data-id="<%= Organization.current.id if Organization.current %>" ></div>
12
12
  <div id="user-id" data-id="<%= User.current.id if User.current %>" ></div>
13
- <div id="ForemanRhCloudReactRoot"></div>
14
13
  <%= yield %>
15
14
  <% end %>
16
15
  <%= render file: "layouts/base" %>
@@ -0,0 +1,815 @@
1
+ PATH
2
+ remote: ../foreman_rh_cloud
3
+ specs:
4
+ foreman_rh_cloud (2.0.14)
5
+ katello
6
+ redhat_access
7
+
8
+ PATH
9
+ remote: ../katello
10
+ specs:
11
+ katello (3.16.2)
12
+ activerecord-import
13
+ anemone
14
+ angular-rails-templates (~> 1.1.0)
15
+ apipie-rails (>= 0.5.14)
16
+ deface (>= 1.0.2, < 2.0.0)
17
+ dynflow (>= 1.2.0)
18
+ foreman-tasks (>= 0.14.1, <= 2.0.2)
19
+ fx (< 1.0)
20
+ gettext_i18n_rails
21
+ json
22
+ oauth
23
+ pulp_2to3_migration_client (>= 0.2.0b6, < 0.3.0)
24
+ pulp_ansible_client (> 0.1, < 0.2.0b15)
25
+ pulp_certguard_client (< 2.0)
26
+ pulp_container_client (>= 1.4.0, < 1.5.0)
27
+ pulp_file_client (>= 1.0.0, < 1.1.0)
28
+ pulp_rpm_client (>= 3.5.0, < 3.6.0)
29
+ pulpcore_client (>= 3.4.0, < 3.5.0)
30
+ rabl
31
+ rails
32
+ rest-client
33
+ runcible (>= 2.13.0, < 3.0.0)
34
+ stomp
35
+
36
+ GEM
37
+ remote: https://rubygems.org/
38
+ specs:
39
+ actioncable (6.0.3.4)
40
+ actionpack (= 6.0.3.4)
41
+ nio4r (~> 2.0)
42
+ websocket-driver (>= 0.6.1)
43
+ actionmailbox (6.0.3.4)
44
+ actionpack (= 6.0.3.4)
45
+ activejob (= 6.0.3.4)
46
+ activerecord (= 6.0.3.4)
47
+ activestorage (= 6.0.3.4)
48
+ activesupport (= 6.0.3.4)
49
+ mail (>= 2.7.1)
50
+ actionmailer (6.0.3.4)
51
+ actionpack (= 6.0.3.4)
52
+ actionview (= 6.0.3.4)
53
+ activejob (= 6.0.3.4)
54
+ mail (~> 2.5, >= 2.5.4)
55
+ rails-dom-testing (~> 2.0)
56
+ actionpack (6.0.3.4)
57
+ actionview (= 6.0.3.4)
58
+ activesupport (= 6.0.3.4)
59
+ rack (~> 2.0, >= 2.0.8)
60
+ rack-test (>= 0.6.3)
61
+ rails-dom-testing (~> 2.0)
62
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
63
+ actiontext (6.0.3.4)
64
+ actionpack (= 6.0.3.4)
65
+ activerecord (= 6.0.3.4)
66
+ activestorage (= 6.0.3.4)
67
+ activesupport (= 6.0.3.4)
68
+ nokogiri (>= 1.8.5)
69
+ actionview (6.0.3.4)
70
+ activesupport (= 6.0.3.4)
71
+ builder (~> 3.1)
72
+ erubi (~> 1.4)
73
+ rails-dom-testing (~> 2.0)
74
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
75
+ activejob (6.0.3.4)
76
+ activesupport (= 6.0.3.4)
77
+ globalid (>= 0.3.6)
78
+ activemodel (6.0.3.4)
79
+ activesupport (= 6.0.3.4)
80
+ activerecord (6.0.3.4)
81
+ activemodel (= 6.0.3.4)
82
+ activesupport (= 6.0.3.4)
83
+ activerecord-import (1.0.7)
84
+ activerecord (>= 3.2)
85
+ activerecord-nulldb-adapter (0.5.1)
86
+ activerecord (>= 5.2.0)
87
+ activerecord-session_store (1.1.3)
88
+ actionpack (>= 4.0)
89
+ activerecord (>= 4.0)
90
+ multi_json (~> 1.11, >= 1.11.2)
91
+ rack (>= 1.5.2, < 3)
92
+ railties (>= 4.0)
93
+ activestorage (6.0.3.4)
94
+ actionpack (= 6.0.3.4)
95
+ activejob (= 6.0.3.4)
96
+ activerecord (= 6.0.3.4)
97
+ marcel (~> 0.3.1)
98
+ activesupport (6.0.3.4)
99
+ concurrent-ruby (~> 1.0, >= 1.0.2)
100
+ i18n (>= 0.7, < 2)
101
+ minitest (~> 5.1)
102
+ tzinfo (~> 1.1)
103
+ zeitwerk (~> 2.2, >= 2.2.2)
104
+ addressable (2.7.0)
105
+ public_suffix (>= 2.0.2, < 5.0)
106
+ algebrick (0.7.5)
107
+ ancestry (3.2.1)
108
+ activerecord (>= 4.2.0)
109
+ anemone (0.7.2)
110
+ nokogiri (>= 1.3.0)
111
+ robotex (>= 1.0.0)
112
+ angular-rails-templates (1.1.0)
113
+ railties (>= 4.2, < 7)
114
+ sprockets (>= 3.0, < 5)
115
+ tilt
116
+ ansi (1.5.0)
117
+ apipie-dsl (2.3.0)
118
+ apipie-params (0.0.5)
119
+ apipie-rails (0.5.18)
120
+ rails (>= 4.1)
121
+ as_deprecation_tracker (1.5.0)
122
+ activesupport (>= 4.2)
123
+ railties (>= 4.2)
124
+ ast (2.4.1)
125
+ audited (4.9.0)
126
+ activerecord (>= 4.2, < 6.1)
127
+ autoprefixer-rails (10.1.0.0)
128
+ execjs
129
+ awesome_print (1.8.0)
130
+ bcrypt (3.1.16)
131
+ benchmark-ips (2.8.4)
132
+ binding_of_caller (0.8.0)
133
+ debug_inspector (>= 0.0.1)
134
+ bootsnap (1.5.1)
135
+ msgpack (~> 1.0)
136
+ bootstrap-sass (3.4.1)
137
+ autoprefixer-rails (>= 5.2.1)
138
+ sassc (>= 2.0.0)
139
+ builder (3.2.4)
140
+ bullet (6.1.2)
141
+ activesupport (>= 3.0.0)
142
+ uniform_notifier (~> 1.11)
143
+ byebug (11.1.3)
144
+ capybara (3.32.0)
145
+ addressable
146
+ mini_mime (>= 0.1.3)
147
+ nokogiri (~> 1.8)
148
+ rack (>= 1.6.0)
149
+ rack-test (>= 0.6.3)
150
+ regexp_parser (~> 1.5)
151
+ xpath (~> 3.2)
152
+ childprocess (3.0.0)
153
+ ci_reporter (2.0.0)
154
+ builder (>= 2.1.2)
155
+ ci_reporter_minitest (1.0.0)
156
+ ci_reporter (~> 2.0)
157
+ minitest (~> 5.0)
158
+ cliver (0.3.2)
159
+ coderay (1.1.3)
160
+ coffee-rails (5.0.0)
161
+ coffee-script (>= 2.2.0)
162
+ railties (>= 5.2.0)
163
+ coffee-script (2.4.1)
164
+ coffee-script-source
165
+ execjs
166
+ coffee-script-source (1.12.2)
167
+ concurrent-ruby (1.1.7)
168
+ concurrent-ruby-edge (0.6.0)
169
+ concurrent-ruby (~> 1.1.6)
170
+ connection_pool (2.2.3)
171
+ crack (0.4.5)
172
+ rexml
173
+ crass (1.0.6)
174
+ css_parser (1.7.1)
175
+ addressable
176
+ daemons (1.3.1)
177
+ database_cleaner (1.8.5)
178
+ deacon (1.0.0)
179
+ debug_inspector (1.0.0)
180
+ declarative (0.0.20)
181
+ declarative-option (0.1.0)
182
+ deep_cloneable (3.0.0)
183
+ activerecord (>= 3.1.0, < 7)
184
+ deface (1.5.3)
185
+ nokogiri (>= 1.6)
186
+ polyglot
187
+ rails (>= 4.1)
188
+ rainbow (>= 2.1.0)
189
+ docile (1.3.4)
190
+ domain_name (0.5.20190701)
191
+ unf (>= 0.0.5, < 1.0.0)
192
+ dynflow (1.4.7)
193
+ algebrick (~> 0.7.0)
194
+ apipie-params
195
+ concurrent-ruby (~> 1.1.3)
196
+ concurrent-ruby-edge (~> 0.6.0)
197
+ multi_json
198
+ sequel (>= 4.0.0)
199
+ erubi (1.10.0)
200
+ excon (0.78.1)
201
+ execjs (2.7.0)
202
+ facter (4.0.47)
203
+ hocon (~> 1.3)
204
+ thor (>= 1.0.1, < 2.0)
205
+ factory_bot (5.2.0)
206
+ activesupport (>= 4.2.0)
207
+ factory_bot_rails (5.2.0)
208
+ factory_bot (~> 5.2.0)
209
+ railties (>= 4.2.0)
210
+ faraday (0.17.3)
211
+ multipart-post (>= 1.2, < 3)
212
+ fast_gettext (1.8.0)
213
+ ffi (1.14.2)
214
+ fog-aws (3.7.0)
215
+ fog-core (~> 2.1)
216
+ fog-json (~> 1.1)
217
+ fog-xml (~> 0.1)
218
+ ipaddress (~> 0.8)
219
+ fog-core (2.1.0)
220
+ builder
221
+ excon (~> 0.58)
222
+ formatador (~> 0.2)
223
+ mime-types
224
+ fog-google (1.8.2)
225
+ fog-core (<= 2.1.0)
226
+ fog-json (~> 1.2)
227
+ fog-xml (~> 0.1.0)
228
+ google-api-client (~> 0.23.0)
229
+ fog-json (1.2.0)
230
+ fog-core
231
+ multi_json (~> 1.10)
232
+ fog-libvirt (0.7.0)
233
+ fog-core (>= 1.27.4)
234
+ fog-json
235
+ fog-xml (~> 0.1.1)
236
+ json
237
+ ruby-libvirt (>= 0.7.0)
238
+ fog-openstack (1.0.11)
239
+ fog-core (~> 2.1)
240
+ fog-json (>= 1.0)
241
+ ipaddress (>= 0.8)
242
+ fog-ovirt (1.2.5)
243
+ fog-core
244
+ fog-json
245
+ fog-xml
246
+ ovirt-engine-sdk (>= 4.1.3)
247
+ rbovirt (~> 0.1.5)
248
+ fog-vsphere (3.5.0)
249
+ fog-core
250
+ rbvmomi (>= 1.9, < 3)
251
+ fog-xml (0.1.3)
252
+ fog-core
253
+ nokogiri (>= 1.5.11, < 2.0.0)
254
+ font-awesome-sass (4.6.2)
255
+ sass (>= 3.2)
256
+ foreman (0.87.2)
257
+ foreman-tasks (2.0.2)
258
+ dynflow (>= 1.2.3)
259
+ foreman-tasks-core
260
+ get_process_mem
261
+ parse-cron (~> 0.1.4)
262
+ sinatra
263
+ foreman-tasks-core (0.3.4)
264
+ dynflow (>= 1.2.0)
265
+ formatador (0.2.5)
266
+ friendly_id (5.3.0)
267
+ activerecord (>= 4.0.0)
268
+ fx (0.6.2)
269
+ activerecord (>= 4.0.0)
270
+ railties (>= 4.0.0)
271
+ get_process_mem (0.2.7)
272
+ ffi (~> 1.0)
273
+ gettext (3.3.6)
274
+ locale (>= 2.0.5)
275
+ text (>= 1.3.0)
276
+ gettext_i18n_rails (1.8.1)
277
+ fast_gettext (>= 0.9.0)
278
+ gettext_i18n_rails_js (1.3.0)
279
+ gettext (>= 3.0.2)
280
+ gettext_i18n_rails (>= 0.7.1)
281
+ po_to_json (>= 1.0.0)
282
+ rails (>= 3.2.0)
283
+ gitlab-sidekiq-fetcher (0.6.1)
284
+ sidekiq (>= 5, < 6.1)
285
+ globalid (0.4.2)
286
+ activesupport (>= 4.2.0)
287
+ google-api-client (0.23.9)
288
+ addressable (~> 2.5, >= 2.5.1)
289
+ googleauth (>= 0.5, < 0.7.0)
290
+ httpclient (>= 2.8.1, < 3.0)
291
+ mime-types (~> 3.0)
292
+ representable (~> 3.0)
293
+ retriable (>= 2.0, < 4.0)
294
+ signet (~> 0.9)
295
+ googleauth (0.6.7)
296
+ faraday (~> 0.12)
297
+ jwt (>= 1.4, < 3.0)
298
+ memoist (~> 0.16)
299
+ multi_json (~> 1.11)
300
+ os (>= 0.9, < 2.0)
301
+ signet (~> 0.7)
302
+ graphiql-rails (1.7.0)
303
+ railties
304
+ sprockets-rails
305
+ graphql (1.8.18)
306
+ graphql-batch (0.4.3)
307
+ graphql (>= 1.3, < 2)
308
+ promise.rb (~> 0.7.2)
309
+ hashdiff (1.0.1)
310
+ hocon (1.3.1)
311
+ http-accept (1.7.0)
312
+ http-cookie (1.0.3)
313
+ domain_name (~> 0.5)
314
+ httpclient (2.8.3)
315
+ i18n (1.8.5)
316
+ concurrent-ruby (~> 1.0)
317
+ immigrant (0.3.6)
318
+ activerecord (>= 3.0)
319
+ ipaddress (0.8.3)
320
+ jaro_winkler (1.5.4)
321
+ journald-logger (3.0.1)
322
+ journald-native (~> 1.0)
323
+ journald-native (1.0.12)
324
+ jquery-ui-rails (6.0.1)
325
+ railties (>= 3.2.16)
326
+ json (2.5.1)
327
+ jwt (2.2.2)
328
+ launchy (2.5.0)
329
+ addressable (~> 2.7)
330
+ ldap_fluff (0.5.0)
331
+ activesupport
332
+ net-ldap (>= 0.11)
333
+ little-plugger (1.1.4)
334
+ locale (2.1.3)
335
+ logging (2.3.0)
336
+ little-plugger (~> 1.1)
337
+ multi_json (~> 1.14)
338
+ logging-journald (2.1.0)
339
+ journald-logger (~> 3.0)
340
+ logging
341
+ loofah (2.8.0)
342
+ crass (~> 1.0.2)
343
+ nokogiri (>= 1.5.9)
344
+ mail (2.7.1)
345
+ mini_mime (>= 0.1.1)
346
+ marcel (0.3.3)
347
+ mimemagic (~> 0.3.2)
348
+ maruku (0.7.3)
349
+ memoist (0.16.2)
350
+ method_source (1.0.0)
351
+ mime-types (3.3.1)
352
+ mime-types-data (~> 3.2015)
353
+ mime-types-data (3.2020.1104)
354
+ mimemagic (0.3.5)
355
+ mini_mime (1.0.2)
356
+ mini_portile2 (2.4.0)
357
+ minitest (5.10.3)
358
+ minitest-reporters (1.4.2)
359
+ ansi
360
+ builder
361
+ minitest (>= 5.0)
362
+ ruby-progressbar
363
+ minitest-retry (0.2.1)
364
+ minitest (>= 5.0)
365
+ minitest-spec-rails (6.0.3)
366
+ minitest (>= 5.0)
367
+ railties (>= 4.1)
368
+ minitest-tags (0.0.5)
369
+ mocha (1.12.0)
370
+ msgpack (1.3.3)
371
+ multi_json (1.15.0)
372
+ multipart-post (2.1.1)
373
+ mustermann (1.1.1)
374
+ ruby2_keywords (~> 0.0.1)
375
+ net-ldap (0.17.0)
376
+ net-ping (2.0.8)
377
+ net-scp (3.0.0)
378
+ net-ssh (>= 2.6.5, < 7.0.0)
379
+ net-ssh (4.2.0)
380
+ netrc (0.11.0)
381
+ nio4r (2.5.4)
382
+ nokogiri (1.10.10)
383
+ mini_portile2 (~> 2.4.0)
384
+ oauth (0.5.4)
385
+ optimist (3.0.1)
386
+ os (1.1.1)
387
+ ovirt-engine-sdk (4.4.0)
388
+ json (>= 1, < 3)
389
+ paint (2.2.1)
390
+ parallel (1.20.1)
391
+ parallel_tests (3.4.0)
392
+ parallel
393
+ parse-cron (0.1.4)
394
+ parser (3.0.0.0)
395
+ ast (~> 2.4.1)
396
+ patternfly-sass (3.59.5)
397
+ bootstrap-sass (~> 3.4.0)
398
+ font-awesome-sass (~> 4.6.2)
399
+ sassc (> 2.0.1, < 3.0)
400
+ pg (1.2.3)
401
+ po_to_json (1.0.1)
402
+ json (>= 1.6.0)
403
+ poltergeist (1.18.1)
404
+ capybara (>= 2.1, < 4)
405
+ cliver (~> 0.3.1)
406
+ websocket-driver (>= 0.2.0)
407
+ polyglot (0.3.5)
408
+ prometheus-client (1.0.0)
409
+ promise.rb (0.7.4)
410
+ pry (0.13.1)
411
+ coderay (~> 1.1)
412
+ method_source (~> 1.0)
413
+ pry-byebug (3.9.0)
414
+ byebug (~> 11.0)
415
+ pry (~> 0.13.0)
416
+ pry-doc (1.1.0)
417
+ pry (~> 0.11)
418
+ yard (~> 0.9.11)
419
+ pry-rails (0.3.9)
420
+ pry (>= 0.10.4)
421
+ pry-remote (0.1.8)
422
+ pry (~> 0.9)
423
+ slop (~> 3.0)
424
+ pry-stack_explorer (0.4.12)
425
+ binding_of_caller (~> 0.7)
426
+ pry (~> 0.13)
427
+ public_suffix (4.0.6)
428
+ pulp_2to3_migration_client (0.2.1)
429
+ faraday (>= 0.14.0)
430
+ json (~> 2.1, >= 2.1.0)
431
+ pulp_ansible_client (0.2.0b15.dev01594337576)
432
+ faraday (>= 0.14.0)
433
+ json (~> 2.1, >= 2.1.0)
434
+ pulp_certguard_client (1.1.0)
435
+ faraday (>= 0.14.0)
436
+ json (~> 2.1, >= 2.1.0)
437
+ pulp_container_client (1.4.2)
438
+ faraday (>= 0.14.0)
439
+ json (~> 2.1, >= 2.1.0)
440
+ pulp_file_client (1.0.1)
441
+ faraday (>= 0.14.0)
442
+ json (~> 2.1, >= 2.1.0)
443
+ pulp_rpm_client (3.5.1)
444
+ faraday (>= 0.14.0)
445
+ json (~> 2.1, >= 2.1.0)
446
+ pulpcore_client (3.4.1)
447
+ faraday (>= 0.14.0)
448
+ json (~> 2.1, >= 2.1.0)
449
+ puma (4.3.7)
450
+ nio4r (~> 2.0)
451
+ rabl (0.14.3)
452
+ activesupport (>= 2.3.14)
453
+ rack (2.2.3)
454
+ rack-cors (1.0.6)
455
+ rack (>= 1.6.0)
456
+ rack-jsonp (1.3.1)
457
+ rack
458
+ rack-openid (1.4.2)
459
+ rack (>= 1.1.0)
460
+ ruby-openid (>= 2.1.8)
461
+ rack-protection (2.1.0)
462
+ rack
463
+ rack-test (1.1.0)
464
+ rack (>= 1.0, < 3)
465
+ rails (6.0.3.4)
466
+ actioncable (= 6.0.3.4)
467
+ actionmailbox (= 6.0.3.4)
468
+ actionmailer (= 6.0.3.4)
469
+ actionpack (= 6.0.3.4)
470
+ actiontext (= 6.0.3.4)
471
+ actionview (= 6.0.3.4)
472
+ activejob (= 6.0.3.4)
473
+ activemodel (= 6.0.3.4)
474
+ activerecord (= 6.0.3.4)
475
+ activestorage (= 6.0.3.4)
476
+ activesupport (= 6.0.3.4)
477
+ bundler (>= 1.3.0)
478
+ railties (= 6.0.3.4)
479
+ sprockets-rails (>= 2.0.0)
480
+ rails-controller-testing (1.0.5)
481
+ actionpack (>= 5.0.1.rc1)
482
+ actionview (>= 5.0.1.rc1)
483
+ activesupport (>= 5.0.1.rc1)
484
+ rails-dom-testing (2.0.3)
485
+ activesupport (>= 4.2.0)
486
+ nokogiri (>= 1.6)
487
+ rails-html-sanitizer (1.3.0)
488
+ loofah (~> 2.3)
489
+ rails-i18n (6.0.0)
490
+ i18n (>= 0.7, < 2)
491
+ railties (>= 6.0.0, < 7)
492
+ railties (6.0.3.4)
493
+ actionpack (= 6.0.3.4)
494
+ activesupport (= 6.0.3.4)
495
+ method_source
496
+ rake (>= 0.8.7)
497
+ thor (>= 0.20.3, < 2.0)
498
+ rainbow (3.0.0)
499
+ rake (13.0.3)
500
+ rb-fsevent (0.10.4)
501
+ rb-inotify (0.10.1)
502
+ ffi (~> 1.0)
503
+ rbovirt (0.1.7)
504
+ nokogiri
505
+ rest-client (> 1.7.0)
506
+ rbvmomi (2.4.1)
507
+ builder (~> 3.0)
508
+ json (>= 1.8)
509
+ nokogiri (~> 1.5)
510
+ optimist (~> 3.0)
511
+ rdoc (6.3.0)
512
+ record_tag_helper (1.0.1)
513
+ actionview (>= 5)
514
+ redhat_access (2.2.18)
515
+ angular-rails-templates (>= 0.0.4)
516
+ foreman-tasks
517
+ katello
518
+ redhat_access_lib (>= 1.1.5)
519
+ redhat_access_lib (1.1.5)
520
+ rest-client (>= 1.6.3)
521
+ redis (4.1.4)
522
+ regexp_parser (1.8.2)
523
+ representable (3.0.4)
524
+ declarative (< 0.1.0)
525
+ declarative-option (< 0.2.0)
526
+ uber (< 0.2.0)
527
+ responders (3.0.1)
528
+ actionpack (>= 5.0)
529
+ railties (>= 5.0)
530
+ rest-client (2.1.0)
531
+ http-accept (>= 1.7.0, < 2.0)
532
+ http-cookie (>= 1.0.2, < 2.0)
533
+ mime-types (>= 1.16, < 4.0)
534
+ netrc (~> 0.8)
535
+ retriable (3.1.2)
536
+ rexml (3.2.4)
537
+ rfauxfactory (0.1.5)
538
+ roadie (4.0.0)
539
+ css_parser (~> 1.4)
540
+ nokogiri (~> 1.8)
541
+ roadie-rails (2.2.0)
542
+ railties (>= 5.1, < 6.2)
543
+ roadie (>= 3.1, < 5.0)
544
+ robotex (1.0.0)
545
+ robottelo_reporter (0.1.1)
546
+ builder (>= 2.1.2)
547
+ rubocop (0.80.1)
548
+ jaro_winkler (~> 1.5.1)
549
+ parallel (~> 1.10)
550
+ parser (>= 2.7.0.1)
551
+ rainbow (>= 2.2.2, < 4.0)
552
+ rexml
553
+ ruby-progressbar (~> 1.7)
554
+ unicode-display_width (>= 1.4.0, < 1.7)
555
+ rubocop-checkstyle_formatter (0.4.0)
556
+ rubocop (>= 0.35.1)
557
+ rubocop-minitest (0.7.0)
558
+ rubocop (>= 0.74)
559
+ rubocop-performance (1.5.2)
560
+ rubocop (>= 0.71.0)
561
+ rubocop-rails (2.4.2)
562
+ rack (>= 1.1)
563
+ rubocop (>= 0.72.0)
564
+ ruby-libvirt (0.7.1)
565
+ ruby-openid (2.9.2)
566
+ ruby-progressbar (1.11.0)
567
+ ruby2_keywords (0.0.2)
568
+ ruby2ruby (2.4.4)
569
+ ruby_parser (~> 3.1)
570
+ sexp_processor (~> 4.6)
571
+ ruby_parser (3.15.0)
572
+ sexp_processor (~> 4.9)
573
+ rubyzip (2.3.0)
574
+ runcible (2.13.1)
575
+ activesupport (>= 3.0.10)
576
+ i18n (>= 0.5.0)
577
+ json
578
+ oauth
579
+ rest-client (>= 1.6.1, < 3.0.0)
580
+ safemode (1.3.6)
581
+ ruby2ruby (>= 2.4.0)
582
+ ruby_parser (>= 3.10.1)
583
+ sexp_processor (>= 4.10.0)
584
+ sass (3.7.4)
585
+ sass-listen (~> 4.0.0)
586
+ sass-listen (4.0.0)
587
+ rb-fsevent (~> 0.9, >= 0.9.4)
588
+ rb-inotify (~> 0.9, >= 0.9.7)
589
+ sass-rails (6.0.0)
590
+ sassc-rails (~> 2.1, >= 2.1.1)
591
+ sassc (2.4.0)
592
+ ffi (~> 1.9)
593
+ sassc-rails (2.1.2)
594
+ railties (>= 4.0.0)
595
+ sassc (>= 2.0)
596
+ sprockets (> 3.0)
597
+ sprockets-rails
598
+ tilt
599
+ scoped_search (4.1.9)
600
+ activerecord (>= 4.2.0)
601
+ secure_headers (6.3.1)
602
+ selenium-webdriver (3.142.7)
603
+ childprocess (>= 0.5, < 4.0)
604
+ rubyzip (>= 1.2.2)
605
+ sequel (5.39.0)
606
+ sexp_processor (4.15.1)
607
+ shoulda-context (1.2.2)
608
+ shoulda-matchers (4.3.0)
609
+ activesupport (>= 4.2.0)
610
+ show_me_the_cookies (5.0.1)
611
+ capybara (>= 2, < 4)
612
+ sidekiq (5.2.9)
613
+ connection_pool (~> 2.2, >= 2.2.2)
614
+ rack (~> 2.0)
615
+ rack-protection (>= 1.5.0)
616
+ redis (>= 3.3.5, < 4.2)
617
+ signet (0.14.0)
618
+ addressable (~> 2.3)
619
+ faraday (>= 0.17.3, < 2.0)
620
+ jwt (>= 1.5, < 3.0)
621
+ multi_json (~> 1.10)
622
+ simplecov (0.20.0)
623
+ docile (~> 1.1)
624
+ simplecov-html (~> 0.11)
625
+ simplecov_json_formatter (~> 0.1)
626
+ simplecov-html (0.12.3)
627
+ simplecov-rcov (0.2.3)
628
+ simplecov (>= 0.4.1)
629
+ simplecov_json_formatter (0.1.2)
630
+ sinatra (2.1.0)
631
+ mustermann (~> 1.0)
632
+ rack (~> 2.2)
633
+ rack-protection (= 2.1.0)
634
+ tilt (~> 2.0)
635
+ single_test (0.6.0)
636
+ rake
637
+ slop (3.6.0)
638
+ spring (2.1.1)
639
+ sprockets (3.7.2)
640
+ concurrent-ruby (~> 1.0)
641
+ rack (> 1, < 3)
642
+ sprockets-rails (3.2.2)
643
+ actionpack (>= 4.0)
644
+ activesupport (>= 4.0)
645
+ sprockets (>= 3.0.0)
646
+ sshkey (1.9.0)
647
+ statsd-instrument (2.9.2)
648
+ stomp (1.4.10)
649
+ text (1.3.1)
650
+ thor (1.0.1)
651
+ thread_safe (0.3.6)
652
+ tilt (2.0.10)
653
+ tzinfo (1.2.9)
654
+ thread_safe (~> 0.1)
655
+ uber (0.1.0)
656
+ uglifier (4.2.0)
657
+ execjs (>= 0.3.0, < 3)
658
+ unf (0.1.4)
659
+ unf_ext
660
+ unf_ext (0.0.7.7)
661
+ unicode-display_width (1.6.1)
662
+ uniform_notifier (1.13.0)
663
+ validates_lengths_from_database (0.8.0)
664
+ activerecord (>= 4)
665
+ vcr (3.0.3)
666
+ webmock (3.11.0)
667
+ addressable (>= 2.3.6)
668
+ crack (>= 0.3.2)
669
+ hashdiff (>= 0.4.0, < 2.0.0)
670
+ webpack-rails (0.9.11)
671
+ railties (>= 3.2.0)
672
+ websocket-driver (0.7.3)
673
+ websocket-extensions (>= 0.1.0)
674
+ websocket-extensions (0.1.5)
675
+ will_paginate (3.3.0)
676
+ wirb (2.2.2)
677
+ paint (>= 0.9, < 3.0)
678
+ x-editable-rails (1.5.5.1)
679
+ railties
680
+ xpath (3.2.0)
681
+ nokogiri (~> 1.8)
682
+ yard (0.9.26)
683
+ zeitwerk (2.4.2)
684
+
685
+ PLATFORMS
686
+ x86_64-linux
687
+
688
+ DEPENDENCIES
689
+ activerecord-nulldb-adapter
690
+ activerecord-session_store (>= 1.1.0, < 2)
691
+ ancestry (>= 3.0.7, < 4)
692
+ apipie-dsl (>= 2.2.2)
693
+ apipie-rails (>= 0.5.17, < 0.6.0)
694
+ as_deprecation_tracker (~> 1.4)
695
+ audited (>= 4.9.0, < 5)
696
+ awesome_print (~> 1.0)
697
+ bcrypt (~> 3.1)
698
+ benchmark-ips (>= 2.8.2)
699
+ bootsnap
700
+ bullet (>= 6.1.0)
701
+ capybara (~> 3.0, < 3.32.1)
702
+ ci_reporter_minitest
703
+ coffee-rails (~> 5.0.0)
704
+ daemons
705
+ database_cleaner (~> 1.3)
706
+ deacon (~> 1.0)
707
+ deep_cloneable (>= 3, < 4)
708
+ dynflow (>= 1.4.4, < 2.0.0)
709
+ execjs (>= 1.4.0, < 3.0)
710
+ facter
711
+ factory_bot_rails (~> 5.0)
712
+ fast_gettext (~> 1.4)
713
+ fog-aws (>= 3.6.2, < 4)
714
+ fog-core (= 2.1.0)
715
+ fog-google (~> 1.8.2)
716
+ fog-libvirt (>= 0.7.0)
717
+ fog-openstack (>= 1.0.8, < 2.0.0)
718
+ fog-ovirt (~> 1.2.4)
719
+ fog-vsphere (>= 3.3.1, < 4.0)
720
+ foreman
721
+ foreman_rh_cloud!
722
+ friendly_id (>= 5.3.0, < 5.4)
723
+ get_process_mem
724
+ gettext (>= 3.2.1, < 4.0.0)
725
+ gettext_i18n_rails (~> 1.8)
726
+ gettext_i18n_rails_js (~> 1.0)
727
+ gitlab-sidekiq-fetcher
728
+ graphiql-rails (~> 1.7)
729
+ graphql (~> 1.8.0)
730
+ graphql-batch
731
+ i18n (~> 1.1)
732
+ immigrant (~> 0.1)
733
+ jquery-ui-rails (~> 6.0)
734
+ jwt (~> 2.2.1)
735
+ katello!
736
+ launchy (~> 2.4)
737
+ ldap_fluff (>= 0.4.7, < 1.0)
738
+ logging (>= 1.8.0, < 3.0.0)
739
+ logging-journald (~> 2.0)
740
+ mail (~> 2.7)
741
+ maruku (~> 0.7)
742
+ minitest (~> 5.1, < 5.11)
743
+ minitest-reporters
744
+ minitest-retry (~> 0.0)
745
+ minitest-spec-rails (~> 6.0)
746
+ minitest-tags
747
+ mocha (~> 1.11)
748
+ net-ldap (>= 0.16.0)
749
+ net-ping
750
+ net-scp
751
+ net-ssh (= 4.2.0)
752
+ oauth (>= 0.5.4, < 1)
753
+ parallel_tests
754
+ patternfly-sass (~> 3.59.4)
755
+ pg (>= 0.18, < 2.0)
756
+ poltergeist (>= 1.18.0)
757
+ prometheus-client (~> 1.0)
758
+ pry
759
+ pry-byebug
760
+ pry-doc
761
+ pry-rails
762
+ pry-remote
763
+ pry-stack_explorer
764
+ puma (< 5.0)
765
+ rabl (~> 0.14.2)
766
+ rack-cors (~> 1.0.2)
767
+ rack-jsonp
768
+ rack-openid (~> 1.3)
769
+ rails (~> 6.0.3.1)
770
+ rails-controller-testing (~> 1.0)
771
+ rails-i18n (~> 6.0)
772
+ rainbow (>= 2.2.1)
773
+ rbvmomi (~> 2.0)
774
+ rdoc
775
+ record_tag_helper (~> 1.0)
776
+ redis (~> 4.0)
777
+ responders (~> 3.0)
778
+ rest-client (>= 2.0.0, < 3)
779
+ rfauxfactory (~> 0.1, >= 0.1.5)
780
+ roadie-rails (~> 2.0)
781
+ robottelo_reporter (~> 0.1)
782
+ rubocop (~> 0.80.0)
783
+ rubocop-checkstyle_formatter (~> 0.2)
784
+ rubocop-minitest (~> 0.7.0)
785
+ rubocop-performance (~> 1.5.2)
786
+ rubocop-rails (~> 2.4.2)
787
+ ruby-libvirt (~> 0.5)
788
+ safemode (>= 1.3.5, < 2)
789
+ sass-rails (>= 5.0, < 7.0)
790
+ scoped_search (>= 4.1.8, < 5)
791
+ secure_headers (~> 6.3)
792
+ selenium-webdriver
793
+ shoulda-context (~> 1.2)
794
+ shoulda-matchers (>= 4.0, < 4.4)
795
+ show_me_the_cookies (~> 5.0)
796
+ sidekiq (~> 5.0)
797
+ simplecov
798
+ simplecov-rcov
799
+ single_test (~> 0.6)
800
+ spring (>= 1.0, < 3)
801
+ sprockets (~> 3)
802
+ sprockets-rails (~> 3.0)
803
+ sshkey (~> 1.9)
804
+ statsd-instrument (< 3)
805
+ uglifier (>= 1.0.3)
806
+ validates_lengths_from_database (~> 0.5)
807
+ vcr (< 4.0.0)
808
+ webmock
809
+ webpack-rails (~> 0.9.8)
810
+ will_paginate (>= 3.1.7, < 4)
811
+ wirb (>= 1.0, < 3.0)
812
+ x-editable-rails (~> 1.5.5)
813
+
814
+ BUNDLED WITH
815
+ 2.2.3