katello 4.7.2 → 4.8.0.rc1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of katello might be problematic. Click here for more details.

Files changed (341) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/katello/api/registry/registry_proxies_controller.rb +6 -4
  3. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +15 -12
  4. data/app/controllers/katello/api/v2/capsule_content_controller.rb +0 -4
  5. data/app/controllers/katello/api/v2/content_export_incrementals_controller.rb +22 -81
  6. data/app/controllers/katello/api/v2/content_exports_controller.rb +11 -80
  7. data/app/controllers/katello/api/v2/content_imports_controller.rb +1 -0
  8. data/app/controllers/katello/api/v2/exports_controller.rb +130 -0
  9. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +7 -8
  10. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +8 -4
  11. data/app/controllers/katello/api/v2/organizations_controller.rb +3 -0
  12. data/app/controllers/katello/api/v2/package_groups_controller.rb +0 -52
  13. data/app/controllers/katello/concerns/api/v2/bulk_hosts_extensions.rb +4 -6
  14. data/app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb +1 -2
  15. data/app/controllers/katello/concerns/authorization/api/v2/content_views_controller.rb +4 -1
  16. data/app/controllers/katello/concerns/content_facet_hosts_controller_extensions.rb +24 -0
  17. data/app/controllers/katello/concerns/hosts_controller_extensions.rb +3 -3
  18. data/app/helpers/katello/hosts_and_hostgroups_helper.rb +55 -24
  19. data/app/helpers/katello/katello_urls_helper.rb +0 -15
  20. data/app/helpers/katello/sync_management_helper.rb +0 -4
  21. data/app/lib/actions/candlepin/environment/set_content.rb +7 -1
  22. data/app/lib/actions/candlepin/owner/destroy_imports.rb +1 -1
  23. data/app/lib/actions/katello/capsule_content/sync.rb +0 -4
  24. data/app/lib/actions/katello/capsule_content/sync_capsule.rb +1 -2
  25. data/app/lib/actions/katello/content_view/publish.rb +6 -2
  26. data/app/lib/actions/katello/content_view/remove.rb +8 -2
  27. data/app/lib/actions/katello/content_view_version/destroy.rb +1 -1
  28. data/app/lib/actions/katello/environment/destroy.rb +8 -2
  29. data/app/lib/actions/katello/host/reassign.rb +4 -2
  30. data/app/lib/actions/katello/orphan_cleanup/remove_orphans.rb +0 -1
  31. data/app/lib/actions/katello/product/destroy.rb +2 -1
  32. data/app/lib/actions/katello/repository/filtered_index_content.rb +2 -10
  33. data/app/lib/actions/katello/repository/import_upload.rb +0 -1
  34. data/app/lib/actions/katello/repository/sync.rb +0 -1
  35. data/app/lib/actions/katello/repository/update.rb +5 -3
  36. data/app/lib/actions/katello/repository/upload_files.rb +0 -1
  37. data/app/lib/actions/pulp3/abstract.rb +0 -6
  38. data/app/lib/actions/pulp3/content_view/delete_repository_references.rb +1 -2
  39. data/app/lib/actions/pulp3/content_view_version/create_syncable_export_history.rb +4 -0
  40. data/app/lib/actions/pulp3/orchestration/content_view_version/export.rb +1 -0
  41. data/app/lib/actions/pulp3/orchestration/content_view_version/export_repository.rb +7 -2
  42. data/app/lib/actions/pulp3/orchestration/content_view_version/syncable_export.rb +7 -2
  43. data/app/lib/actions/pulp3/repository/refresh_distribution.rb +1 -2
  44. data/app/lib/actions/pulp3/repository/save_distribution_references.rb +2 -2
  45. data/app/lib/katello/concerns/renderer_extensions.rb +1 -1
  46. data/app/lib/katello/event_daemon/runner.rb +12 -9
  47. data/app/lib/katello/resources/candlepin/consumer.rb +6 -6
  48. data/app/lib/katello/resources/candlepin/owner.rb +1 -1
  49. data/app/lib/katello/resources/candlepin/upstream_consumer.rb +3 -4
  50. data/app/lib/katello/resources/candlepin.rb +4 -4
  51. data/app/lib/katello/util/errata.rb +12 -10
  52. data/app/lib/katello/util/search.rb +0 -1
  53. data/app/lib/katello/validators/content_view_environment_org_validator.rb +5 -2
  54. data/app/lib/katello/validators/content_view_environment_validator.rb +1 -2
  55. data/app/lib/katello/validators/generated_content_view_validator.rb +16 -0
  56. data/app/mailers/katello/errata_mailer.rb +4 -2
  57. data/app/models/katello/alternate_content_source.rb +5 -1
  58. data/app/models/katello/concerns/content_facet_host_extensions.rb +25 -14
  59. data/app/models/katello/concerns/host_managed_extensions.rb +17 -8
  60. data/app/models/katello/concerns/redhat_extensions.rb +16 -6
  61. data/app/models/katello/concerns/smart_proxy_extensions.rb +0 -12
  62. data/app/models/katello/concerns/subscription_facet_host_extensions.rb +1 -0
  63. data/app/models/katello/content_view.rb +22 -5
  64. data/app/models/katello/content_view_environment.rb +11 -2
  65. data/app/models/katello/content_view_environment_content_facet.rb +9 -0
  66. data/app/models/katello/content_view_version.rb +10 -5
  67. data/app/models/katello/erratum.rb +6 -1
  68. data/app/models/katello/glue/candlepin/pool.rb +6 -0
  69. data/app/models/katello/glue/candlepin/product.rb +7 -1
  70. data/app/models/katello/glue/candlepin/subscription.rb +5 -0
  71. data/app/models/katello/glue/provider.rb +26 -26
  72. data/app/models/katello/host/content_facet.rb +106 -18
  73. data/app/models/katello/host/info_provider.rb +25 -21
  74. data/app/models/katello/host/subscription_facet.rb +18 -14
  75. data/app/models/katello/kt_environment.rb +12 -7
  76. data/app/models/katello/package_group.rb +0 -12
  77. data/app/models/katello/pool.rb +4 -1
  78. data/app/models/katello/product.rb +11 -1
  79. data/app/models/katello/repository.rb +11 -11
  80. data/app/models/katello/root_repository.rb +5 -4
  81. data/app/models/katello/task_status.rb +0 -18
  82. data/app/services/katello/candlepin/consumer.rb +2 -2
  83. data/app/services/katello/host/package_profile_uploader.rb +1 -1
  84. data/app/services/katello/product_content_finder.rb +11 -8
  85. data/app/services/katello/pulp3/content_view_version/export.rb +8 -65
  86. data/app/services/katello/pulp3/content_view_version/export_validation_error.rb +7 -0
  87. data/app/services/katello/pulp3/content_view_version/export_validator.rb +105 -0
  88. data/app/services/katello/pulp3/content_view_version/importable_products.rb +1 -1
  89. data/app/services/katello/pulp3/content_view_version/syncable_format_export.rb +7 -1
  90. data/app/services/katello/pulp3/erratum.rb +1 -0
  91. data/app/services/katello/pulp3/module_stream.rb +26 -11
  92. data/app/services/katello/pulp3/repository/yum.rb +2 -1
  93. data/app/services/katello/pulp3/smart_proxy_mirror_repository.rb +2 -1
  94. data/app/services/katello/registration_manager.rb +46 -26
  95. data/app/services/katello/repository_type.rb +3 -9
  96. data/app/services/katello/simple_package.rb +22 -0
  97. data/app/views/foreman/smart_proxies/_content_sync.html.erb +1 -0
  98. data/app/views/foreman/smart_proxies/_reclaim_space.html.erb +1 -0
  99. data/app/views/katello/api/v2/content_facet/base.json.rabl +23 -2
  100. data/app/views/katello/api/v2/content_facet/show.json.rabl +11 -8
  101. data/app/views/katello/api/v2/content_views/base.json.rabl +1 -1
  102. data/app/views/katello/api/v2/hosts/base.json.rabl +22 -2
  103. data/app/views/overrides/activation_keys/_host_environment_select.html.erb +2 -2
  104. data/config/initializers/monkeys.rb +0 -2
  105. data/config/routes/api/registry.rb +8 -7
  106. data/config/routes/api/v2.rb +0 -2
  107. data/config/routes.rb +3 -0
  108. data/db/migrate/20200429153103_installed_package_bad_nvrea.rb +1 -1
  109. data/db/migrate/20220228173251_remove_drpm_from_ignorable_content.rb +7 -3
  110. data/db/migrate/20220419193414_content_settings_to_dsl_category.rb +1 -1
  111. data/db/migrate/20220929204746_add_content_view_environment_content_facet.rb +52 -0
  112. data/db/migrate/20221123212341_remove_pulp_docker_registry_port_setting.rb +5 -0
  113. data/db/seeds.d/111-upgrade_tasks.rb +2 -1
  114. data/engines/bastion/app/assets/stylesheets/bastion/bastion.scss +4 -0
  115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-details.controller.js +2 -4
  116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +0 -1
  117. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +2 -4
  118. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +2 -1
  119. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +11 -3
  120. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-hosts-list.html +1 -1
  121. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +8 -4
  122. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de.po +5485 -0
  123. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/es.po +5397 -0
  124. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/fr.po +5658 -0
  125. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ja.po +5284 -0
  126. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ka.po +5231 -0
  127. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ko.po +5275 -0
  128. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt_BR.po +5389 -0
  129. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_CN.po +5212 -0
  130. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_TW.po +5145 -0
  131. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/translations.js +9 -0
  132. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/content-access-mode-banner.html +2 -2
  133. data/lib/katello/engine.rb +2 -1
  134. data/lib/katello/permission_creator.rb +2 -4
  135. data/lib/katello/permissions/registry_permissions.rb +5 -5
  136. data/lib/katello/plugin.rb +22 -14
  137. data/lib/katello/repository_types/README.md +136 -19
  138. data/lib/katello/repository_types/deb.rb +0 -1
  139. data/lib/katello/repository_types/docker.rb +0 -1
  140. data/lib/katello/repository_types/file.rb +0 -1
  141. data/lib/katello/repository_types/yum.rb +0 -4
  142. data/lib/katello/tasks/clean_candlepin_orphaned_products.rake +38 -0
  143. data/lib/katello/tasks/clean_orphaned_facets.rb +20 -0
  144. data/lib/katello/tasks/reimport.rake +1 -2
  145. data/lib/katello/tasks/repository.rake +1 -22
  146. data/lib/katello/tasks/reset.rake +1 -0
  147. data/lib/katello/tasks/upgrades/4.8/fix_incorrect_providers.rake +29 -0
  148. data/lib/katello/version.rb +1 -1
  149. data/lib/katello.rb +0 -5
  150. data/locale/bn/katello.po +69 -27
  151. data/locale/cs/katello.po +69 -27
  152. data/locale/de/katello.po +78 -36
  153. data/locale/en/katello.po +69 -27
  154. data/locale/es/katello.po +70 -28
  155. data/locale/fr/katello.po +73 -31
  156. data/locale/gu/katello.po +69 -27
  157. data/locale/hi/katello.po +69 -27
  158. data/locale/it/katello.po +69 -27
  159. data/locale/ja/katello.po +73 -31
  160. data/locale/ka/katello.po +73 -31
  161. data/locale/katello.pot +335 -262
  162. data/locale/kn/katello.po +69 -27
  163. data/locale/ko/katello.po +69 -27
  164. data/locale/mr/katello.po +69 -27
  165. data/locale/or/katello.po +69 -27
  166. data/locale/pa/katello.po +69 -27
  167. data/locale/pt/katello.po +69 -27
  168. data/locale/pt_BR/katello.po +70 -28
  169. data/locale/ru/katello.po +70 -28
  170. data/locale/ta/katello.po +69 -27
  171. data/locale/te/katello.po +69 -27
  172. data/locale/zh_CN/katello.po +73 -31
  173. data/locale/zh_TW/katello.po +70 -28
  174. data/webpack/components/Content/ContentPage.js +51 -35
  175. data/webpack/components/Content/__tests__/ContentPage.test.js +2 -4
  176. data/webpack/components/Content/__tests__/__snapshots__/ContentPage.test.js.snap +22 -3
  177. data/webpack/components/RoutedTabs/index.js +6 -11
  178. data/webpack/components/Table/EmptyStateMessage.js +14 -11
  179. data/webpack/components/Table/MainTable.js +36 -15
  180. data/webpack/components/Table/TableWrapper.js +25 -25
  181. data/webpack/components/Table/__test__/emptyStateMessage.test.js +51 -0
  182. data/webpack/components/extensions/HostDetails/Cards/ErrataOverviewCard.js +5 -4
  183. data/webpack/components/extensions/HostDetails/Cards/HostCollectionsCard/HostCollectionsModal.js +1 -1
  184. data/webpack/components/extensions/HostDetails/Cards/HostCollectionsCard/__tests__/hostCollectionsModal.test.js +1 -17
  185. data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/ErrataTab.js +18 -9
  186. data/webpack/components/extensions/HostDetails/Tabs/ModuleStreamsTab/ModuleStreamsTab.js +1 -2
  187. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackageInstallModal.js +1 -2
  188. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackagesTab.js +1 -2
  189. data/webpack/components/extensions/HostDetails/Tabs/RepositorySetsTab/RepositorySetsTab.js +47 -27
  190. data/webpack/components/extensions/HostDetails/Tabs/TracesTab/TracesTab.js +1 -2
  191. data/webpack/components/extensions/HostDetails/Tabs/__tests__/errataTab.test.js +2 -21
  192. data/webpack/components/extensions/HostDetails/Tabs/__tests__/moduleStreamsTab.test.js +1 -28
  193. data/webpack/components/extensions/HostDetails/Tabs/__tests__/packageInstallModal.test.js +1 -10
  194. data/webpack/components/extensions/HostDetails/Tabs/__tests__/packagesTab.test.js +2 -19
  195. data/webpack/components/extensions/HostDetails/Tabs/__tests__/repositorySetsTab.test.js +1 -17
  196. data/webpack/components/extensions/HostDetails/Tabs/__tests__/tracesTab.test.js +1 -15
  197. data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/ActivationKeys.test.js.snap +7 -0
  198. data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/Force.test.js.snap +2 -0
  199. data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/IgnoreSubmanErrors.test.js.snap +2 -0
  200. data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/LifeCycleEnvironment.test.js.snap +1 -0
  201. data/webpack/global_test_setup.js +1 -1
  202. data/webpack/scenes/AlternateContentSources/Create/ACSCreateWizard.js +12 -17
  203. data/webpack/scenes/AlternateContentSources/Create/Steps/ACSCreateFinish.js +17 -3
  204. data/webpack/scenes/AlternateContentSources/Create/Steps/ACSCredentials.js +6 -0
  205. data/webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js +1 -0
  206. data/webpack/scenes/AlternateContentSources/Create/Steps/AcsUrlPaths.js +3 -10
  207. data/webpack/scenes/AlternateContentSources/Create/Steps/NameACS.js +1 -0
  208. data/webpack/scenes/AlternateContentSources/Create/__tests__/acsCreate.test.js +3 -3
  209. data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditDetails.js +1 -0
  210. data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditURLPaths.js +12 -4
  211. data/webpack/scenes/AlternateContentSources/MainTable/ACSTable.js +7 -4
  212. data/webpack/scenes/AlternateContentSources/MainTable/__tests__/acsTable.test.js +4 -8
  213. data/webpack/scenes/AlternateContentSources/helpers.js +1 -1
  214. data/webpack/scenes/Content/Details/ContentRepositories.js +5 -4
  215. data/webpack/scenes/Content/Details/__tests__/contentDetail.test.js +1 -12
  216. data/webpack/scenes/Content/Table/ContentTable.js +2 -1
  217. data/webpack/scenes/Content/__tests__/contentTable.test.js +1 -14
  218. data/webpack/scenes/ContentViews/Delete/__tests__/contentViewDelete.test.js +1 -25
  219. data/webpack/scenes/ContentViews/Details/ComponentContentViews/ContentViewComponents.js +2 -1
  220. data/webpack/scenes/ContentViews/Details/ComponentContentViews/__tests__/contentViewComponents.test.js +44 -31
  221. data/webpack/scenes/ContentViews/Details/ContentViewDetails.js +2 -0
  222. data/webpack/scenes/ContentViews/Details/Filters/AffectedRepositories/AffectedRepositoryTable.js +6 -1
  223. data/webpack/scenes/ContentViews/Details/Filters/CVContainerImageFilterContent.js +2 -1
  224. data/webpack/scenes/ContentViews/Details/Filters/CVDebFilterContent.js +2 -1
  225. data/webpack/scenes/ContentViews/Details/Filters/CVErrataDateFilterContent.js +2 -2
  226. data/webpack/scenes/ContentViews/Details/Filters/CVErrataIDFilterContent.js +5 -3
  227. data/webpack/scenes/ContentViews/Details/Filters/CVModuleStreamFilterContent.js +3 -1
  228. data/webpack/scenes/ContentViews/Details/Filters/CVPackageGroupFilterContent.js +3 -1
  229. data/webpack/scenes/ContentViews/Details/Filters/CVRpmFilterContent.js +2 -1
  230. data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilterDetailsHeader.js +2 -0
  231. data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilters.js +2 -1
  232. data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/CVDebMatchContentModal.js +1 -1
  233. data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/CVRpmMatchContentModal.js +1 -1
  234. data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/__tests__/CVRpmMatchContentModal.test.js +35 -33
  235. data/webpack/scenes/ContentViews/Details/Filters/__tests__/CVContainerImageFilterContent.test.js +48 -45
  236. data/webpack/scenes/ContentViews/Details/Filters/__tests__/CVRpmFilterContent.test.js +58 -24
  237. data/webpack/scenes/ContentViews/Details/Filters/__tests__/ContentViewPackageGroupFilter.test.js +64 -0
  238. data/webpack/scenes/ContentViews/Details/Filters/__tests__/contentViewFilterDetails.test.js +36 -20
  239. data/webpack/scenes/ContentViews/Details/Filters/__tests__/contentViewFilters.test.js +40 -23
  240. data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvErrataIDFilter.test.js +0 -13
  241. data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvModuleStreamFilter.test.js +0 -13
  242. data/webpack/scenes/ContentViews/Details/Histories/ContentViewHistories.js +2 -1
  243. data/webpack/scenes/ContentViews/Details/Histories/__tests__/contentViewHistory.test.js +1 -10
  244. data/webpack/scenes/ContentViews/Details/Repositories/ContentViewRepositories.js +2 -1
  245. data/webpack/scenes/ContentViews/Details/Repositories/__tests__/contentViewAddRemove.test.js +1 -10
  246. data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareConfig.js +21 -9
  247. data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareTable.js +4 -0
  248. data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/CVVersionCompare.test.js +1 -32
  249. data/webpack/scenes/ContentViews/Details/Versions/ContentViewVersions.js +3 -1
  250. data/webpack/scenes/ContentViews/Details/Versions/Delete/__tests__/cvVersionRemove.test.js +1 -15
  251. data/webpack/scenes/ContentViews/Details/Versions/Delete/affectedActivationKeys.js +1 -1
  252. data/webpack/scenes/ContentViews/Details/Versions/Delete/affectedHosts.js +1 -2
  253. data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetailConfig.js +31 -9
  254. data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetailsTable.js +4 -0
  255. data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/__tests__/ContentViewVersionDetails.test.js +30 -14
  256. data/webpack/scenes/ContentViews/Table/ContentViewsTable.js +1 -1
  257. data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +55 -120
  258. data/webpack/scenes/ContentViews/components/WizardHeader.js +1 -1
  259. data/webpack/scenes/ContentViews/expansions/RelatedContentViewComponentsModal.js +1 -1
  260. data/webpack/scenes/ContentViews/expansions/__tests__/contentViewComponentsModal.test.js +8 -1
  261. data/webpack/scenes/ModuleStreams/ModuleStreamsPage.js +3 -9
  262. data/webpack/scenes/ModuleStreams/__tests__/__snapshots__/ModuleStreamPage.test.js.snap +7 -1
  263. data/webpack/scenes/RedHatRepositories/components/Search.js +22 -16
  264. data/webpack/scenes/RedHatRepositories/index.scss +20 -1
  265. data/webpack/scenes/SmartProxy/SmartProxyContentTable.js +12 -1
  266. data/webpack/scenes/Subscriptions/Manifest/CdnConfigurationTab/CdnTypeForm.js +1 -1
  267. data/webpack/scenes/Subscriptions/Manifest/CdnConfigurationTab/CustomCdnTypeForm.js +1 -1
  268. data/webpack/scenes/Subscriptions/SubscriptionsPage.js +21 -19
  269. data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsPage.test.js.snap +34 -1
  270. data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/SubscriptionsToolbar.js +20 -7
  271. data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/SubscriptionsToolbar.test.js +0 -1
  272. data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/__snapshots__/SubscriptionsToolbar.test.js.snap +65 -15
  273. metadata +47 -113
  274. data/app/lib/actions/katello/pulp_selector.rb +0 -24
  275. data/app/lib/actions/katello/repository/correct_checksum.rb +0 -24
  276. data/app/lib/actions/katello/repository/destroy_package_group.rb +0 -26
  277. data/app/lib/actions/katello/repository/upload_package_group.rb +0 -24
  278. data/app/lib/actions/pulp/abstract.rb +0 -37
  279. data/app/lib/actions/pulp/abstract_async_task.rb +0 -154
  280. data/app/lib/actions/pulp/abstract_async_task_group.rb +0 -94
  281. data/app/lib/actions/pulp/consumer/sync_capsule.rb +0 -45
  282. data/app/lib/actions/pulp/consumer/unassociate_units.rb +0 -20
  283. data/app/lib/actions/pulp/expect_one_task.rb +0 -11
  284. data/app/lib/actions/pulp/orchestration/orphan_cleanup/remove_orphans.rb +0 -16
  285. data/app/lib/actions/pulp/orchestration/repository/copy_all_units.rb +0 -19
  286. data/app/lib/actions/pulp/orchestration/repository/delete.rb +0 -15
  287. data/app/lib/actions/pulp/orchestration/repository/refresh.rb +0 -14
  288. data/app/lib/actions/pulp/orchestration/repository/refresh_if_needed.rb +0 -13
  289. data/app/lib/actions/pulp/orchestration/repository/refresh_repos.rb +0 -19
  290. data/app/lib/actions/pulp/orchestration/repository/remove_units.rb +0 -14
  291. data/app/lib/actions/pulp/orchestration/repository/smart_proxy_sync.rb +0 -34
  292. data/app/lib/actions/pulp/orchestration/repository/sync.rb +0 -18
  293. data/app/lib/actions/pulp/orchestration/repository/upload_content.rb +0 -37
  294. data/app/lib/actions/pulp/orphan_cleanup/remove_orphans.rb +0 -15
  295. data/app/lib/actions/pulp/orphan_cleanup/remove_unneeded_repos.rb +0 -16
  296. data/app/lib/actions/pulp/repository/abstract_copy_content.rb +0 -45
  297. data/app/lib/actions/pulp/repository/abstract_remove_content.rb +0 -32
  298. data/app/lib/actions/pulp/repository/clear.rb +0 -18
  299. data/app/lib/actions/pulp/repository/copy_all_units.rb +0 -30
  300. data/app/lib/actions/pulp/repository/copy_units.rb +0 -25
  301. data/app/lib/actions/pulp/repository/create.rb +0 -28
  302. data/app/lib/actions/pulp/repository/create_in_plan.rb +0 -15
  303. data/app/lib/actions/pulp/repository/create_upload_request.rb +0 -20
  304. data/app/lib/actions/pulp/repository/delete_upload_request.rb +0 -19
  305. data/app/lib/actions/pulp/repository/destroy.rb +0 -28
  306. data/app/lib/actions/pulp/repository/distributor_publish.rb +0 -25
  307. data/app/lib/actions/pulp/repository/download.rb +0 -16
  308. data/app/lib/actions/pulp/repository/import_upload.rb +0 -19
  309. data/app/lib/actions/pulp/repository/presenters/abstract_sync_presenter.rb +0 -47
  310. data/app/lib/actions/pulp/repository/presenters/deb_presenter.rb +0 -95
  311. data/app/lib/actions/pulp/repository/presenters/docker_presenter.rb +0 -103
  312. data/app/lib/actions/pulp/repository/presenters/file_unit_presenter.rb +0 -42
  313. data/app/lib/actions/pulp/repository/presenters/yum_presenter.rb +0 -131
  314. data/app/lib/actions/pulp/repository/refresh.rb +0 -21
  315. data/app/lib/actions/pulp/repository/regenerate_applicability.rb +0 -21
  316. data/app/lib/actions/pulp/repository/remove_distribution.rb +0 -11
  317. data/app/lib/actions/pulp/repository/remove_units.rb +0 -44
  318. data/app/lib/actions/pulp/repository/sync.rb +0 -99
  319. data/app/lib/actions/pulp/repository/upload_file.rb +0 -28
  320. data/app/lib/actions/pulp/repository_group/create.rb +0 -31
  321. data/app/lib/actions/pulp/repository_group/delete.rb +0 -17
  322. data/app/lib/actions/pulp/repository_group/export.rb +0 -51
  323. data/app/lib/katello/util/package_clause_generator.rb +0 -77
  324. data/app/models/katello/glue/pulp/pulp_errors.rb +0 -9
  325. data/app/models/katello/glue/pulp/repo.rb +0 -353
  326. data/app/models/katello/pulp_sync_status.rb +0 -165
  327. data/app/models/katello/pulp_task_status.rb +0 -63
  328. data/app/services/katello/pulp/content.rb +0 -24
  329. data/app/services/katello/pulp/importer_comparison.rb +0 -28
  330. data/app/services/katello/pulp/repository/deb.rb +0 -61
  331. data/app/services/katello/pulp/repository/docker.rb +0 -82
  332. data/app/services/katello/pulp/repository/file.rb +0 -52
  333. data/app/services/katello/pulp/repository/yum.rb +0 -205
  334. data/app/services/katello/pulp/repository.rb +0 -327
  335. data/app/services/katello/pulp/server.rb +0 -35
  336. data/app/services/katello/pulp/simple_package.rb +0 -24
  337. data/app/services/katello/pulp/smart_proxy_repository.rb +0 -52
  338. data/lib/monkeys/fix_deb_optimized_sync.rb +0 -35
  339. data/lib/monkeys/fix_pulp_container_path.rb +0 -35
  340. data/locale/zanata.xml +0 -30
  341. data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/__tests__/CVRpmMatchContentSearch.fixtures.json +0 -33
