katello 4.9.2 → 4.10.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 (276) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -7
  3. data/app/assets/javascripts/katello/locale/bn/katello.js +8967 -1
  4. data/app/assets/javascripts/katello/locale/bn_IN/katello.js +8967 -0
  5. data/app/assets/javascripts/katello/locale/ca/katello.js +8967 -0
  6. data/app/assets/javascripts/katello/locale/cs/katello.js +8967 -1
  7. data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +8969 -0
  8. data/app/assets/javascripts/katello/locale/de/katello.js +8991 -1
  9. data/app/assets/javascripts/katello/locale/de_AT/katello.js +8966 -0
  10. data/app/assets/javascripts/katello/locale/de_DE/katello.js +8967 -0
  11. data/app/assets/javascripts/katello/locale/el/katello.js +8967 -0
  12. data/app/assets/javascripts/katello/locale/en/katello.js +8967 -1
  13. data/app/assets/javascripts/katello/locale/en_GB/katello.js +8967 -0
  14. data/app/assets/javascripts/katello/locale/en_US/katello.js +8966 -0
  15. data/app/assets/javascripts/katello/locale/es/katello.js +8984 -1
  16. data/app/assets/javascripts/katello/locale/et_EE/katello.js +8966 -0
  17. data/app/assets/javascripts/katello/locale/fr/katello.js +9008 -1
  18. data/app/assets/javascripts/katello/locale/gl/katello.js +8967 -0
  19. data/app/assets/javascripts/katello/locale/gu/katello.js +8967 -1
  20. data/app/assets/javascripts/katello/locale/he_IL/katello.js +8967 -0
  21. data/app/assets/javascripts/katello/locale/hi/katello.js +8967 -1
  22. data/app/assets/javascripts/katello/locale/id/katello.js +8966 -0
  23. data/app/assets/javascripts/katello/locale/it/katello.js +8974 -1
  24. data/app/assets/javascripts/katello/locale/ja/katello.js +9004 -1
  25. data/app/assets/javascripts/katello/locale/ka/katello.js +8976 -1
  26. data/app/assets/javascripts/katello/locale/kn/katello.js +8967 -1
  27. data/app/assets/javascripts/katello/locale/ko/katello.js +8972 -1
  28. data/app/assets/javascripts/katello/locale/locale/katello.js +3070 -1
  29. data/app/assets/javascripts/katello/locale/ml_IN/katello.js +8966 -0
  30. data/app/assets/javascripts/katello/locale/mr/katello.js +8967 -1
  31. data/app/assets/javascripts/katello/locale/nl_NL/katello.js +8967 -0
  32. data/app/assets/javascripts/katello/locale/or/katello.js +8967 -1
  33. data/app/assets/javascripts/katello/locale/pa/katello.js +8967 -1
  34. data/app/assets/javascripts/katello/locale/pl/katello.js +8967 -0
  35. data/app/assets/javascripts/katello/locale/pl_PL/katello.js +8966 -0
  36. data/app/assets/javascripts/katello/locale/pt/katello.js +8967 -1
  37. data/app/assets/javascripts/katello/locale/pt_BR/katello.js +8984 -1
  38. data/app/assets/javascripts/katello/locale/ro/katello.js +8966 -0
  39. data/app/assets/javascripts/katello/locale/ro_RO/katello.js +8966 -0
  40. data/app/assets/javascripts/katello/locale/ru/katello.js +8973 -1
  41. data/app/assets/javascripts/katello/locale/sl/katello.js +8967 -0
  42. data/app/assets/javascripts/katello/locale/sv_SE/katello.js +8967 -0
  43. data/app/assets/javascripts/katello/locale/ta/katello.js +8967 -1
  44. data/app/assets/javascripts/katello/locale/ta_IN/katello.js +8967 -0
  45. data/app/assets/javascripts/katello/locale/te/katello.js +8967 -1
  46. data/app/assets/javascripts/katello/locale/tr/katello.js +8967 -0
  47. data/app/assets/javascripts/katello/locale/vi/katello.js +8966 -0
  48. data/app/assets/javascripts/katello/locale/vi_VN/katello.js +8966 -0
  49. data/app/assets/javascripts/katello/locale/zh/katello.js +8966 -0
  50. data/app/assets/javascripts/katello/locale/zh_CN/katello.js +9004 -1
  51. data/app/assets/javascripts/katello/locale/zh_TW/katello.js +8972 -1
  52. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +1 -1
  53. data/app/controllers/katello/api/v2/alternate_content_sources_bulk_actions_controller.rb +22 -1
  54. data/app/controllers/katello/api/v2/api_controller.rb +0 -15
  55. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +13 -4
  56. data/app/controllers/katello/api/v2/host_errata_controller.rb +0 -12
  57. data/app/controllers/katello/api/v2/host_packages_controller.rb +0 -55
  58. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +0 -77
  59. data/app/controllers/katello/api/v2/organizations_controller.rb +2 -1
  60. data/app/controllers/katello/api/v2/repositories_controller.rb +6 -10
  61. data/app/controllers/katello/api/v2/sync_controller.rb +0 -1
  62. data/app/controllers/katello/concerns/api/api_controller.rb +0 -10
  63. data/app/controllers/katello/concerns/hosts_controller_extensions.rb +1 -1
  64. data/app/lib/actions/katello/alternate_content_source/update.rb +1 -1
  65. data/app/lib/actions/katello/content_view/capsule_sync.rb +1 -1
  66. data/app/lib/actions/katello/content_view/incremental_updates.rb +3 -9
  67. data/app/lib/actions/katello/content_view_version/republish_repositories.rb +8 -2
  68. data/app/lib/actions/katello/repository/capsule_sync.rb +1 -1
  69. data/app/lib/actions/katello/repository/update_metadata_sync.rb +1 -1
  70. data/app/lib/katello/concerns/base_template_scope_extensions.rb +4 -9
  71. data/app/lib/katello/resources/cdn.rb +4 -0
  72. data/app/lib/katello/validators/alternate_content_source_products_validator.rb +1 -1
  73. data/app/models/katello/cdn_configuration.rb +4 -0
  74. data/app/models/katello/concerns/host_managed_extensions.rb +2 -1
  75. data/app/models/katello/content_view.rb +5 -1
  76. data/app/models/katello/content_view_component.rb +1 -1
  77. data/app/models/katello/content_view_version.rb +4 -0
  78. data/app/models/katello/host/content_facet.rb +4 -5
  79. data/app/models/katello/ping.rb +0 -19
  80. data/app/models/katello/repository.rb +5 -1
  81. data/app/models/katello/root_repository.rb +2 -8
  82. data/app/services/katello/applicability/applicable_content_helper.rb +2 -2
  83. data/app/services/katello/registration_manager.rb +2 -12
  84. data/app/views/foreman/job_templates/configure_host_for_new_content_source.erb +25 -0
  85. data/app/views/katello/api/v2/capsule_content/sync_status.json.rabl +1 -1
  86. data/app/views/katello/api/v2/content_facet/show.json.rabl +0 -12
  87. data/app/views/katello/api/v2/content_view_components/show.json.rabl +4 -1
  88. data/app/views/katello/api/v2/content_views/base.json.rabl +6 -2
  89. data/app/views/katello/api/v2/repositories/show.json.rabl +0 -1
  90. data/config/initializers/monkeys.rb +1 -0
  91. data/config/katello.yaml.example +0 -4
  92. data/config/routes/api/v2.rb +3 -0
  93. data/config/routes/overrides.rb +0 -11
  94. data/db/migrate/20230609155411_add_custom_cdn_auth_enabled_to_katello_cdn_configurations.rb +5 -0
  95. data/db/migrate/20230710190626_remove_relative_path_limit.rb +5 -0
  96. data/db/migrate/20230717150442_change_change_content_source_job_template_name.rb +20 -0
  97. data/db/migrate/20230828143236_remove_katello_agent_dispatch_history.rb +15 -0
  98. data/db/seeds.d/111-upgrade_tasks.rb +1 -2
  99. data/engines/bastion/app/views/bastion/layouts/assets.html.erb +1 -1
  100. data/engines/bastion_katello/README.md +2 -1
  101. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.controller.js +4 -2
  102. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-associations-content-hosts.html +2 -2
  103. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys.html +8 -3
  104. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +3 -44
  105. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-module-streams-modal.controller.js +0 -1
  106. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-packages-modal.controller.js +1 -65
  107. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html +1 -3
  108. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-packages-modal.html +1 -6
  109. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-debs-applicable.controller.js +1 -1
  110. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-errata.controller.js +1 -16
  111. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-module-streams.controller.js +0 -1
  112. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-actions.controller.js +0 -1
  113. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-applicable.controller.js +2 -11
  114. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-installed.controller.js +0 -2
  115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages.controller.js +1 -39
  116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-debs-applicable.html +2 -2
  117. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +1 -2
  118. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-actions.html +2 -3
  119. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-applicable.html +4 -5
  120. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-installed.html +1 -1
  121. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +2 -4
  122. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +2 -4
  123. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html +0 -1
  124. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +0 -14
  125. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +0 -4
  126. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +1 -2
  127. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file-content-views.controller.js +2 -1
  128. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-content-views.html +1 -1
  129. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +235 -521
  130. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-packages.html +13 -2
  131. data/engines/bastion_katello/lib/bastion_katello/engine.rb +1 -3
  132. data/lib/katello/engine.rb +0 -18
  133. data/lib/katello/permission_creator.rb +1 -1
  134. data/lib/katello/plugin.rb +0 -25
  135. data/lib/katello/version.rb +1 -1
  136. data/lib/monkeys/remove_hidden_distribution.rb +383 -0
  137. data/locale/action_names.rb +3 -1
  138. data/locale/bn/katello.po +130 -39
  139. data/locale/bn_IN/katello.po +130 -39
  140. data/locale/ca/katello.po +130 -39
  141. data/locale/cs/katello.po +130 -39
  142. data/locale/cs_CZ/katello.po +130 -39
  143. data/locale/de/LC_MESSAGES/katello.mo +0 -0
  144. data/locale/de/katello.po +134 -43
  145. data/locale/de_AT/katello.po +130 -39
  146. data/locale/de_DE/katello.po +130 -39
  147. data/locale/el/katello.po +130 -39
  148. data/locale/en/katello.po +130 -39
  149. data/locale/en_GB/katello.po +130 -39
  150. data/locale/en_US/katello.po +130 -39
  151. data/locale/es/LC_MESSAGES/katello.mo +0 -0
  152. data/locale/es/katello.po +133 -42
  153. data/locale/et_EE/katello.po +130 -39
  154. data/locale/fr/LC_MESSAGES/katello.mo +0 -0
  155. data/locale/fr/katello.po +138 -47
  156. data/locale/gl/katello.po +130 -39
  157. data/locale/gu/katello.po +130 -39
  158. data/locale/he_IL/katello.po +130 -39
  159. data/locale/hi/katello.po +130 -39
  160. data/locale/id/katello.po +130 -39
  161. data/locale/it/LC_MESSAGES/katello.mo +0 -0
  162. data/locale/it/katello.po +131 -40
  163. data/locale/ja/LC_MESSAGES/katello.mo +0 -0
  164. data/locale/ja/katello.po +138 -47
  165. data/locale/ka/LC_MESSAGES/katello.mo +0 -0
  166. data/locale/ka/katello.po +131 -40
  167. data/locale/katello.pot +805 -642
  168. data/locale/kn/katello.po +130 -39
  169. data/locale/ko/LC_MESSAGES/katello.mo +0 -0
  170. data/locale/ko/katello.po +131 -40
  171. data/locale/ml_IN/katello.po +130 -39
  172. data/locale/mr/katello.po +130 -39
  173. data/locale/nl_NL/katello.po +130 -39
  174. data/locale/or/katello.po +130 -39
  175. data/locale/pa/katello.po +130 -39
  176. data/locale/pl/katello.po +130 -39
  177. data/locale/pl_PL/katello.po +130 -39
  178. data/locale/pt/katello.po +130 -39
  179. data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
  180. data/locale/pt_BR/katello.po +133 -42
  181. data/locale/ro/katello.po +130 -39
  182. data/locale/ro_RO/katello.po +130 -39
  183. data/locale/ru/LC_MESSAGES/katello.mo +0 -0
  184. data/locale/ru/katello.po +131 -40
  185. data/locale/sl/katello.po +130 -39
  186. data/locale/sv_SE/katello.po +130 -39
  187. data/locale/ta/katello.po +130 -39
  188. data/locale/ta_IN/katello.po +130 -39
  189. data/locale/te/katello.po +130 -39
  190. data/locale/tr/katello.po +130 -39
  191. data/locale/vi/katello.po +130 -39
  192. data/locale/vi_VN/katello.po +130 -39
  193. data/locale/zh/katello.po +130 -39
  194. data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
  195. data/locale/zh_CN/katello.po +138 -47
  196. data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
  197. data/locale/zh_TW/katello.po +131 -40
  198. data/webpack/components/extensions/HostDetails/Cards/HostCollectionsCard/HostCollectionsModal.js +0 -5
  199. data/webpack/components/extensions/HostDetails/Tabs/ContentTab/index.js +9 -3
  200. data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/ErrataTab.js +7 -58
  201. data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/HostErrataActions.js +2 -11
  202. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/HostPackagesActions.js +1 -40
  203. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/HostPackagesConstants.js +0 -3
  204. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackageInstallModal.js +5 -40
  205. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackagesTab.js +6 -65
  206. data/webpack/components/extensions/HostDetails/Tabs/RepositorySetsTab/RepositorySetsTab.js +5 -4
  207. data/webpack/components/extensions/HostDetails/Tabs/__tests__/errataTab.test.js +0 -212
  208. data/webpack/components/extensions/HostDetails/Tabs/__tests__/packageInstallModal.test.js +2 -157
  209. data/webpack/components/extensions/HostDetails/hostDetailsHelpers.js +0 -20
  210. data/webpack/containers/Application/config.js +5 -0
  211. data/webpack/scenes/ActivationKeys/Details/ActivationKeyActions.js +31 -0
  212. data/webpack/scenes/ActivationKeys/Details/ActivationKeyConstants.js +3 -0
  213. data/webpack/scenes/ActivationKeys/Details/ActivationKeyDetails.js +127 -0
  214. data/webpack/scenes/ActivationKeys/Details/ActivationKeyDetails.scss +37 -0
  215. data/webpack/scenes/ActivationKeys/Details/ActivationKeyDetailsSelectors.js +16 -0
  216. data/webpack/scenes/ActivationKeys/Details/__tests__/activationKeyDetails.test.js +117 -0
  217. data/webpack/scenes/ActivationKeys/Details/components/DeleteMenu.js +77 -0
  218. data/webpack/scenes/ActivationKeys/Details/components/DeleteModal.js +63 -0
  219. data/webpack/scenes/ActivationKeys/Details/components/EditModal.js +199 -0
  220. data/webpack/scenes/ActivationKeys/Details/index.js +3 -0
  221. data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditCredentials.js +10 -5
  222. data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditProducts.js +8 -3
  223. data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditSmartProxies.js +8 -3
  224. data/webpack/scenes/AlternateContentSources/Details/__tests__/ACSEdits.test.js +2 -2
  225. data/webpack/scenes/AlternateContentSources/MainTable/ACSTable.js +1 -1
  226. data/webpack/scenes/ContentViews/Details/ComponentContentViews/ComponentContentViewAddModal.js +37 -29
  227. data/webpack/scenes/ContentViews/Details/ComponentContentViews/ComponentContentViewBulkAddModal.js +53 -37
  228. data/webpack/scenes/ContentViews/Details/ComponentContentViews/ContentViewComponents.js +7 -0
  229. data/webpack/scenes/ContentViews/Details/ComponentContentViews/__tests__/contentViewComponents.fixtures.json +15 -6
  230. data/webpack/scenes/ContentViews/Details/ComponentContentViews/__tests__/contentViewComponents.test.js +6 -5
  231. data/webpack/scenes/ContentViews/Details/ComponentContentViews/__tests__/publishedContentViewDetails.fixtures.json +43 -197
  232. data/webpack/scenes/ContentViews/Details/Filters/CVErrataDateFilterContent.js +1 -1
  233. data/webpack/scenes/ContentViews/Details/Filters/Rules/Package/AddEditPackageRuleModal.js +1 -1
  234. data/webpack/scenes/ContentViews/Details/Promote/ContentViewVersionPromote.js +2 -2
  235. data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersions.fixtures.json +0 -98
  236. data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersions.test.js +103 -1
  237. data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersionsLatestEnvironment.fixtures.json +634 -0
  238. data/webpack/scenes/ContentViews/components/ContentViewSelect/helpers.js +1 -1
  239. data/webpack/scenes/Hosts/ChangeContentSource/actions.js +14 -12
  240. data/webpack/scenes/Hosts/ChangeContentSource/components/ContentSourceForm.js +45 -6
  241. data/webpack/scenes/Hosts/ChangeContentSource/components/ContentSourceTemplate.js +42 -7
  242. data/webpack/scenes/Hosts/ChangeContentSource/index.js +37 -10
  243. data/webpack/scenes/Hosts/ChangeContentSource/styles.scss +5 -0
  244. data/webpack/scenes/RedHatRepositories/index.scss +1 -1
  245. data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +2 -2
  246. metadata +85 -81
  247. data/app/lib/actions/katello/agent/dispatch_history_presenter.rb +0 -64
  248. data/app/lib/actions/katello/agent_action.rb +0 -120
  249. data/app/lib/actions/katello/bulk_agent_action.rb +0 -37
  250. data/app/lib/actions/katello/host/erratum/applicable_errata_install.rb +0 -44
  251. data/app/lib/actions/katello/host/erratum/install.rb +0 -38
  252. data/app/lib/actions/katello/host/package/install.rb +0 -34
  253. data/app/lib/actions/katello/host/package/remove.rb +0 -48
  254. data/app/lib/actions/katello/host/package/update.rb +0 -42
  255. data/app/lib/actions/katello/host/package_group/install.rb +0 -30
  256. data/app/lib/actions/katello/host/package_group/remove.rb +0 -30
  257. data/app/lib/katello/agent/base_message.rb +0 -41
  258. data/app/lib/katello/agent/client_message_handler.rb +0 -69
  259. data/app/lib/katello/agent/connection.rb +0 -38
  260. data/app/lib/katello/agent/install_errata_message.rb +0 -25
  261. data/app/lib/katello/agent/install_package_group_message.rb +0 -25
  262. data/app/lib/katello/agent/install_package_message.rb +0 -28
  263. data/app/lib/katello/agent/remove_package_group_message.rb +0 -25
  264. data/app/lib/katello/agent/remove_package_message.rb +0 -28
  265. data/app/lib/katello/agent/update_package_message.rb +0 -33
  266. data/app/lib/katello/event_daemon/services/agent_event_receiver.rb +0 -59
  267. data/app/lib/katello/qpid/connection.rb +0 -149
  268. data/app/lib/katello/util/default_enablement_migrator.rb +0 -183
  269. data/app/models/katello/agent/dispatch_history.rb +0 -19
  270. data/app/models/katello/events/delete_host_agent_queue.rb +0 -19
  271. data/app/services/katello/agent/dispatcher.rb +0 -60
  272. data/app/views/foreman/job_templates/change_content_source.erb +0 -18
  273. data/app/views/katello/api/v2/sync/index.json.rabl +0 -1
  274. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/views/katello-agent-notice.html +0 -8
  275. data/lib/katello/tasks/upgrades/4.9/update_custom_products_enablement.rake +0 -13
  276. data/webpack/components/extensions/HostDetails/common/KatelloAgentDeprecationAlert.js +0 -23
