katello 4.18.1 → 4.19.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (336) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/locale/bn/katello.js +56 -107
  3. data/app/assets/javascripts/katello/locale/bn_IN/katello.js +56 -107
  4. data/app/assets/javascripts/katello/locale/ca/katello.js +56 -107
  5. data/app/assets/javascripts/katello/locale/cs/katello.js +56 -107
  6. data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +57 -108
  7. data/app/assets/javascripts/katello/locale/de/katello.js +58 -109
  8. data/app/assets/javascripts/katello/locale/de_AT/katello.js +56 -107
  9. data/app/assets/javascripts/katello/locale/de_DE/katello.js +56 -107
  10. data/app/assets/javascripts/katello/locale/el/katello.js +57 -108
  11. data/app/assets/javascripts/katello/locale/en/katello.js +56 -107
  12. data/app/assets/javascripts/katello/locale/en_GB/katello.js +56 -107
  13. data/app/assets/javascripts/katello/locale/en_US/katello.js +56 -107
  14. data/app/assets/javascripts/katello/locale/es/katello.js +58 -109
  15. data/app/assets/javascripts/katello/locale/et_EE/katello.js +56 -107
  16. data/app/assets/javascripts/katello/locale/fr/katello.js +59 -110
  17. data/app/assets/javascripts/katello/locale/gl/katello.js +56 -107
  18. data/app/assets/javascripts/katello/locale/gu/katello.js +56 -107
  19. data/app/assets/javascripts/katello/locale/he_IL/katello.js +56 -107
  20. data/app/assets/javascripts/katello/locale/hi/katello.js +56 -107
  21. data/app/assets/javascripts/katello/locale/id/katello.js +56 -107
  22. data/app/assets/javascripts/katello/locale/it/katello.js +56 -107
  23. data/app/assets/javascripts/katello/locale/ja/katello.js +59 -110
  24. data/app/assets/javascripts/katello/locale/ka/katello.js +58 -109
  25. data/app/assets/javascripts/katello/locale/kn/katello.js +56 -107
  26. data/app/assets/javascripts/katello/locale/ko/katello.js +59 -110
  27. data/app/assets/javascripts/katello/locale/ml_IN/katello.js +56 -107
  28. data/app/assets/javascripts/katello/locale/mr/katello.js +56 -107
  29. data/app/assets/javascripts/katello/locale/nl_NL/katello.js +56 -107
  30. data/app/assets/javascripts/katello/locale/or/katello.js +56 -107
  31. data/app/assets/javascripts/katello/locale/pa/katello.js +56 -107
  32. data/app/assets/javascripts/katello/locale/pl/katello.js +56 -107
  33. data/app/assets/javascripts/katello/locale/pl_PL/katello.js +56 -107
  34. data/app/assets/javascripts/katello/locale/pt/katello.js +56 -107
  35. data/app/assets/javascripts/katello/locale/pt_BR/katello.js +58 -109
  36. data/app/assets/javascripts/katello/locale/ro/katello.js +56 -107
  37. data/app/assets/javascripts/katello/locale/ro_RO/katello.js +56 -107
  38. data/app/assets/javascripts/katello/locale/ru/katello.js +57 -108
  39. data/app/assets/javascripts/katello/locale/sl/katello.js +56 -107
  40. data/app/assets/javascripts/katello/locale/sv_SE/katello.js +56 -107
  41. data/app/assets/javascripts/katello/locale/ta/katello.js +56 -107
  42. data/app/assets/javascripts/katello/locale/ta_IN/katello.js +56 -107
  43. data/app/assets/javascripts/katello/locale/te/katello.js +56 -107
  44. data/app/assets/javascripts/katello/locale/tr/katello.js +56 -107
  45. data/app/assets/javascripts/katello/locale/vi/katello.js +56 -107
  46. data/app/assets/javascripts/katello/locale/vi_VN/katello.js +56 -107
  47. data/app/assets/javascripts/katello/locale/zh/katello.js +56 -107
  48. data/app/assets/javascripts/katello/locale/zh_CN/katello.js +59 -110
  49. data/app/assets/javascripts/katello/locale/zh_TW/katello.js +57 -108
  50. data/app/controllers/katello/api/registry/registry_proxies_controller.rb +41 -12
  51. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +1 -1
  52. data/app/controllers/katello/api/v2/activation_keys_controller.rb +3 -65
  53. data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +1 -1
  54. data/app/controllers/katello/api/v2/content_views_controller.rb +18 -3
  55. data/app/controllers/katello/api/v2/debs_controller.rb +21 -11
  56. data/app/controllers/katello/api/v2/docker_tags_controller.rb +7 -0
  57. data/app/controllers/katello/api/v2/flatpak_remote_repositories_controller.rb +21 -19
  58. data/app/controllers/katello/api/v2/host_debs_controller.rb +16 -1
  59. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +3 -60
  60. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +10 -53
  61. data/app/controllers/katello/api/v2/repositories_controller.rb +0 -1
  62. data/app/controllers/katello/concerns/organizations_controller_extensions.rb +3 -0
  63. data/app/lib/actions/candlepin/activation_key/create.rb +0 -2
  64. data/app/lib/actions/candlepin/activation_key/update.rb +0 -2
  65. data/app/lib/actions/candlepin/product/content_create.rb +3 -5
  66. data/app/lib/actions/candlepin/product/content_update.rb +2 -3
  67. data/app/lib/actions/helpers/rolling_cv_repos.rb +1 -1
  68. data/app/lib/actions/katello/activation_key/create.rb +0 -1
  69. data/app/lib/actions/katello/activation_key/update.rb +0 -2
  70. data/app/lib/actions/katello/capsule_content/sync_capsule.rb +1 -6
  71. data/app/lib/actions/katello/content_credential/update.rb +1 -1
  72. data/app/lib/actions/katello/content_view/add_rolling_repo_clone.rb +18 -24
  73. data/app/lib/actions/katello/content_view/create.rb +9 -4
  74. data/app/lib/actions/katello/content_view/refresh_rolling_repo.rb +6 -1
  75. data/app/lib/actions/katello/content_view/remove_rolling_repo_clone.rb +16 -11
  76. data/app/lib/actions/katello/content_view/update.rb +34 -7
  77. data/app/lib/actions/katello/product/content_create.rb +2 -2
  78. data/app/lib/actions/katello/product/content_destroy.rb +1 -1
  79. data/app/lib/actions/katello/repository/check_matching_content.rb +1 -1
  80. data/app/lib/actions/katello/repository/clone_contents.rb +1 -1
  81. data/app/lib/actions/katello/repository/create.rb +1 -1
  82. data/app/lib/actions/katello/repository/destroy.rb +4 -4
  83. data/app/lib/actions/katello/repository/finish_upload.rb +1 -1
  84. data/app/lib/actions/katello/repository/sync.rb +1 -1
  85. data/app/lib/actions/pulp3/orchestration/repository/copy_all_units.rb +2 -2
  86. data/app/lib/actions/pulp3/orchestration/repository/generate_metadata.rb +1 -1
  87. data/app/lib/actions/pulp3/orchestration/repository/multi_copy_all_units.rb +1 -1
  88. data/app/lib/actions/pulp3/repository/save_publication.rb +3 -1
  89. data/app/lib/actions/pulp3/repository/save_version.rb +45 -24
  90. data/app/lib/actions/pulp3/repository/save_versions.rb +2 -1
  91. data/app/lib/katello/resources/candlepin/activation_key.rb +3 -4
  92. data/app/lib/katello/resources/candlepin/upstream_job.rb +9 -1
  93. data/app/lib/katello/resources/candlepin.rb +4 -0
  94. data/app/models/katello/authorization/repository.rb +17 -4
  95. data/app/models/katello/concerns/subscription_facet_host_extensions.rb +0 -7
  96. data/app/models/katello/content_view_deb_filter.rb +10 -0
  97. data/app/models/katello/content_view_deb_filter_rule.rb +7 -0
  98. data/app/models/katello/deb.rb +10 -10
  99. data/app/models/katello/erratum.rb +1 -1
  100. data/app/models/katello/glue/provider.rb +14 -3
  101. data/app/models/katello/host/content_facet.rb +1 -1
  102. data/app/models/katello/host/subscription_facet.rb +1 -7
  103. data/app/models/katello/product_content.rb +2 -2
  104. data/app/models/katello/repository.rb +4 -23
  105. data/app/models/katello/root_repository.rb +2 -5
  106. data/app/services/katello/candlepin/event_handler.rb +0 -33
  107. data/app/services/katello/candlepin/message_handler.rb +0 -41
  108. data/app/services/katello/content_unit_indexer.rb +59 -13
  109. data/app/services/katello/product_content_finder.rb +5 -4
  110. data/app/services/katello/pulp3/alternate_content_source.rb +2 -2
  111. data/app/services/katello/pulp3/ansible_collection.rb +1 -0
  112. data/app/services/katello/pulp3/api/content_guard.rb +5 -5
  113. data/app/services/katello/pulp3/api/core.rb +10 -0
  114. data/app/services/katello/pulp3/deb.rb +1 -0
  115. data/app/services/katello/pulp3/docker_manifest.rb +1 -0
  116. data/app/services/katello/pulp3/docker_manifest_list.rb +1 -0
  117. data/app/services/katello/pulp3/docker_tag.rb +1 -0
  118. data/app/services/katello/pulp3/file_unit.rb +1 -0
  119. data/app/services/katello/pulp3/generic_content_unit.rb +1 -0
  120. data/app/services/katello/pulp3/module_stream.rb +1 -0
  121. data/app/services/katello/pulp3/package_group.rb +1 -0
  122. data/app/services/katello/pulp3/repository/apt.rb +30 -13
  123. data/app/services/katello/pulp3/repository.rb +59 -10
  124. data/app/services/katello/pulp3/rpm.rb +3 -2
  125. data/app/services/katello/pulp3/srpm.rb +3 -2
  126. data/app/services/katello/pulp3/task_group.rb +1 -1
  127. data/app/services/katello/registration_manager.rb +19 -17
  128. data/app/services/katello/repository_type_manager.rb +7 -5
  129. data/app/services/katello/smart_proxy_helper.rb +1 -6
  130. data/app/views/foreman/job_templates/upload_profile.erb +5 -0
  131. data/app/views/katello/api/v2/activation_keys/base.json.rabl +1 -1
  132. data/app/views/katello/api/v2/content_views/base.json.rabl +1 -0
  133. data/app/views/katello/api/v2/debs/thindex.json.rabl +6 -0
  134. data/app/views/katello/api/v2/docker_tags/_base.json.rabl +32 -0
  135. data/app/views/katello/api/v2/docker_tags/show.json.rabl +0 -5
  136. data/app/views/katello/api/v2/flatpak_remotes/index.json.rabl +6 -0
  137. data/app/views/katello/api/v2/host_debs/installed_debs.json.rabl +6 -0
  138. data/app/views/katello/api/v2/hosts_bulk_actions/applicable_errata.json.rabl +1 -1
  139. data/app/views/katello/api/v2/hosts_bulk_actions/applicable_erratum.json.rabl +9 -0
  140. data/app/views/katello/api/v2/hosts_bulk_actions/installable_errata.json.rabl +1 -1
  141. data/app/views/katello/api/v2/hosts_bulk_actions/{erratum.json.rabl → installable_erratum.json.rabl} +3 -3
  142. data/app/views/katello/api/v2/subscription_facet/base.json.rabl +1 -1
  143. data/config/initializers/monkeys.rb +1 -0
  144. data/config/routes/api/v2.rb +2 -2
  145. data/config/routes/overrides.rb +2 -7
  146. data/config/routes.rb +2 -0
  147. data/db/migrate/20211019192121_create_cdn_configuration.katello.rb +1 -1
  148. data/db/migrate/20250912000000_add_pulp_prn_fields.rb +73 -0
  149. data/db/migrate/20250912000001_populate_pulp_prn_fields.rb +403 -0
  150. data/db/migrate/20251009142516_remove_auto_attach_from_activation_keys.rb +5 -0
  151. data/db/migrate/20251009142517_remove_autoheal_from_subscription_facets.rb +5 -0
  152. data/db/seeds.d/111-upgrade_tasks.rb +2 -0
  153. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/el.po +2 -2
  154. data/lib/katello/permission_creator.rb +2 -2
  155. data/lib/katello/permissions/host_permissions.rb +0 -6
  156. data/lib/katello/plugin.rb +16 -8
  157. data/lib/katello/tasks/jenkins.rake +1 -1
  158. data/lib/katello/tasks/upgrades/4.19/enable_structured_apt_for_deb.rake +87 -0
  159. data/lib/katello/tasks/upgrades/4.19/populate_repository_version_prns.rake +32 -0
  160. data/lib/katello/version.rb +1 -1
  161. data/lib/monkeys/fix_rpm_repository_gpgcheck.rb +38 -0
  162. data/locale/bn/LC_MESSAGES/katello.mo +0 -0
  163. data/locale/bn/katello.po +56 -107
  164. data/locale/bn_IN/LC_MESSAGES/katello.mo +0 -0
  165. data/locale/bn_IN/katello.po +56 -107
  166. data/locale/ca/LC_MESSAGES/katello.mo +0 -0
  167. data/locale/ca/katello.po +56 -107
  168. data/locale/cs/LC_MESSAGES/katello.mo +0 -0
  169. data/locale/cs/katello.po +56 -107
  170. data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
  171. data/locale/cs_CZ/katello.po +57 -108
  172. data/locale/de/LC_MESSAGES/katello.mo +0 -0
  173. data/locale/de/katello.po +58 -109
  174. data/locale/de_AT/LC_MESSAGES/katello.mo +0 -0
  175. data/locale/de_AT/katello.po +56 -107
  176. data/locale/de_DE/LC_MESSAGES/katello.mo +0 -0
  177. data/locale/de_DE/katello.po +56 -107
  178. data/locale/el/LC_MESSAGES/katello.mo +0 -0
  179. data/locale/el/katello.po +58 -109
  180. data/locale/en/LC_MESSAGES/katello.mo +0 -0
  181. data/locale/en/katello.po +56 -107
  182. data/locale/en_GB/LC_MESSAGES/katello.mo +0 -0
  183. data/locale/en_GB/katello.po +56 -107
  184. data/locale/en_US/LC_MESSAGES/katello.mo +0 -0
  185. data/locale/en_US/katello.po +56 -107
  186. data/locale/es/LC_MESSAGES/katello.mo +0 -0
  187. data/locale/es/katello.po +58 -109
  188. data/locale/et_EE/LC_MESSAGES/katello.mo +0 -0
  189. data/locale/et_EE/katello.po +56 -107
  190. data/locale/fr/LC_MESSAGES/katello.mo +0 -0
  191. data/locale/fr/katello.po +59 -110
  192. data/locale/gl/LC_MESSAGES/katello.mo +0 -0
  193. data/locale/gl/katello.po +56 -107
  194. data/locale/gu/LC_MESSAGES/katello.mo +0 -0
  195. data/locale/gu/katello.po +56 -107
  196. data/locale/he_IL/LC_MESSAGES/katello.mo +0 -0
  197. data/locale/he_IL/katello.po +56 -107
  198. data/locale/hi/LC_MESSAGES/katello.mo +0 -0
  199. data/locale/hi/katello.po +56 -107
  200. data/locale/id/LC_MESSAGES/katello.mo +0 -0
  201. data/locale/id/katello.po +56 -107
  202. data/locale/it/LC_MESSAGES/katello.mo +0 -0
  203. data/locale/it/katello.po +56 -107
  204. data/locale/ja/LC_MESSAGES/katello.mo +0 -0
  205. data/locale/ja/katello.po +59 -110
  206. data/locale/ka/LC_MESSAGES/katello.mo +0 -0
  207. data/locale/ka/katello.po +58 -109
  208. data/locale/katello.pot +676 -749
  209. data/locale/kn/LC_MESSAGES/katello.mo +0 -0
  210. data/locale/kn/katello.po +56 -107
  211. data/locale/ko/LC_MESSAGES/katello.mo +0 -0
  212. data/locale/ko/katello.po +59 -110
  213. data/locale/ml_IN/LC_MESSAGES/katello.mo +0 -0
  214. data/locale/ml_IN/katello.po +56 -107
  215. data/locale/mr/LC_MESSAGES/katello.mo +0 -0
  216. data/locale/mr/katello.po +56 -107
  217. data/locale/nl_NL/LC_MESSAGES/katello.mo +0 -0
  218. data/locale/nl_NL/katello.po +56 -107
  219. data/locale/or/LC_MESSAGES/katello.mo +0 -0
  220. data/locale/or/katello.po +56 -107
  221. data/locale/pa/LC_MESSAGES/katello.mo +0 -0
  222. data/locale/pa/katello.po +56 -107
  223. data/locale/pl/LC_MESSAGES/katello.mo +0 -0
  224. data/locale/pl/katello.po +56 -107
  225. data/locale/pl_PL/LC_MESSAGES/katello.mo +0 -0
  226. data/locale/pl_PL/katello.po +56 -107
  227. data/locale/pt/LC_MESSAGES/katello.mo +0 -0
  228. data/locale/pt/katello.po +56 -107
  229. data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
  230. data/locale/pt_BR/katello.po +58 -109
  231. data/locale/ro/LC_MESSAGES/katello.mo +0 -0
  232. data/locale/ro/katello.po +56 -107
  233. data/locale/ro_RO/LC_MESSAGES/katello.mo +0 -0
  234. data/locale/ro_RO/katello.po +56 -107
  235. data/locale/ru/LC_MESSAGES/katello.mo +0 -0
  236. data/locale/ru/katello.po +57 -108
  237. data/locale/sl/LC_MESSAGES/katello.mo +0 -0
  238. data/locale/sl/katello.po +56 -107
  239. data/locale/sv_SE/LC_MESSAGES/katello.mo +0 -0
  240. data/locale/sv_SE/katello.po +56 -107
  241. data/locale/ta/LC_MESSAGES/katello.mo +0 -0
  242. data/locale/ta/katello.po +56 -107
  243. data/locale/ta_IN/LC_MESSAGES/katello.mo +0 -0
  244. data/locale/ta_IN/katello.po +56 -107
  245. data/locale/te/LC_MESSAGES/katello.mo +0 -0
  246. data/locale/te/katello.po +56 -107
  247. data/locale/tr/LC_MESSAGES/katello.mo +0 -0
  248. data/locale/tr/katello.po +56 -107
  249. data/locale/vi/LC_MESSAGES/katello.mo +0 -0
  250. data/locale/vi/katello.po +56 -107
  251. data/locale/vi_VN/LC_MESSAGES/katello.mo +0 -0
  252. data/locale/vi_VN/katello.po +56 -107
  253. data/locale/zh/LC_MESSAGES/katello.mo +0 -0
  254. data/locale/zh/katello.po +56 -107
  255. data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
  256. data/locale/zh_CN/katello.po +59 -110
  257. data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
  258. data/locale/zh_TW/katello.po +57 -108
  259. data/webpack/components/Content/Details/__tests__/__snapshots__/ContentDetails.test.js.snap +2 -2
  260. data/webpack/components/extensions/HostDetails/Cards/SystemPurposeCard/SystemPurposeEditModal.js +0 -2
  261. data/webpack/components/extensions/HostDetails/Cards/SystemPurposeCard/__tests__/SystemPurposeEditModal.test.js +0 -2
  262. data/webpack/components/extensions/Hosts/ActionsBar/index.js +1 -0
  263. data/webpack/components/extensions/Hosts/BulkActions/BulkActionsConstants.js +7 -0
  264. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/BulkChangeHostCollectionsModal.js +388 -0
  265. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/__tests__/BulkChangeHostCollectionsModal.test.js +640 -0
  266. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/actions.js +28 -0
  267. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/index.js +71 -0
  268. data/webpack/components/extensions/Hosts/BulkActions/BulkErrataWizard/BulkErrataWizard.js +1 -1
  269. data/webpack/components/extensions/Hosts/BulkActions/BulkPackagesWizard/02_BulkPackagesTable.js +10 -3
  270. data/webpack/components/extensions/Hosts/BulkActions/BulkPackagesWizard/BulkPackagesWizard.js +51 -24
  271. data/webpack/components/extensions/Hosts/BulkActions/HostReview.js +7 -0
  272. data/webpack/containers/Application/config.js +11 -1
  273. data/webpack/global_index.js +3 -0
  274. data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/BootedContainerImagesConstants.js +1 -1
  275. data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/BootedContainerImagesPage.js +7 -43
  276. data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/__tests__/bootedContainerImagesPage.test.js +1 -1
  277. data/webpack/scenes/ContainerImages/ContainerImagesPage.js +86 -0
  278. data/webpack/scenes/ContainerImages/LabelsAnnotationsModal.js +105 -0
  279. data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetails.js +218 -0
  280. data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetailsActions.js +15 -0
  281. data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetailsSelectors.js +16 -0
  282. data/webpack/scenes/ContainerImages/Synced/Details/__tests__/ManifestDetails.test.js +395 -0
  283. data/webpack/scenes/ContainerImages/Synced/Details/__tests__/manifestDetails.fixtures.json +43 -0
  284. data/webpack/scenes/ContainerImages/Synced/Details/__tests__/manifestList.fixtures.json +58 -0
  285. data/webpack/scenes/ContainerImages/Synced/Details/index.js +4 -0
  286. data/webpack/scenes/ContainerImages/Synced/SyncedContainerImagesPage.js +359 -0
  287. data/webpack/scenes/ContainerImages/Synced/SyncedContainerImagesPage.scss +21 -0
  288. data/webpack/scenes/ContainerImages/Synced/__tests__/LabelsAnnotationsModal.test.js +69 -0
  289. data/webpack/scenes/ContainerImages/Synced/__tests__/SyncedContainerImagesPage.test.js +335 -0
  290. data/webpack/scenes/ContainerImages/Synced/__tests__/syncedContainerImages.fixtures.json +105 -0
  291. data/webpack/scenes/ContainerImages/TableEmptyState.js +67 -0
  292. data/webpack/scenes/ContainerImages/containerImagesHelpers.js +48 -0
  293. data/webpack/scenes/ContainerImages/index.js +4 -0
  294. data/webpack/scenes/ContentViews/Create/CreateContentViewForm.js +29 -3
  295. data/webpack/scenes/ContentViews/Create/__tests__/contentViewCreateResult.fixtures.json +1 -0
  296. data/webpack/scenes/ContentViews/Create/__tests__/createContentView.test.js +45 -1
  297. data/webpack/scenes/ContentViews/Delete/__tests__/affectedHosts.fixtures.json +0 -1
  298. data/webpack/scenes/ContentViews/Details/ContentViewInfo.js +59 -1
  299. data/webpack/scenes/ContentViews/Details/Filters/CVDebFilterContent.js +1 -0
  300. data/webpack/scenes/ContentViews/Details/Filters/Rules/DebPackage/AddEditDebPackageRuleModal.js +164 -24
  301. data/webpack/scenes/ContentViews/Details/Filters/__tests__/CVDebFilterContent.test.js +268 -0
  302. data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvDebFilterDetail.fixtures.json +95 -0
  303. data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvDebFilterRules.fixtures.json +31 -0
  304. data/webpack/scenes/ContentViews/Details/Filters/__tests__/emptyCVDebFilterRules.fixtures.json +10 -0
  305. data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/__tests__/hosts.fixtures.json +0 -1
  306. data/webpack/scenes/ContentViews/Details/Versions/Delete/__tests__/cvAffectedHosts.fixture.json +0 -1
  307. data/webpack/scenes/ContentViews/Details/__tests__/contentViewRollingDetail.test.js +15 -0
  308. data/webpack/scenes/ContentViews/Details/__tests__/contentViewRollingDetails.fixtures.json +1 -0
  309. data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +9 -0
  310. data/webpack/scenes/FlatpakRemotes/CreateEdit/CreateFlatpakRemoteModal.js +5 -3
  311. data/webpack/scenes/FlatpakRemotes/CreateEdit/EditFlatpakRemotesModal.js +1 -1
  312. data/webpack/scenes/FlatpakRemotes/CreateEdit/FlatpakRemoteform.js +35 -3
  313. data/webpack/scenes/FlatpakRemotes/Details/FlatpakRemoteDetails.js +1 -1
  314. data/webpack/scenes/FlatpakRemotes/Details/RemoteRepositories/RemoteRepositoriesTable.css +3 -0
  315. data/webpack/scenes/FlatpakRemotes/Details/RemoteRepositories/RemoteRepositoriesTable.js +63 -132
  316. data/webpack/scenes/FlatpakRemotes/FlatpakRemotesPage.js +67 -143
  317. data/webpack/scenes/SmartProxy/ExpandableCvDetails.js +10 -2
  318. data/webpack/scenes/SmartProxy/SmartProxyContentActions.js +13 -2
  319. data/webpack/scenes/SmartProxy/SmartProxyContentConstants.js +1 -0
  320. data/webpack/scenes/SmartProxy/SmartProxyExpandableTable.js +8 -2
  321. data/webpack/scenes/SmartProxy/__tests__/SmartProxyContentTest.js +67 -1
  322. data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetails.test.js.snap +2 -2
  323. data/webpack/scenes/Subscriptions/SubscriptionConstants.js +0 -2
  324. data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsActions.test.js.snap +2 -2
  325. metadata +83 -55
  326. data/app/lib/actions/katello/host/attach_subscriptions.rb +0 -59
  327. data/app/lib/actions/katello/host/auto_attach_subscriptions.rb +0 -22
  328. data/app/lib/actions/katello/host/remove_subscriptions.rb +0 -50
  329. data/app/lib/actions/katello/organization/simple_content_access/disable.rb +0 -25
  330. data/app/lib/actions/katello/organization/simple_content_access/enable.rb +0 -25
  331. data/app/lib/actions/katello/organization/simple_content_access/toggle.rb +0 -42
  332. data/lib/katello/tasks/migrate_structure_content_for_deb.rake +0 -105
  333. data/lib/katello/tasks/upgrades/4.2/remove_checksum_values.rake +0 -17
  334. data/locale/action_names.rb +0 -186
  335. /data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/__tests__/bootedContainerImages.fixtures.js +0 -0
  336. /data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/index.js +0 -0