@@ -2,9 +2,9 @@
2
2
  import React, { Component } from 'react';
3
3
  import { DropdownButton, MenuItem } from 'patternfly-react';
4
4
  import PropTypes from 'prop-types';
5
+ import SearchBar from 'foremanReact/components/SearchBar';
5
6
  import { translate as __ } from 'foremanReact/common/I18n';
6
7
  import '../index.scss';
7
- import Search from '../../../components/Search/index';
8
8
  import { orgId } from '../../../services/api';
9
9
 
10
10
  class RepositorySearch extends Component {
@@ -29,7 +29,6 @@ class RepositorySearch extends Component {
29
29
  ];
30
30
  this.state = { searchList: this.dropDownItems[0] };
31
31
  this.onSearch = this.onSearch.bind(this);
32
- this.getAutoCompleteParams = this.getAutoCompleteParams.bind(this);
33
32
  }
34
33
 
35
34
  onSearch(search) {
@@ -41,23 +40,24 @@ class RepositorySearch extends Component {
41
40
  this.props.onSelectSearchList(searchList.key);
42
41
  }
43
42
 
44
- getAutoCompleteParams(search) {
45
- const params = {
46
- organization_id: orgId(),
47
- search,
48
- };
43
+ getAutoCompleteEndpoint() {
49
44
  let endpoint = '';
50
45
  if (this.state.searchList.key === 'enabled') {
51
- params.enabled = true;
52
- endpoint = '/repositories/auto_complete_search';
46
+ endpoint = '/katello/api/v2/repositories/auto_complete_search';
53
47
  } else if (this.state.searchList.key === 'available') {
54
- endpoint = '/repository_sets/auto_complete_search';
48
+ endpoint = '/katello/api/v2/repository_sets/auto_complete_search';
49
+ }
50
+
51
+ return endpoint;
52
+ }
53
+
54
+ autocompleteQueryParams() {
55
+ const params = { organization_id: orgId() };
56
+ if (this.state.searchList.key === 'enabled') {
57
+ params.enabled = true;
55
58
  }
56
59
 
57
- return {
58
- endpoint,
59
- params,
60
- };
60
+ return params;
61
61
  }
62
62
 
63
63
  render() {
@@ -77,9 +77,15 @@ class RepositorySearch extends Component {
77
77
  </MenuItem>
78
78
  ))}
79
79
  </DropdownButton>
80
- <Search
80
+ <SearchBar
81
+ data={{
82
+ autocomplete: {
83
+ url: this.getAutoCompleteEndpoint(),
84
+ apiParams: this.autocompleteQueryParams(),
85
+ },
86
+ bookmarks: {},
87
+ }}
81
88
  onSearch={this.onSearch}
82
- getAutoCompleteParams={this.getAutoCompleteParams}
83
89
  />
84
90
  </div>
85
91
  );