@@ -29,9 +29,20 @@
29
29
  <button type="button" class="btn btn-default"
30
30
  ng-hide="denied('edit_products')"
31
31
  ng-click="openModal()"
32
- ng-disabled="table.working || table.numSelected === 0">
32
+ ng-disabled="table.working || table.numSelected === 0 || product.redhat">
33
33
  <i class="fa fa-trash-o" ng-hide="table.working"></i>
34
- <span translate>Remove Packages</span>
34
+ <span ng-hide="product.redhat" translate>Remove Packages</span>
35
+ <span ng-show="product.redhat">
36
+ <span translate>Cannot Remove</span>
37
+ <span>
38
+ <i class="fa fa-question-circle" ng-show="product.redhat"
39
+ uib-tooltip="{{ 'You cannot remove content from a redhat repository' | translate }}"
40
+ tooltip-animation="false"
41
+ tooltip-placement="left"
42
+ tooltip-append-to-body="true">
43
+ </i>
44
+ </span>
45
+ </span>
35
46
  </button>
36
47
  </div>
37
48
 
@@ -40,10 +40,8 @@ module BastionKatello
40
40
  :config_generator => lambda do
41
41
  { 'consumerCertRPM' => consumer_cert_rpm,
42
42
  'defaultDownloadPolicy' => !Foreman.in_rake? && db_migrated && Setting['default_download_policy'],
43
- 'katelloAgentPresent' => ::Katello.with_katello_agent?,
44
43
  'remoteExecutionPresent' => ::Katello.with_remote_execution?,
45
- 'hostToolingEnabled' => (::Katello.with_katello_agent? || ::Katello.with_remote_execution?) ? true : false,
46
- 'remoteExecutionByDefault' => ::Katello.remote_execution_by_default?
44
+ 'hostToolingEnabled' => ::Katello.with_remote_execution?
47
45
  }