@@ -3,7 +3,7 @@
3
3
  "locale_data": {
4
4
  "katello": {
5
5
  "": {
6
- "Project-Id-Version": "katello 4.18.0",
6
+ "Project-Id-Version": "katello 4.19.0.pre.master",
7
7
  "Report-Msgid-Bugs-To": "",
8
8
  "PO-Revision-Date": "2017-12-19 20:14+0000",
9
9
  "Last-Translator": "Ondřej Gajdušek, 2025",
@@ -446,9 +446,6 @@
446
446
  "A remote execution job is in progress.": [
447
447
  "远程执行作业正在进行中。"
448
448
  ],
449
- "A service level for auto-healing process, e.g. SELF-SUPPORT": [
450
- "自动修复进程的服务级别,例如 SELF-SUPPORT"
451
- ],
452
449
  "A smart proxy seems to have been refreshed without pulpcore being running. Please refresh the smart proxy after ensuring that pulpcore services are running.": [
453
450
  "智能代理似乎已经刷新,且没有运行 pulpcore。请在确保 pulpcore 服务已运行后刷新智能代理。"
454
451
  ],
@@ -551,12 +548,15 @@
551
548
  "Add RPM rule": [
552
549
  "添加 RPM 规则"
553
550
  ],
551
+ "Add Red Hat Flatpak remote": [
552
+ ""
553
+ ],
554
+ "Add Red Hat flatpak remote": [
555
+ ""
556
+ ],
554
557
  "Add Subscriptions": [
555
558
  "添加订阅"
556
559
  ],
557
- "Add a subscription to a host": [
558
- "为主机添加一个订阅"
559
- ],
560
560
  "Add an alternate content source": [
561
561
  "添加一个备用内容源"
562
562
  ],
@@ -620,9 +620,6 @@
620
620
  "Add subscriptions consumed by a manifest from Red Hat Subscription Management": [
621
621
  "从 Red Hat Subscription Management 添加被清单消耗的订阅"
622
622
  ],
623
- "Add subscriptions to one or more hosts": [
624
- "将订阅添加到一个或多个主机"
625
- ],
626
623
  "Add subscriptions using the Add Subscriptions button.": [
627
624
  "使用 Add Subscriptions 按钮添加订阅。"
628
625
  ],
@@ -890,12 +887,6 @@
890
887
  "Array of pools to add": [
891
888
  "要添加的池数组"
892
889
  ],
893
- "Array of subscriptions to add": [
894
- "添加的订阅数组"
895
- ],
896
- "Array of subscriptions to remove": [
897
- "要删除的订阅数组"
898
- ],
899
890
  "Array of uploads to import": [
900
891
  "导入的上传数组"
901
892
  ],
@@ -950,15 +941,6 @@
950
941
  "At least one organization must exist.": [
951
942
  "至少必须存在一个组织。"
952
943
  ],
953
- "Attach a subscription": [
954
- "附加订阅"
955
- ],
956
- "Attach subscriptions": [
957
- "附加订阅"
958
- ],
959
- "Attach subscriptions to %s": [
960
- "将订阅附加到 %s"
961
- ],
962
944
  "Attempted to destroy consumer %s from candlepin, but consumer does not exist in candlepin": [
963
945
  "试图从 candlepin 销毁消费者 %s,但消费者不存在于 candlepin 中"
964
946
  ],
@@ -1070,6 +1052,9 @@
1070
1052
  "Bootc upgrade via Bootc interface": [
1071
1053
  "通过 Bootc 接口的 Bootc 升级"
1072
1054
  ],
1055
+ "Booted": [
1056
+ ""
1057
+ ],
1073
1058
  "Booted Container Images": [
1074
1059
  "引导的容器镜像"
1075
1060
  ],
@@ -1538,6 +1523,9 @@
1538
1523
  "Container image tags": [
1539
1524
  "容器镜像标签"
1540
1525
  ],
1526
+ "Container images": [
1527
+ ""
1528
+ ],
1541
1529
  "Container manifest lists": [
1542
1530
  "容器清单列表"
1543
1531
  ],
@@ -2051,12 +2039,6 @@
2051
2039
  "Create organization": [
2052
2040
  "创建机构"
2053
2041
  ],
2054
- "Create package filter rule": [
2055
- "创建软件包过滤规则"
2056
- ],
2057
- "Create rule": [
2058
- "创建规则"
2059
- ],
2060
2042
  "Credentials": [
2061
2043
  "凭证"
2062
2044
  ],
@@ -2456,9 +2438,6 @@
2456
2438
  "Disable Red Hat Insights.": [
2457
2439
  "禁用 Red Hat Insights。"
2458
2440
  ],
2459
- "Disable Simple Content Access": [
2460
- "禁用简单内容访问"
2461
- ],
2462
2441
  "Disable a repository from the set": [
2463
2442
  "从集合中禁用仓库"
2464
2443
  ],
@@ -2522,6 +2501,9 @@
2522
2501
  "Edit": [
2523
2502
  "编辑"
2524
2503
  ],
2504
+ "Edit DEB rule": [
2505
+ ""
2506
+ ],
2525
2507
  "Edit Flatpak Remote": [
2526
2508
  "编辑 Flatpak Remote"
2527
2509
  ],
@@ -2549,9 +2531,6 @@
2549
2531
  "Edit filter rule": [
2550
2532
  "列表过滤规则"
2551
2533
  ],
2552
- "Edit package filter rule": [
2553
- "编辑软件包过滤规则"
2554
- ],
2555
2534
  "Edit products": [
2556
2535
  "编辑产品"
2557
2536
  ],
@@ -2594,9 +2573,6 @@
2594
2573
  "Enable Red Hat repositories": [
2595
2574
  "启用 Red Hat 仓库"
2596
2575
  ],
2597
- "Enable Simple Content Access": [
2598
- "启用简单内容访问"
2599
- ],
2600
2576
  "Enable Tracer": [
2601
2577
  "启用跟踪"
2602
2578
  ],
@@ -3083,6 +3059,9 @@
3083
3059
  "Generate repository applicability": [
3084
3060
  "生成仓库适用性"
3085
3061
  ],
3062
+ "Generate username and password": [
3063
+ ""
3064
+ ],
3086
3065
  "Generated": [
3087
3066
  "生成"
3088
3067
  ],
@@ -3506,9 +3485,6 @@
3506
3485
  "If set, newly created APT repos in Katello will use the same repo structure as the remote repos they are synchronized from. You may migrate existing APT repos to match the setting, by running 'foreman-rake katello:migrate_structure_content_for_deb'.": [
3507
3486
  "如果设置,在 Katello 中新创建的 APT 仓库将使用它们从其中同步的远程仓库相同的仓库结构。您可以通过运行 'foreman-rake katello:migrate_structure_content_for_deb' 来迁移现有的 APT 存储库来匹配相关的设置。"
3508
3487
  ],
3509
- "If specified, remove the first instance of a subscription with matching id and quantity": [
3510
- "如果指定,删除具有匹配 id 和数量的订阅的第一个实例"
3511
- ],
3512
3488
  "If the smart proxies' assigned HTTP proxies should be used": [
3513
3489
  "智能代理分配的 HTTP 代理是否应该使用"
3514
3490
  ],
@@ -3932,6 +3908,9 @@
3932
3908
  "It's not possible to promote a rolling content view.": [
3933
3909
  "无法提升一个滚动内容视图。"
3934
3910
  ],
3911
+ "It's not possible to provide environment_ids for anything other than a rolling content view.": [
3912
+ ""
3913
+ ],
3935
3914
  "It's not possible to publish a rolling content view.": [
3936
3915
  "无法发布一个滚动内容视图。"
3937
3916
  ],
@@ -4331,6 +4310,9 @@
4331
4310
  "List of hypervisor guest uuids": [
4332
4311
  "hypervisor 客户系统 uuid 列表"
4333
4312
  ],
4313
+ "List of lifecycle environments for rolling content views": [
4314
+ ""
4315
+ ],
4334
4316
  "List of package group names (Deprecated)": [
4335
4317
  "软件包组名称列表(已弃用)"
4336
4318
  ],
@@ -5231,9 +5213,6 @@
5231
5213
  "Organization ID": [
5232
5214
  "机构 ID"
5233
5215
  ],
5234
- "Organization ID is required": [
5235
- "必须提供机构 ID"
5236
- ],
5237
5216
  "Organization ID or title": [
5238
5217
  "机构 id 或名称"
5239
5218
  ],
@@ -5717,6 +5696,9 @@
5717
5696
  "Promotion to Environment": [
5718
5697
  "升级到环境"
5719
5698
  ],
5699
+ "Provide credentials if the registry requires authentication": [
5700
+ ""
5701
+ ],
5720
5702
  "Provide the required information and click {update} below to save changes.": [
5721
5703
  "提供所需信息并点下面的 {update} 保存更改。"
5722
5704
  ],
@@ -5843,15 +5825,6 @@
5843
5825
  "Quantity of entitlements to bind": [
5844
5826
  "绑定权利的数量"
5845
5827
  ],
5846
- "Quantity of specified subscription to remove": [
5847
- "要删除的指定订阅数量"
5848
- ],
5849
- "Quantity of this subscription to add": [
5850
- "添加的这个订阅的数量"
5851
- ],
5852
- "Quantity of this subscriptions to add": [
5853
- "添加的这个订阅的数量"
5854
- ],
5855
5828
  "Quantity to Allocate": [
5856
5829
  "分配数量"
5857
5830
  ],
@@ -6020,9 +5993,6 @@
6020
5993
  "Register a host with subscription and information": [
6021
5994
  "注册具有订阅和信息的主机"
6022
5995
  ],
6023
- "Register host '%s' before attaching subscriptions": [
6024
- "在附加订阅之前注册主机 '%s'"
6025
- ],
6026
5996
  "Registered": [
6027
5997
  "注册"
6028
5998
  ],
@@ -6167,18 +6137,6 @@
6167
6137
  "Remove products from sync plan": [
6168
6138
  "从同步计划中删除产品"
6169
6139
  ],
6170
- "Remove subscriptions": [
6171
- "删除订阅"
6172
- ],
6173
- "Remove subscriptions from %s": [
6174
- "从 %s 中删除订阅"
6175
- ],
6176
- "Remove subscriptions from a host": [
6177
- "从一个主机中删除订阅"
6178
- ],
6179
- "Remove subscriptions from one or more hosts": [
6180
- "从一个或多个主机上删除订阅"
6181
- ],
6182
6140
  "Remove versions and/or environments from a content view and reassign systems and keys": [
6183
6141
  "从内容视图中删除版本和/或环境,并重新分配系统和密钥"
6184
6142
  ],
@@ -6398,6 +6356,9 @@
6398
6356
  "Return Red Hat (non-custom) products only": [
6399
6357
  "仅返回红帽(非定制)产品"
6400
6358
  ],
6359
+ "Return a list of installed debs distinct by name": [
6360
+ ""
6361
+ ],
6401
6362
  "Return a list of installed packages distinct by name": [
6402
6363
  "返回名称不同的安装的软件包列表"
6403
6364
  ],
@@ -6578,6 +6539,9 @@
6578
6539
  "Save": [
6579
6540
  "保存"
6580
6541
  ],
6542
+ "Save Environments": [
6543
+ ""
6544
+ ],
6581
6545
  "Saving alternate content source...": [
6582
6546
  "更新备用内容源..."
6583
6547
  ],
@@ -6824,11 +6788,14 @@
6824
6788
  "Service Level (SLA)": [
6825
6789
  "服务等级 (SLA)"
6826
6790
  ],
6791
+ "Service level": [
6792
+ ""
6793
+ ],
6827
6794
  "Service level of host": [
6828
6795
  "主机服务等级"
6829
6796
  ],
6830
- "Service level to be used for autoheal": [
6831
- "用于自动修复的服务级别"
6797
+ "Service level, e.g. SELF-SUPPORT": [
6798
+ ""
6832
6799
  ],
6833
6800
  "Set content overrides": [
6834
6801
  "设置内容覆盖"
@@ -6854,9 +6821,6 @@
6854
6821
  "Sets the system purpose usage": [
6855
6822
  "设置系统用途使用"
6856
6823
  ],
6857
- "Sets whether the Host will autoheal subscriptions upon checkin": [
6858
- "设置主机是否在签入后自动修复订阅"
6859
- ],
6860
6824
  "Setting 'default_location_subscribed_hosts' is not set to a valid location.": [
6861
6825
  "'default_location_subscribed_hosts' 没有设置为一个有效位置。"
6862
6826
  ],
@@ -7007,6 +6971,9 @@
7007
6971
  "Smart proxy name": [
7008
6972
  "智能代理名称"
7009
6973
  ],
6974
+ "Smart proxy verify content checksum has started in the background": [
6975
+ ""
6976
+ ],
7010
6977
  "Sockets": [
7011
6978
  "插槽"
7012
6979
  ],
@@ -7121,8 +7088,8 @@
7121
7088
  "Something went wrong while refreshing alternate content sources: ": [
7122
7089
  "在刷新备用内容源时出现错误:"
7123
7090
  ],
7124
- "Something went wrong while refreshing content counts: ${getResponseErrorMsgs(error.response)}": [
7125
- "刷新内容计数时出现错误:${getResponseErrorMsgs(error.response)}"
7091
+ "Something went wrong while refreshing content counts: ${getResponseErrorMsgs(error?.response)}": [
7092
+ ""
7126
7093
  ],
7127
7094
  "Something went wrong while removing a filter rule! ${getResponseErrorMsgs(error.response)}": [
7128
7095
  "删除过滤规则时出现问题!${getResponseErrorMsgs(error.response)}"
@@ -7190,6 +7157,9 @@
7190
7157
  "Something went wrong while updating the content source. See the logs for more information": [
7191
7158
  "更新内容源时出现错误。如需更多信息,请参阅日志"
7192
7159
  ],
7160
+ "Something went wrong while verifying content checksums: ${getResponseErrorMsgs(error?.response)}": [
7161
+ ""
7162
+ ],
7193
7163
  "Something went wrong! Please check server logs!": [
7194
7164
  "出现错误!请检查服务器日志!"
7195
7165
  ],
@@ -7277,9 +7247,6 @@
7277
7247
  "Subscription Details": [
7278
7248
  "订阅详情"
7279
7249
  ],
7280
- "Subscription ID": [
7281
- "订阅 ID"
7282
- ],
7283
7250
  "Subscription Info": [
7284
7251
  "订阅信息"
7285
7252
  ],
@@ -7295,12 +7262,6 @@
7295
7262
  "Subscription Name": [
7296
7263
  "订阅名称"
7297
7264
  ],
7298
- "Subscription Pool id": [
7299
- "订阅池 ID"
7300
- ],
7301
- "Subscription Pool uuid": [
7302
- "订阅池 UUID"
7303
- ],
7304
7265
  "Subscription UUID": [
7305
7266
  "订阅 UUID"
7306
7267
  ],
@@ -7469,6 +7430,9 @@
7469
7430
  "Synced Content": [
7470
7431
  "同步的内容"
7471
7432
  ],
7433
+ "Synced container images content": [
7434
+ ""
7435
+ ],
7472
7436
  "Synchronize": [
7473
7437
  "同步"
7474
7438
  ],
@@ -7718,9 +7682,6 @@
7718
7682
  "The selected/Inherited Content View is not available for this Lifecycle Environment": [
7719
7683
  "此生命周期环境不支持所选/继承的内容视图"
7720
7684
  ],
7721
- "The specified organization is in Simple Content Access mode. Attaching subscriptions is disabled": [
7722
- "指定的机构处于“简单内容访问”模式。附加订阅已禁用"
7723
- ],
7724
7685
  "The subscription cannot be found upstream": [
7725
7686
  "无法在上游找到订阅"
7726
7687
  ],
@@ -7862,12 +7823,6 @@
7862
7823
  "This host is associated with multiple content view environments. If you assign a lifecycle environment and content view here, the host will be removed from the other environments.": [
7863
7824
  "此主机与多个内容视图环境关联。如果您在此处分配了一个生命周期环境和内容视图,则主机将从其他环境中删除。"
7864
7825
  ],
7865
- "This host's organization is in Simple Content Access mode. Attaching subscriptions is disabled.": [
7866
- "该主机的机构处于“简单内容访问”模式。自动附加被禁用。"
7867
- ],
7868
- "This host's organization is in Simple Content Access mode. Auto-attach is disabled": [
7869
- "该主机的机构处于“简单内容访问”模式。自动附加被禁用"
7870
- ],
7871
7826
  "This is disabled because a manifest task is in progress": [
7872
7827
  "由于清单任务正在进行中,因此已禁用"
7873
7828
  ],
@@ -7946,6 +7901,9 @@
7946
7901
  "To change content view environments, a specific organization must be selected from the organization context.": [
7947
7902
  "要更改内容视图环境,需要从机构上下文中选择一个特定的机构。"
7948
7903
  ],
7904
+ "To continue with Red Hat Flatpak remote, you need to generate your username and password in": [
7905
+ ""
7906
+ ],
7949
7907
  "To enable the synced content option, this host must use a content source, content view, and lifecycle environment which contain synced kickstart repositories for the selected architecture and operating system.": [
7950
7908
  "要启用同步的内容选项,此主机必须使用内容源、内容视图和生命周期环境,其中包含所选架构和操作系统的同步 kickstart 仓库。"
7951
7909
  ],
@@ -8021,12 +7979,6 @@
8021
7979
  "Traffic for all alternate content sources associated with this smart proxy will go through the chosen HTTP proxy.": [
8022
7980
  "与此智能代理关联的所有备用内容源的流量将通过所选的 HTTP 代理。"
8023
7981
  ],
8024
- "Trigger an auto-attach of subscriptions": [
8025
- "触发订阅的自动附加"
8026
- ],
8027
- "Trigger an auto-attach of subscriptions on one or more hosts": [
8028
- "在一个或多个主机上触发一个自动附加订阅"
8029
- ],
8030
7982
  "Try changing your search criteria.": [
8031
7983
  "尝试更改搜索设置。"
8032
7984
  ],
@@ -8180,9 +8132,6 @@
8180
8132
  "Unapplied Errata": [
8181
8133
  "未应用的勘误"
8182
8134
  ],
8183
- "Unattach a subscription": [
8184
- "取消附加的订阅"
8185
- ],
8186
8135
  "Unfiltered params array: %s.": [
8187
8136
  "未过滤的参数数组:%s"
8188
8137
  ],
@@ -8537,6 +8486,9 @@
8537
8486
  "Value must either be a boolean or 'default' for 'enabled'": [
8538
8487
  "值需要是一个布尔值,或 'default' 代表 'enabled'"
8539
8488
  ],
8489
+ "Verify Content Checksum": [
8490
+ ""
8491
+ ],
8540
8492
  "Verify SSL": [
8541
8493
  "验证 SSL"
8542
8494
  ],
@@ -8621,6 +8573,9 @@
8621
8573
  "View by": [
8622
8574
  "查看方法"
8623
8575
  ],
8576
+ "View container images in the local registry using the Synced tab. View container images booted by image mode hosts using the Booted tab. The Booted tab also shows images outside of the local container registry.": [
8577
+ ""
8578
+ ],
8624
8579
  "View content views": [
8625
8580
  "查看内容视图"
8626
8581
  ],
@@ -8909,9 +8864,6 @@
8909
8864
  "attempted to sync without a feed URL": [
8910
8865
  "尝试在没有 Feed URL 的情况下进行同步"
8911
8866
  ],
8912
- "auto attach subscriptions upon registration": [
8913
- "注册时自动附加订阅"
8914
- ],
8915
8867
  "base url to perform repo discovery on": [
8916
8868
  "执行仓库发现的基本 url"
8917
8869
  ],
@@ -9548,9 +9500,6 @@
9548
9500
  "start datetime of synchronization": [
9549
9501
  "開始同步的日期與時間"
9550
9502
  ],
9551
- "subscriptions not specified": [
9552
- "未指定订阅"
9553
- ],
9554
9503
  "sync plan description": [
9555
9504
  "同步計畫的描述"
9556
9505
  ],