@@ -21,16 +21,35 @@
21
21
  }
22
22
  .search-bar-row {
23
23
  min-height: 26px;
24
- margin-bottom: 10px;
24
+ margin-bottom: 20px;
25
25
 
26
26
  .form-group {
27
27
  box-sizing: border-box;
28
+ width: 50%;
29
+
30
+ div:first-child {
31
+ display: flex;
32
+ justify-content: space-between;
33
+ .foreman-search-bar {
34
+ flex-grow: 1;
35
+ margin-left: 0.7rem;
36
+ .pf-c-search-input {
37
+ width: 100%;
38
+ }
39
+ }
40
+ }
28
41
 
29
42
  &:first-child {
30
43
  padding-left: 0;
31
44
  }
32
45
  }
46
+
47
+ .dropdown.btn-group {
48
+ margin-right: 0.6rem;
49
+ }
50
+
33
51
  &.search-bar-selects-row {
52
+ width: 50%;
34
53
  .form-group {
35
54
  border: none;
36
55
 
@@ -138,7 +138,18 @@ const SmartProxyContentTable = ({ smartProxyId }) => {
138
138
 
139
139
 
140
140
  return (
141
- <MainTable onCollapse={onCollapse(rows, setRows)} status={status} cells={columnHeaders} rows={rows} error={error} emptyContentTitle="No content synced" emptyContentBody="No content synced to smart proxy" emptySearchTitle="Empty" emptySearchBody="Empty" />
141
+ <MainTable
142
+ onCollapse={onCollapse(rows, setRows)}
143
+ ouiaId="smart-proxy-content-table"
144
+ status={status}
145
+ cells={columnHeaders}
146
+ rows={rows}
147
+ error={error}
148
+ emptyContentTitle="No content synced"
149
+ emptyContentBody="No content synced to smart proxy"
150
+ emptySearchTitle="Empty"
151
+ emptySearchBody="Empty"
152
+ />
142
153
  );
143
154
  };
144
155
 
@@ -34,7 +34,7 @@ const CdnTypeForm = ({ typeChangeInProgress, onUpdate }) => {
34
34
  return (
35
35
  <Form isHorizontal>
36
36
  <div id="update-hint-cdn" className="margin-top-16">
37
- <Text>
37
+ <Text ouiaId="update-hint-cdn-text">
38
38
  <FormattedMessage
39
39
  id="cdn-configuration-type"
40
40
  defaultMessage={__('Red Hat content will be consumed from the {type}.')}
@@ -62,7 +62,7 @@ const CustomCdnTypeForm = ({
62
62
  return (
63
63
  <Form isHorizontal>
64
64
  <div id="update-hint-cdn" className="margin-top-16">
65
- <Text>
65
+ <Text ouiaId="cdn-configuration-type-text">
66
66
  <FormattedMessage
67
67
  id="cdn-configuration-type"
68
68
  defaultMessage={__('Red Hat content will be consumed from {type}.')}
@@ -162,14 +162,6 @@ class SubscriptionsPage extends Component {
162
162
  this.props.loadSubscriptions({ search });
163
163
  };
164
164
 
165
- const getAutoCompleteParams = search => ({
166
- endpoint: '/subscriptions/auto_complete_search',
167
- params: {
168
- organization_id: currentOrg,
169
- search,
170
- },
171
- });
172
-
173
165
  const onDeleteSubscriptions = (selectedRows) => {
174
166
  this.props.deleteSubscriptions(selectedRows);
175
167
  this.handleSelectedRowsChange([]);
@@ -209,14 +201,23 @@ class SubscriptionsPage extends Component {
209
201
  loadTableColumns({ columns: getEnabledColumns(columns) });
210
202
  };
211
203
  const columns = subscriptions.selectedTableColumns;
212
- const emptyStateData = {
213
- header: __('There are no Subscriptions to display'),
214
- description: __('Import a Manifest to manage your Entitlements.'),
215
- action: {
216
- onClick: () => openManageManifestModal(),
217
- title: __('Import a Manifest'),
218
- },
219
- };
204
+ const emptyStateData = isManifestImported
205
+ ? {
206
+ header: __('There are no Subscriptions to display'),
207
+ description: __('Add Subscriptions using the Add Subscriptions button.'),
208
+ action: {
209
+ title: __('Add subscriptions'),
210
+ url: 'subscriptions/add',
211
+ },
212
+ }
213
+ : {
214
+ header: __('There are no Subscriptions to display'),
215
+ description: __('Import a Manifest to manage your Entitlements.'),
216
+ action: {
217
+ onClick: () => openManageManifestModal(),
218
+ title: __('Import a Manifest'),
219
+ },
220
+ };
220
221
 
221
222
  const SCAAlert = (
222
223
  <Alert type={simpleContentAccess ? 'info' : 'warning'}>
@@ -230,7 +231,7 @@ class SubscriptionsPage extends Component {
230
231
  defaultMessage={simpleContentAccess ? __(`This organization has Simple Content Access enabled.
231
232
  Hosts are not required to have subscriptions attached to access repositories.
232
233
  {br}
233
- Learn more about your overall subscription usage with the {subscriptionsService}.`) : __('This organization is not using {scaLink}. Legacy subscription management is deprecated and will be removed in a future version.')}
234
+ Learn more about your overall subscription usage with the {subscriptionsService}.`) : __('This organization is not using {scaLink}. Entitlement-based subscription management is deprecated and will be removed in a future version.')}
234
235
  />
235
236
  </Alert>
236
237
  );
@@ -248,7 +249,7 @@ class SubscriptionsPage extends Component {
248
249
  disableDeleteButton={deleteButtonDisabled}
249
250
  disableDeleteReason={this.getDisabledReason(true)}
250
251
  disableAddButton={disableManifestActions}
251
- getAutoCompleteParams={getAutoCompleteParams}
252
+ autocompleteQueryParams={{ organization_id: currentOrg }}
252
253
  updateSearchQuery={updateSearchQuery}
253
254
  onDeleteButtonClick={openDeleteModal}
254
255
  onSearch={onSearch}
@@ -272,7 +273,7 @@ class SubscriptionsPage extends Component {
272
273
  />
273
274
 
274
275
  <div id="subscriptions-table" className="modal-container">
275
- {isManifestImported && SCAAlert}
276
+ {!this.props.organization?.loading && SCAAlert}
276
277
  <SubscriptionsTable
277
278
  canManageSubscriptionAllocations={canManageSubscriptionAllocations}
278
279
  loadSubscriptions={this.props.loadSubscriptions}
@@ -330,6 +331,7 @@ SubscriptionsPage.propTypes = {
330
331
  }),
331
332
  organization: PropTypes.shape({
332
333
  id: PropTypes.number,
334
+ loading: PropTypes.bool,
333
335
  owner_details: PropTypes.shape({
334
336
  upstreamConsumer: PropTypes.shape({
335
337
  name: PropTypes.string,
@@ -37,13 +37,17 @@ exports[`subscriptions page should render 1`] = `
37
37
  Subscriptions
38
38
  </h1>
39
39
  <SubscriptionsToolbar
40
+ autocompleteQueryParams={
41
+ Object {
42
+ "organization_id": 1,
43
+ }
44
+ }
40
45
  canManageSubscriptionAllocations={false}
41
46
  disableAddButton={true}
42
47
  disableDeleteButton={true}
43
48
  disableDeleteReason="This is disabled because no connection could be made to the upstream Manifest."
44
49
  disableManifestActions={true}
45
50
  disableManifestReason="This is disabled because no connection could be made to the upstream Manifest."
46
- getAutoCompleteParams={[Function]}
47
51
  isManifestImported={false}
48
52
  onDeleteButtonClick={[Function]}
49
53
  onExportCsvButtonClick={[Function]}
@@ -67,6 +71,35 @@ exports[`subscriptions page should render 1`] = `
67
71
  className="modal-container"
68
72
  id="subscriptions-table"
69
73
  >
74
+ <Alert
75
+ className=""
76
+ onDismiss={null}
77
+ type="warning"
78
+ >
79
+ <FormattedMessage
80
+ defaultMessage="This organization is not using {scaLink}. Entitlement-based subscription management is deprecated and will be removed in a future version."
81
+ id="sca-alert"
82
+ values={
83
+ Object {
84
+ "br": <br />,
85
+ "scaLink": <a
86
+ href="https://access.redhat.com/articles/simple-content-access"
87
+ rel="noreferrer"
88
+ target="_blank"
89
+ >
90
+ Simple Content Access
91
+ </a>,
92
+ "subscriptionsService": <a
93
+ href="https://access.redhat.com/documentation/en-us/subscription_central/2021/html-single/getting_started_with_the_subscriptions_service/index"
94
+ rel="noreferrer"
95
+ target="_blank"
96
+ >
97
+ Subscriptions service
98
+ </a>,
99
+ }
100
+ }
101
+ />
102
+ </Alert>
70
103
  <SubscriptionsTable
71
104
  canManageSubscriptionAllocations={false}
72
105
  emptyState={
@@ -3,10 +3,10 @@ import PropTypes from 'prop-types';
3
3
  import { Row, Col, Form, FormGroup, Button } from 'patternfly-react';
4
4
  import { LinkContainer } from 'react-router-bootstrap';
5
5
  import { noop } from 'foremanReact/common/helpers';
6
+ import SearchBar from 'foremanReact/components/SearchBar';
6
7
  import { translate as __ } from 'foremanReact/common/I18n';
7
8
  import { SUBSCRIPTIONS_SERVICE_URL } from '../../SubscriptionConstants';
8
9
 
9
- import Search from '../../../../components/Search/index';
10
10
  import TooltipButton from '../../../../components/TooltipButton';
11
11
  import OptionTooltip from '../../../../components/OptionTooltip';
12
12
 
@@ -17,7 +17,7 @@ const SubscriptionsToolbar = ({
17
17
  disableDeleteButton,
18
18
  disableDeleteReason,
19
19
  disableAddButton,
20
- getAutoCompleteParams,
20
+ autocompleteQueryParams,
21
21
  updateSearchQuery,
22
22
  onDeleteButtonClick,
23
23
  onSearch,
@@ -32,10 +32,16 @@ const SubscriptionsToolbar = ({
32
32
  <Col sm={12}>
33
33
  <Form className="toolbar-pf-actions">
34
34
  <FormGroup className="toolbar-pf-filter">
35
- <Search
35
+ <SearchBar
36
+ data={{
37
+ autocomplete: {
38
+ url: '/katello/api/v2/subscriptions/auto_complete_search',
39
+ apiParams: { ...autocompleteQueryParams },
40
+ },
41
+ bookmarks: {},
42
+ }}
36
43
  onSearch={onSearch}
37
- getAutoCompleteParams={getAutoCompleteParams}
38
- updateSearchQuery={updateSearchQuery}
44
+ onSearchChange={updateSearchQuery}
39
45
  />
40
46
  </FormGroup>
41
47
  <div className="option-tooltip-container">
@@ -99,7 +105,6 @@ const SubscriptionsToolbar = ({
99
105
  );
100
106
 
101
107
  SubscriptionsToolbar.propTypes = {
102
- ...Search.propTypes,
103
108
  tableColumns: OptionTooltip.propTypes.options,
104
109
  canManageSubscriptionAllocations: PropTypes.bool,
105
110
  disableManifestActions: PropTypes.bool,
@@ -107,26 +112,34 @@ SubscriptionsToolbar.propTypes = {
107
112
  disableDeleteButton: PropTypes.bool,
108
113
  disableDeleteReason: PropTypes.string,
109
114
  disableAddButton: PropTypes.bool,
115
+ autocompleteQueryParams: PropTypes.shape({}),
116
+ updateSearchQuery: PropTypes.func,
117
+ onSearch: PropTypes.func,
110
118
  onDeleteButtonClick: PropTypes.func,
111
119
  onManageManifestButtonClick: PropTypes.func,
112
120
  onExportCsvButtonClick: PropTypes.func,
113
121
  toolTipOnChange: PropTypes.func,
114
122
  toolTipOnclose: PropTypes.func,
123
+ isManifestImported: PropTypes.bool,
115
124
  };
116
125
 
117
126
  SubscriptionsToolbar.defaultProps = {
118
- ...Search.defaultProps,
119
127
  tableColumns: [],
128
+ canManageSubscriptionAllocations: false,
120
129
  disableManifestActions: false,
121
130
  disableManifestReason: '',
122
131
  disableDeleteButton: false,
123
132
  disableDeleteReason: '',
124
133
  disableAddButton: false,
134
+ autocompleteQueryParams: undefined,
135
+ updateSearchQuery: noop,
136
+ onSearch: noop,
125
137
  onDeleteButtonClick: noop,
126
138
  onManageManifestButtonClick: noop,
127
139
  onExportCsvButtonClick: noop,
128
140
  toolTipOnChange: noop,
129
141
  toolTipOnclose: noop,
142
+ isManifestImported: false,
130
143
  };
131
144
 
132
145
  export default SubscriptionsToolbar;
@@ -3,7 +3,6 @@ import SubscriptionsToolbar from './SubscriptionsToolbar';
3
3
 
4
4
  const createRequiredProps = () => ({
5
5
  onSearch: jest.fn(),
6
- getAutoCompleteParams: jest.fn(),
7
6
  updateSearchQuery: jest.fn(),
8
7
  });
9
8
  const fixtures = {
@@ -22,10 +22,20 @@ exports[`SubscriptionsToolbar renders SubscriptionsToolbar 1`] = `
22
22
  bsClass="form-group"
23
23
  className="toolbar-pf-filter"
24
24
  >
25
- <Connect(Search)
26
- getAutoCompleteParams={[MockFunction]}
25
+ <SearchBar
26
+ data={
27
+ Object {
28
+ "autocomplete": Object {
29
+ "apiParams": Object {},
30
+ "url": "/katello/api/v2/subscriptions/auto_complete_search",
31
+ },
32
+ "bookmarks": Object {},
33
+ }
34
+ }
35
+ initialQuery=""
36
+ name={null}
27
37
  onSearch={[MockFunction]}
28
- updateSearchQuery={[MockFunction]}
38
+ onSearchChange={[MockFunction]}
29
39
  />
30
40
  </FormGroup>
31
41
  <div
@@ -95,10 +105,20 @@ exports[`SubscriptionsToolbar renders SubscriptionsToolbar with disabled add but
95
105
  bsClass="form-group"
96
106
  className="toolbar-pf-filter"
97
107
  >
98
- <Connect(Search)
99
- getAutoCompleteParams={[MockFunction]}
108
+ <SearchBar
109
+ data={
110
+ Object {
111
+ "autocomplete": Object {
112
+ "apiParams": Object {},
113
+ "url": "/katello/api/v2/subscriptions/auto_complete_search",
114
+ },
115
+ "bookmarks": Object {},
116
+ }
117
+ }
118
+ initialQuery=""
119
+ name={null}
100
120
  onSearch={[MockFunction]}
101
- updateSearchQuery={[MockFunction]}
121
+ onSearchChange={[MockFunction]}
102
122
  />
103
123
  </FormGroup>
104
124
  <div
@@ -168,10 +188,20 @@ exports[`SubscriptionsToolbar renders SubscriptionsToolbar with disabled delete
168
188
  bsClass="form-group"
169
189
  className="toolbar-pf-filter"
170
190
  >
171
- <Connect(Search)
172
- getAutoCompleteParams={[MockFunction]}
191
+ <SearchBar
192
+ data={
193
+ Object {
194
+ "autocomplete": Object {
195
+ "apiParams": Object {},
196
+ "url": "/katello/api/v2/subscriptions/auto_complete_search",
197
+ },
198
+ "bookmarks": Object {},
199
+ }
200
+ }
201
+ initialQuery=""
202
+ name={null}
173
203
  onSearch={[MockFunction]}
174
- updateSearchQuery={[MockFunction]}
204
+ onSearchChange={[MockFunction]}
175
205
  />
176
206
  </FormGroup>
177
207
  <div
@@ -241,10 +271,20 @@ exports[`SubscriptionsToolbar renders SubscriptionsToolbar with disabled manifes
241
271
  bsClass="form-group"
242
272
  className="toolbar-pf-filter"
243
273
  >
244
- <Connect(Search)
245
- getAutoCompleteParams={[MockFunction]}
274
+ <SearchBar
275
+ data={
276
+ Object {
277
+ "autocomplete": Object {
278
+ "apiParams": Object {},
279
+ "url": "/katello/api/v2/subscriptions/auto_complete_search",
280
+ },
281
+ "bookmarks": Object {},
282
+ }
283
+ }
284
+ initialQuery=""
285
+ name={null}
246
286
  onSearch={[MockFunction]}
247
- updateSearchQuery={[MockFunction]}
287
+ onSearchChange={[MockFunction]}
248
288
  />
249
289
  </FormGroup>
250
290
  <div
@@ -314,10 +354,20 @@ exports[`SubscriptionsToolbar renders SubscriptionsToolbar with table columns 1`
314
354
  bsClass="form-group"
315
355
  className="toolbar-pf-filter"
316
356
  >
317
- <Connect(Search)
318
- getAutoCompleteParams={[MockFunction]}
357
+ <SearchBar
358
+ data={
359
+ Object {
360
+ "autocomplete": Object {
361
+ "apiParams": Object {},
362
+ "url": "/katello/api/v2/subscriptions/auto_complete_search",
363
+ },
364
+ "bookmarks": Object {},
365
+ }
366
+ }
367
+ initialQuery=""
368
+ name={null}
319
369
  onSearch={[MockFunction]}
320
- updateSearchQuery={[MockFunction]}
370
+ onSearchChange={[MockFunction]}
321
371
  />
322
372
  </FormGroup>
323
373
  <div