48
46
  end
49
47
  )
@@ -55,14 +55,6 @@ module Katello
55
55
  :queue_name => 'katello.candlepin',
56
56
  :subscription_name => 'candlepin_events',
57
57
  :client_id => 'katello_candlepin_event_monitor'
58
- },
59
- :agent => {
60
- :client_queue_format => 'pulp.agent.%s',
61
- :event_queue_name => 'katello.agent',
62
- :broker_url => 'amqps://localhost:5671',
63
- :broker_ssl_cert_file => SETTINGS[:ssl_certificate],
64
- :broker_ssl_key_file => SETTINGS[:ssl_priv_key],
65
- :broker_ssl_ca_file => SETTINGS[:ssl_ca_file]
66
58
  }
67
59
  }
68
60
 
@@ -148,7 +140,6 @@ module Katello
148
140
 
149
141
  Katello::EventDaemon::Runner.register_service(:candlepin_events, Katello::CandlepinEventListener)
150
142
  Katello::EventDaemon::Runner.register_service(:katello_events, Katello::EventMonitor::PollerThread)
151
- Katello::EventDaemon::Runner.register_service(:katello_agent_events, Katello::EventDaemon::Services::AgentEventReceiver) if ::Katello.with_katello_agent?
152
143
 
153
144
  # Lib Extensions
154
145
  ::Foreman::Renderer::Scope::Variables::Base.include Katello::Concerns::RendererExtensions
@@ -226,7 +217,6 @@ module Katello
226
217
  Katello::EventQueue.register_event(Katello::Events::AutoPublishCompositeView::EVENT_TYPE, Katello::Events::AutoPublishCompositeView)
227
218
  Katello::EventQueue.register_event(Katello::Events::DeleteLatestContentViewVersion::EVENT_TYPE, Katello::Events::DeleteLatestContentViewVersion)
228
219
  Katello::EventQueue.register_event(Katello::Events::GenerateHostApplicability::EVENT_TYPE, Katello::Events::GenerateHostApplicability)
229
- Katello::EventQueue.register_event(Katello::Events::DeleteHostAgentQueue::EVENT_TYPE, Katello::Events::DeleteHostAgentQueue)
230
220
  Katello::EventQueue.register_event(Katello::Events::DeletePool::EVENT_TYPE, Katello::Events::DeletePool)
231
221
  end
232
222
 
@@ -242,14 +232,6 @@ module Katello
242
232
  Foreman::Plugin.installed?("foreman_remote_execution")
243
233
  end
244
234
 
245
- def self.with_katello_agent?
246
- !!SETTINGS.dig(:katello, :agent, :enabled)
247
- end
248
-
249
- def self.remote_execution_by_default?
250
- self.with_katello_agent? ? Setting['remote_execution_by_default'] : true
251
- end
252
-
253
235
  def self.with_ansible?
254
236
  Foreman::Plugin.installed?("foreman_ansible")
255
237
  end
@@ -404,7 +404,7 @@ module Katello
404
404
  @plugin.permission :edit_alternate_content_sources,
405
405
  {
406
406
  'katello/api/v2/alternate_content_sources' => [:update, :refresh],
407
- 'katello/api/v2/alternate_content_sources_bulk_actions' => [:refresh_alternate_content_sources]
407
+ 'katello/api/v2/alternate_content_sources_bulk_actions' => [:refresh_alternate_content_sources, :refresh_all_alternate_content_sources]
408
408
  },
409
409
  :resource_type => 'Katello::AlternateContentSource',
410
410
  :finder_scope => :editable
@@ -242,7 +242,6 @@ Foreman::Plugin.register :katello do
242
242
  logger :registry_proxy, :enabled => true
243
243
  logger :katello_events, :enabled => true
244
244
  logger :candlepin_events, :enabled => true
245
- logger :agent, :enabled => true
246
245
 
247
246
  widget 'errata_widget', :name => 'Latest Errata', :sizey => 1, :sizex => 6
248
247
  widget 'content_views_widget', :name => 'Content Views', :sizey => 1, :sizex => 6
@@ -457,18 +456,6 @@ Foreman::Plugin.register :katello do
457
456
  full_name: N_('Timeout when refreshing a manifest (in seconds)'),
458
457
  description: N_("Manifest refresh timeout")
459
458
 
460
- setting 'content_action_accept_timeout',
461
- type: :integer,
462
- default: 20,
463
- full_name: N_('Accept action timeout'),
464
- description: N_("Time in seconds to wait for a host to pick up a katello-agent action")
465
-
466
- setting 'content_action_finish_timeout',
467
- type: :integer,
468
- default: 3600,
469
- full_name: N_('Finish action timeout'),
470
- description: N_("Time in seconds to wait for a host to finish a katello-agent action")
471
-
472
459
  setting 'subscription_connection_enabled',
473
460
  type: :boolean,
474
461
  default: true,
@@ -575,12 +562,6 @@ Foreman::Plugin.register :katello do
575
562
  full_name: N_('Sync Sock Read Timeout'),
576
563
  description: N_("The maximum number of seconds that Pulp can take to download a file, not counting connection time.")
577
564
 
578
- setting 'remote_execution_by_default',
579
- type: :boolean,
580
- default: false,
581
- full_name: N_('Use remote execution by default'),
582
- description: N_("If this is enabled, remote execution is used instead of katello-agent for remote actions")
583
-
584
565
  setting 'unregister_delete_host',
585
566
  type: :boolean,
586
567
  default: false,
@@ -612,12 +593,6 @@ Foreman::Plugin.register :katello do
612
593
  full_name: N_('Expire soon days'),
613
594
  description: N_('The number of days remaining in a subscription before you will be reminded about renewing it.')
614
595
 
615
- setting 'content_view_solve_dependencies',
616
- type: :boolean,
617
- default: false,
618
- full_name: N_('content view Dependency Solving Default'),
619
- description: N_('The default dependency solving value for new content views.')
620
-
621
596
  setting 'host_dmi_uuid_duplicates',
622
597
  type: :array,
623
598
  default: [],
@@ -1,3 +1,3 @@
1
1
  module Katello
2
- VERSION = "4.9.2".freeze
2
+ VERSION = "4.10.0.rc1".freeze
3
3
  end
@@ -0,0 +1,383 @@
1
+ require 'pulp_rpm_client'
2
+ require 'pulp_container_client'
3
+ require 'pulp_ostree_client'
4
+ require 'pulp_file_client'
5
+ require 'pulp_deb_client'
6
+ require 'pulp_ansible_client'
7
+ require 'pulp_python_client'
8
+
9
+ PulpPythonClient::PythonPythonDistribution.class_eval do
10
+ # Initializes the object
11
+ # @param [Hash] attributes Model attributes in the form of hash
12
+ def initialize(attributes = {})
13
+ if (!attributes.is_a?(Hash))
14
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpPythonClient::PythonPythonDistribution` initialize method"
15
+ end
16
+
17
+ # check to see if the attribute exists and convert string to symbol for hash key
18
+ attributes = attributes.each_with_object({}) { |(k, v), h|
19
+ if (!self.class.attribute_map.key?(k.to_sym))
20
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpPythonClient::PythonPythonDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
21
+ end
22
+ h[k.to_sym] = v
23
+ }
24
+
25
+ if attributes.key?(:'base_path')
26
+ self.base_path = attributes[:'base_path']
27
+ end
28
+
29
+ if attributes.key?(:'content_guard')
30
+ self.content_guard = attributes[:'content_guard']
31
+ end
32
+
33
+ if attributes.key?(:'hidden')
34
+ self.hidden = attributes[:'hidden']
35
+ # Monkey-patch here. The rest of the initializer is copied from the library code.
36
+ #else
37
+ # self.hidden = false
38
+ end
39
+
40
+ if attributes.key?(:'pulp_labels')
41
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
42
+ self.pulp_labels = value
43
+ end
44
+ end
45
+
46
+ if attributes.key?(:'name')
47
+ self.name = attributes[:'name']
48
+ end
49
+
50
+ if attributes.key?(:'repository')
51
+ self.repository = attributes[:'repository']
52
+ end
53
+
54
+ if attributes.key?(:'publication')
55
+ self.publication = attributes[:'publication']
56
+ end
57
+
58
+ if attributes.key?(:'allow_uploads')
59
+ self.allow_uploads = attributes[:'allow_uploads']
60
+ else
61
+ self.allow_uploads = true
62
+ end
63
+
64
+ if attributes.key?(:'remote')
65
+ self.remote = attributes[:'remote']
66
+ end
67
+ end
68
+ end
69
+
70
+ PulpAnsibleClient::AnsibleAnsibleDistribution.class_eval do
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ if (!attributes.is_a?(Hash))
75
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpAnsibleClient::AnsibleAnsibleDistribution` initialize method"
76
+ end
77
+
78
+ # check to see if the attribute exists and convert string to symbol for hash key
79
+ attributes = attributes.each_with_object({}) { |(k, v), h|
80
+ if (!self.class.attribute_map.key?(k.to_sym))
81
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpAnsibleClient::AnsibleAnsibleDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
82
+ end
83
+ h[k.to_sym] = v
84
+ }
85
+
86
+ if attributes.key?(:'base_path')
87
+ self.base_path = attributes[:'base_path']
88
+ end
89
+
90
+ if attributes.key?(:'content_guard')
91
+ self.content_guard = attributes[:'content_guard']
92
+ end
93
+
94
+ if attributes.key?(:'hidden')
95
+ self.hidden = attributes[:'hidden']
96
+ # Monkey-patch here. The rest of the initializer is copied from the library code.
97
+ #else
98
+ # self.hidden = false
99
+ end
100
+
101
+ if attributes.key?(:'name')
102
+ self.name = attributes[:'name']
103
+ end
104
+
105
+ if attributes.key?(:'repository')
106
+ self.repository = attributes[:'repository']
107
+ end
108
+
109
+ if attributes.key?(:'repository_version')
110
+ self.repository_version = attributes[:'repository_version']
111
+ end
112
+
113
+ if attributes.key?(:'pulp_labels')
114
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
115
+ self.pulp_labels = value
116
+ end
117
+ end
118
+ end
119
+ end
120
+
121
+ PulpRpmClient::RpmRpmDistribution.class_eval do
122
+ # Initializes the object
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ def initialize(attributes = {})
125
+ if (!attributes.is_a?(Hash))
126
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpRpmClient::RpmRpmDistribution` initialize method"
127
+ end
128
+
129
+ # check to see if the attribute exists and convert string to symbol for hash key
130
+ attributes = attributes.each_with_object({}) { |(k, v), h|
131
+ if (!self.class.attribute_map.key?(k.to_sym))
132
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpRpmClient::RpmRpmDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
133
+ end
134
+ h[k.to_sym] = v
135
+ }
136
+
137
+ if attributes.key?(:'base_path')
138
+ self.base_path = attributes[:'base_path']
139
+ end
140
+
141
+ if attributes.key?(:'content_guard')
142
+ self.content_guard = attributes[:'content_guard']
143
+ end
144
+
145
+ if attributes.key?(:'hidden')
146
+ self.hidden = attributes[:'hidden']
147
+ # Monkey-patch here. The rest of the initializer is copied from the library code.
148
+ #else
149
+ # self.hidden = false
150
+ end
151
+
152
+ if attributes.key?(:'pulp_labels')
153
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
154
+ self.pulp_labels = value
155
+ end
156
+ end
157
+
158
+ if attributes.key?(:'name')
159
+ self.name = attributes[:'name']
160
+ end
161
+
162
+ if attributes.key?(:'repository')
163
+ self.repository = attributes[:'repository']
164
+ end
165
+
166
+ if attributes.key?(:'publication')
167
+ self.publication = attributes[:'publication']
168
+ end
169
+ end
170
+ end
171
+
172
+ PulpContainerClient::ContainerContainerDistribution.class_eval do
173
+ # Initializes the object
174
+ # @param [Hash] attributes Model attributes in the form of hash
175
+ def initialize(attributes = {})
176
+ if (!attributes.is_a?(Hash))
177
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpContainerClient::ContainerContainerDistribution` initialize method"
178
+ end
179
+
180
+ # check to see if the attribute exists and convert string to symbol for hash key
181
+ attributes = attributes.each_with_object({}) { |(k, v), h|
182
+ if (!self.class.attribute_map.key?(k.to_sym))
183
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpContainerClient::ContainerContainerDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
184
+ end
185
+ h[k.to_sym] = v
186
+ }
187
+
188
+ if attributes.key?(:'pulp_labels')
189
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
190
+ self.pulp_labels = value
191
+ end
192
+ end
193
+
194
+ if attributes.key?(:'content_guard')
195
+ self.content_guard = attributes[:'content_guard']
196
+ end
197
+
198
+ if attributes.key?(:'repository')
199
+ self.repository = attributes[:'repository']
200
+ end
201
+
202
+ if attributes.key?(:'name')
203
+ self.name = attributes[:'name']
204
+ end
205
+
206
+ if attributes.key?(:'hidden')
207
+ self.hidden = attributes[:'hidden']
208
+ # Monkey-patch here. The rest of the initializer is copied from the library code.
209
+ #else
210
+ # self.hidden = false
211
+ end
212
+
213
+ if attributes.key?(:'base_path')
214
+ self.base_path = attributes[:'base_path']
215
+ end
216
+
217
+ if attributes.key?(:'repository_version')
218
+ self.repository_version = attributes[:'repository_version']
219
+ end
220
+
221
+ if attributes.key?(:'private')
222
+ self.private = attributes[:'private']
223
+ end
224
+
225
+ if attributes.key?(:'description')
226
+ self.description = attributes[:'description']
227
+ end
228
+ end
229
+ end
230
+
231
+ PulpFileClient::FileFileDistribution.class_eval do
232
+ # Initializes the object
233
+ # @param [Hash] attributes Model attributes in the form of hash
234
+ def initialize(attributes = {})
235
+ if (!attributes.is_a?(Hash))
236
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpFileClient::FileFileDistribution` initialize method"
237
+ end
238
+
239
+ # check to see if the attribute exists and convert string to symbol for hash key
240
+ attributes = attributes.each_with_object({}) { |(k, v), h|
241
+ if (!self.class.attribute_map.key?(k.to_sym))
242
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpFileClient::FileFileDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
243
+ end
244
+ h[k.to_sym] = v
245
+ }
246
+
247
+ if attributes.key?(:'base_path')
248
+ self.base_path = attributes[:'base_path']
249
+ end
250
+
251
+ if attributes.key?(:'content_guard')
252
+ self.content_guard = attributes[:'content_guard']
253
+ end
254
+
255
+ if attributes.key?(:'hidden')
256
+ self.hidden = attributes[:'hidden']
257
+ # Patch here.
258
+ #else
259
+ #self.hidden = false
260
+ end
261
+
262
+ if attributes.key?(:'pulp_labels')
263
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
264
+ self.pulp_labels = value
265
+ end
266
+ end
267
+
268
+ if attributes.key?(:'name')
269
+ self.name = attributes[:'name']
270
+ end
271
+
272
+ if attributes.key?(:'repository')
273
+ self.repository = attributes[:'repository']
274
+ end
275
+
276
+ if attributes.key?(:'publication')
277
+ self.publication = attributes[:'publication']
278
+ end
279
+ end
280
+ end
281
+
282
+ PulpDebClient::DebAptDistribution.class_eval do
283
+ # Initializes the object
284
+ # @param [Hash] attributes Model attributes in the form of hash
285
+ def initialize(attributes = {})
286
+ if (!attributes.is_a?(Hash))
287
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpDebClient::DebAptDistribution` initialize method"
288
+ end
289
+
290
+ # check to see if the attribute exists and convert string to symbol for hash key
291
+ attributes = attributes.each_with_object({}) { |(k, v), h|
292
+ if (!self.class.attribute_map.key?(k.to_sym))
293
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpDebClient::DebAptDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
294
+ end
295
+ h[k.to_sym] = v
296
+ }
297
+
298
+ if attributes.key?(:'base_path')
299
+ self.base_path = attributes[:'base_path']
300
+ end
301
+
302
+ if attributes.key?(:'content_guard')
303
+ self.content_guard = attributes[:'content_guard']
304
+ end
305
+
306
+ if attributes.key?(:'hidden')
307
+ self.hidden = attributes[:'hidden']
308
+ # Patch here.
309
+ #else
310
+ # self.hidden = false
311
+ end
312
+
313
+ if attributes.key?(:'pulp_labels')
314
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
315
+ self.pulp_labels = value
316
+ end
317
+ end
318
+
319
+ if attributes.key?(:'name')
320
+ self.name = attributes[:'name']
321
+ end
322
+
323
+ if attributes.key?(:'repository')
324
+ self.repository = attributes[:'repository']
325
+ end
326
+
327
+ if attributes.key?(:'publication')
328
+ self.publication = attributes[:'publication']
329
+ end
330
+ end
331
+ end
332
+
333
+
334
+ PulpOstreeClient::OstreeOstreeDistribution.class_eval do
335
+ # Initializes the object
336
+ # @param [Hash] attributes Model attributes in the form of hash
337
+ def initialize(attributes = {})
338
+ if (!attributes.is_a?(Hash))
339
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpOstreeClient::OstreeOstreeDistribution` initialize method"
340
+ end
341
+
342
+ # check to see if the attribute exists and convert string to symbol for hash key
343
+ attributes = attributes.each_with_object({}) { |(k, v), h|
344
+ if (!self.class.attribute_map.key?(k.to_sym))
345
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpOstreeClient::OstreeOstreeDistribution`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
346
+ end
347
+ h[k.to_sym] = v
348
+ }
349
+
350
+ if attributes.key?(:'base_path')
351
+ self.base_path = attributes[:'base_path']
352
+ end
353
+
354
+ if attributes.key?(:'content_guard')
355
+ self.content_guard = attributes[:'content_guard']
356
+ end
357
+
358
+ if attributes.key?(:'hidden')
359
+ self.hidden = attributes[:'hidden']
360
+ # Monkey-patch here. The rest of the initializer is copied from the library code.
361
+ #else
362
+ # self.hidden = false
363
+ end
364
+
365
+ if attributes.key?(:'pulp_labels')
366
+ if (value = attributes[:'pulp_labels']).is_a?(Hash)
367
+ self.pulp_labels = value
368
+ end
369
+ end
370
+
371
+ if attributes.key?(:'name')
372
+ self.name = attributes[:'name']
373
+ end
374
+
375
+ if attributes.key?(:'repository')
376
+ self.repository = attributes[:'repository']
377
+ end
378
+
379
+ if attributes.key?(:'repository_version')
380
+ self.repository_version = attributes[:'repository_version']
381
+ end
382
+ end
383
+ end
@@ -6,6 +6,7 @@ _("Agent action")
6
6
  _("Attach subscriptions")
7
7
  _("Auto attach subscriptions")
8
8
  _("Bulk generate applicability for hosts")
9
+ _("Check for long running tasks")
9
10
  _("Combined Profile Update")
10
11
  _("Copy version units to library")
11
12
  _("Create Alternate Content Source")
@@ -17,6 +18,7 @@ _("Delete Activation Key")
17
18
  _("Delete Lifecycle Environment")
18
19
  _("Delete Product")
19
20
  _("Delete")
21
+ _("Deliver notifications about long running tasks")
20
22
  _("Destroy Alternate Content Source")
21
23
  _("Destroy Content Host")
22
24
  _("Destroy")
@@ -80,4 +82,4 @@ _("Update release version for host")
80
82
  _("Update")
81
83
  _("Updating System Purpose for host")
82
84
  _("Upload into")
83
- _("Verify checksum")
85
+ _("Verify checksum")