katello 3.18.0.rc1 → 4.0.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 (345) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/katello/api/rhsm/candlepin_dynflow_proxy_controller.rb +0 -19
  3. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +1 -3
  4. data/app/controllers/katello/api/v2/api_controller.rb +1 -2
  5. data/app/controllers/katello/api/v2/capsule_content_controller.rb +2 -2
  6. data/app/controllers/katello/api/v2/content_credentials_controller.rb +24 -24
  7. data/app/controllers/katello/api/v2/content_export_incrementals_controller.rb +98 -0
  8. data/app/controllers/katello/api/v2/content_exports_controller.rb +88 -0
  9. data/app/controllers/katello/api/v2/content_imports_controller.rb +59 -0
  10. data/app/controllers/katello/api/v2/content_view_filters_controller.rb +16 -7
  11. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +57 -92
  12. data/app/controllers/katello/api/v2/content_views_controller.rb +12 -3
  13. data/app/controllers/katello/api/v2/host_debs_controller.rb +1 -0
  14. data/app/controllers/katello/api/v2/host_errata_controller.rb +2 -2
  15. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +2 -3
  16. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +20 -7
  17. data/app/controllers/katello/api/v2/products_bulk_actions_controller.rb +1 -1
  18. data/app/controllers/katello/api/v2/products_controller.rb +9 -9
  19. data/app/controllers/katello/api/v2/repositories_controller.rb +5 -19
  20. data/app/controllers/katello/api/v2/repository_sets_controller.rb +24 -14
  21. data/app/controllers/katello/api/v2/simple_content_access_controller.rb +34 -0
  22. data/app/controllers/katello/api/v2/subscriptions_controller.rb +1 -1
  23. data/app/controllers/katello/api/v2/upstream_subscriptions_controller.rb +8 -4
  24. data/app/controllers/katello/concerns/api/v2/authorization.rb +10 -0
  25. data/app/controllers/katello/concerns/api/v2/bulk_hosts_extensions.rb +22 -18
  26. data/app/controllers/katello/concerns/authorization/api/v2/content_views_controller.rb +1 -1
  27. data/app/controllers/katello/concerns/registration_controller_extensions.rb +16 -0
  28. data/app/helpers/katello/sync_management_helper.rb +0 -2
  29. data/app/lib/actions/candlepin/environment/create.rb +1 -1
  30. data/app/lib/actions/candlepin/environment/set_content.rb +1 -1
  31. data/app/lib/actions/helpers/smart_proxy_sync_history_helper.rb +24 -0
  32. data/app/lib/actions/katello/activation_key/create.rb +9 -11
  33. data/app/lib/actions/katello/applicability/hosts/bulk_generate.rb +6 -2
  34. data/app/lib/actions/katello/capsule_content/sync.rb +8 -8
  35. data/app/lib/actions/katello/capsule_content/sync_capsule.rb +31 -8
  36. data/app/lib/actions/katello/check_matching_content.rb +17 -0
  37. data/app/lib/actions/katello/content_view/environment_create.rb +6 -8
  38. data/app/lib/actions/katello/content_view/promote_to_environment.rb +1 -1
  39. data/app/lib/actions/katello/content_view/publish.rb +6 -5
  40. data/app/lib/actions/katello/content_view_version/import.rb +5 -11
  41. data/app/lib/actions/katello/content_view_version/import_library.rb +17 -0
  42. data/app/lib/actions/katello/content_view_version/incremental_update.rb +30 -10
  43. data/app/lib/actions/katello/host/hypervisors_update.rb +4 -4
  44. data/app/lib/actions/katello/host/update_system_purpose.rb +1 -1
  45. data/app/lib/actions/katello/host/upload_package_profile.rb +3 -1
  46. data/app/lib/actions/katello/host/upload_profiles.rb +8 -6
  47. data/app/lib/actions/katello/organization/create.rb +3 -5
  48. data/app/lib/actions/katello/organization/destroy.rb +1 -1
  49. data/app/lib/actions/katello/organization/manifest_delete.rb +3 -5
  50. data/app/lib/actions/katello/organization/manifest_import.rb +1 -1
  51. data/app/lib/actions/katello/organization/manifest_refresh.rb +1 -1
  52. data/app/lib/actions/katello/repository/check_matching_content.rb +3 -1
  53. data/app/lib/actions/katello/repository/clone_contents.rb +8 -11
  54. data/app/lib/actions/katello/repository/create.rb +0 -8
  55. data/app/lib/actions/katello/repository/filtered_index_content.rb +3 -0
  56. data/app/lib/actions/katello/repository/import_upload.rb +2 -0
  57. data/app/lib/actions/katello/repository/index_content.rb +1 -0
  58. data/app/lib/actions/katello/repository/multi_clone_contents.rb +9 -12
  59. data/app/lib/actions/katello/repository/remove_content.rb +1 -1
  60. data/app/lib/actions/katello/repository/sync.rb +3 -1
  61. data/app/lib/actions/katello/repository/update.rb +1 -8
  62. data/app/lib/actions/katello/repository/upload_files.rb +1 -0
  63. data/app/lib/actions/middleware/execute_if_contents_changed.rb +4 -1
  64. data/app/lib/actions/middleware/record_smart_proxy_sync_history.rb +35 -0
  65. data/app/lib/actions/pulp/consumer/sync_capsule.rb +4 -2
  66. data/app/lib/actions/pulp/orchestration/repository/refresh_repos.rb +0 -6
  67. data/app/lib/actions/pulp/repository/distributor_publish.rb +1 -1
  68. data/app/lib/actions/pulp3/abstract_async_task.rb +1 -0
  69. data/app/lib/actions/pulp3/capsule_content/refresh_distribution.rb +3 -3
  70. data/app/lib/actions/pulp3/capsule_content/sync.rb +1 -0
  71. data/app/lib/actions/pulp3/content_migration.rb +10 -0
  72. data/app/lib/actions/pulp3/content_migration_presenter.rb +59 -0
  73. data/app/lib/actions/pulp3/content_view/delete_repository_references.rb +1 -1
  74. data/app/lib/actions/pulp3/content_view_version/export.rb +6 -1
  75. data/app/lib/actions/pulp3/import_migration.rb +6 -1
  76. data/app/lib/actions/pulp3/orchestration/content_view_version/copy_version_units_to_library.rb +2 -1
  77. data/app/lib/actions/pulp3/orchestration/content_view_version/export.rb +30 -9
  78. data/app/lib/actions/pulp3/orchestration/content_view_version/export_library.rb +60 -0
  79. data/app/lib/actions/pulp3/orchestration/content_view_version/import.rb +0 -4
  80. data/app/lib/actions/pulp3/orchestration/repository/generate_metadata.rb +4 -1
  81. data/app/lib/actions/pulp3/orchestration/repository/import_upload.rb +16 -3
  82. data/app/lib/actions/pulp3/orchestration/repository/refresh_repos.rb +1 -6
  83. data/app/lib/actions/pulp3/repository/copy_content.rb +1 -1
  84. data/app/lib/actions/pulp3/repository/delete.rb +1 -1
  85. data/app/lib/actions/pulp3/repository/save_version.rb +1 -1
  86. data/app/lib/actions/pulp3/repository/upload_tag.rb +18 -0
  87. data/app/lib/katello/concerns/base_template_scope_extensions.rb +8 -0
  88. data/app/lib/katello/event_daemon/monitor.rb +53 -0
  89. data/app/lib/katello/event_daemon/runner.rb +99 -0
  90. data/app/lib/katello/logging.rb +32 -0
  91. data/app/lib/katello/messaging/connection.rb +1 -7
  92. data/app/lib/katello/validators/content_view_puppet_module_validator.rb +1 -1
  93. data/app/models/katello/activation_key.rb +2 -2
  94. data/app/models/katello/authorization/content_view_filter.rb +15 -0
  95. data/app/models/katello/authorization/content_view_version.rb +25 -2
  96. data/app/models/katello/authorization/content_view_version_export_history.rb +1 -1
  97. data/app/models/katello/authorization/organization.rb +8 -0
  98. data/app/models/katello/candlepin/repository_mapper.rb +1 -1
  99. data/app/models/katello/concerns/operatingsystem_extensions.rb +2 -0
  100. data/app/models/katello/concerns/organization_extensions.rb +2 -2
  101. data/app/models/katello/concerns/pulp_database_unit.rb +7 -0
  102. data/app/models/katello/concerns/redhat_extensions.rb +2 -2
  103. data/app/models/katello/concerns/smart_proxy_extensions.rb +33 -5
  104. data/app/models/katello/content_migration_progress.rb +4 -0
  105. data/app/models/katello/content_view.rb +35 -5
  106. data/app/models/katello/content_view_environment.rb +2 -2
  107. data/app/models/katello/content_view_filter.rb +5 -0
  108. data/app/models/katello/content_view_history.rb +2 -1
  109. data/app/models/katello/content_view_package_filter.rb +1 -1
  110. data/app/models/katello/content_view_puppet_environment.rb +2 -2
  111. data/app/models/katello/content_view_puppet_module.rb +8 -0
  112. data/app/models/katello/content_view_repository.rb +13 -1
  113. data/app/models/katello/content_view_version.rb +2 -1
  114. data/app/models/katello/content_view_version_export_history.rb +26 -1
  115. data/app/models/katello/erratum.rb +3 -1
  116. data/app/models/katello/glue/candlepin/pool.rb +2 -0
  117. data/app/models/katello/glue/pulp/repo.rb +0 -6
  118. data/app/models/katello/glue/pulp/repos.rb +1 -22
  119. data/app/models/katello/host/subscription_facet.rb +4 -0
  120. data/app/models/katello/ping.rb +11 -6
  121. data/app/models/katello/pool.rb +5 -0
  122. data/app/models/katello/product.rb +3 -3
  123. data/app/models/katello/repository.rb +36 -3
  124. data/app/models/katello/smart_proxy_sync_history.rb +8 -0
  125. data/app/models/katello/subscription_status.rb +3 -2
  126. data/app/presenters/katello/host_subscription_presenter.rb +3 -4
  127. data/app/presenters/katello/host_subscriptions_presenter.rb +24 -0
  128. data/app/services/katello/applicability/applicable_content_helper.rb +44 -15
  129. data/app/services/katello/candlepin_event_listener.rb +11 -19
  130. data/app/services/katello/event_monitor/poller_thread.rb +2 -11
  131. data/app/services/katello/pulp/smart_proxy_repository.rb +0 -15
  132. data/app/services/katello/pulp3/api/docker.rb +4 -0
  133. data/app/services/katello/pulp3/content_view_version/export.rb +122 -6
  134. data/app/services/katello/pulp3/content_view_version/import.rb +37 -22
  135. data/app/services/katello/pulp3/content_view_version/import_export_common.rb +6 -16
  136. data/app/services/katello/pulp3/content_view_version/import_validator.rb +84 -0
  137. data/app/services/katello/pulp3/docker_manifest.rb +1 -0
  138. data/app/services/katello/pulp3/docker_tag.rb +1 -0
  139. data/app/services/katello/pulp3/migration.rb +51 -10
  140. data/app/services/katello/pulp3/repository.rb +13 -4
  141. data/app/services/katello/pulp3/repository/docker.rb +5 -0
  142. data/app/services/katello/pulp3/repository/yum.rb +15 -10
  143. data/app/services/katello/pulp3/task.rb +7 -3
  144. data/app/services/katello/pulp3/task_group.rb +10 -0
  145. data/app/services/katello/repository_type.rb +3 -2
  146. data/app/services/katello/smart_proxy_helper.rb +9 -0
  147. data/app/views/foreman/hosts/_registration.html.erb +12 -0
  148. data/app/views/foreman/smart_proxies/_content_tab.html.erb +4 -47
  149. data/app/views/foreman/smart_proxies/show.html.erb +1 -1
  150. data/app/views/katello/api/v2/capsule_content/sync_status.json.rabl +22 -25
  151. data/app/views/katello/api/v2/content_view_version_export_histories/show.json.rabl +1 -0
  152. data/app/views/katello/api/v2/content_views/base.json.rabl +1 -0
  153. data/app/views/katello/api/v2/content_views/show.json.rabl +6 -0
  154. data/app/views/katello/api/v2/organizations/show.json.rabl +7 -9
  155. data/app/views/katello/layouts/react.html.erb +3 -2
  156. data/app/views/overrides/activation_keys/_host_tab_pane.html.erb +1 -5
  157. data/app/views/overrides/organizations/_edit_override.html.erb +1 -4
  158. data/app/views/overrides/smart_proxies/_environment_tab.html.erb +1 -1
  159. data/app/views/overrides/smart_proxies/_environment_tab_pane.html.erb +1 -1
  160. data/config/katello.yaml.example +0 -3
  161. data/config/routes/api/v2.rb +31 -13
  162. data/db/migrate/20150930183738_migrate_content_hosts.rb +1 -1
  163. data/db/migrate/20191204214919_add_content_view_version_counts.rb +0 -1
  164. data/db/migrate/20200514092553_move_katello_fields_from_hostgroups.katello.rb +5 -2
  165. data/db/migrate/20200929200357_create_katello_smart_proxy_sync_history.rb +13 -0
  166. data/db/migrate/20201021150008_add_import_only_to_katello_content_view.rb +5 -0
  167. data/db/migrate/20201119211133_pulp3_migration_progress.rb +9 -0
  168. data/db/migrate/20210119162528_delete_puppet_and_ostree_repos.rb +56 -0
  169. data/db/migrate/20210128231228_add_type_and_from_cvv_to_cvv_export_history.rb +14 -0
  170. data/db/migrate/20210201163238_migrate_background_download_policy_to_migrate.rb +7 -0
  171. data/db/seeds.d/104-proxy.rb +1 -1
  172. data/db/seeds.d/111-upgrade_tasks.rb +2 -1
  173. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsule-content/capsule-content.controller.js +1 -1
  174. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/views/katello-agent-notice.html +1 -1
  175. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html +35 -40
  176. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-register-os-client.directive.js +17 -0
  177. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +2 -2
  178. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +2 -2
  179. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register-client.html +12 -5
  180. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register-deb-client.html +38 -0
  181. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register-oracle-client.html +5 -0
  182. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register-sles-client.html +28 -0
  183. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register.html +14 -11
  184. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.controller.js +6 -2
  185. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-activation-keys.controller.js +8 -3
  186. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-content-hosts.controller.js +9 -3
  187. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details.controller.js +12 -0
  188. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-filter-details.html +2 -2
  189. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details.html +7 -7
  190. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html +7 -1
  191. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-publish.html +4 -0
  192. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/new/content-view-new.controller.js +17 -3
  193. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/new/views/content-view-new.html +16 -2
  194. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/views/content-views.html +5 -0
  195. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +78 -7
  196. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de.po +17 -20
  197. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/es.po +17 -24
  198. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/fr.po +1292 -1170
  199. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/it.po +17 -20
  200. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ja.po +858 -807
  201. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ko.po +18 -19
  202. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt_BR.po +17 -24
  203. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ru.po +17 -18
  204. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_CN.po +986 -971
  205. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_TW.po +19 -20
  206. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/translations.js +9 -9
  207. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +2 -2
  208. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +1 -1
  209. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/download-policy.service.js +0 -1
  210. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +1 -1
  211. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repository-types.service.js +8 -1
  212. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +2 -2
  213. data/lib/katello/engine.rb +6 -6
  214. data/lib/katello/middleware/event_daemon.rb +1 -1
  215. data/lib/katello/permission_creator.rb +35 -14
  216. data/lib/katello/plugin.rb +8 -3
  217. data/lib/katello/tasks/delete_orphaned_content.rake +1 -3
  218. data/lib/katello/tasks/jenkins.rake +1 -1
  219. data/lib/katello/tasks/pulp3_content_switchover.rake +1 -1
  220. data/lib/katello/tasks/pulp3_migration.rake +18 -6
  221. data/lib/katello/tasks/pulp3_migration_abort.rake +22 -0
  222. data/lib/katello/tasks/pulp3_migration_stats.rake +28 -8
  223. data/lib/katello/tasks/pulp3_post_migration_check.rake +1 -3
  224. data/lib/katello/tasks/receptor/extract_orgs.rake +1 -1
  225. data/lib/katello/tasks/reimport.rake +1 -1
  226. data/lib/katello/tasks/repository.rake +3 -5
  227. data/lib/katello/tasks/upgrades/4.0/remove_ostree_puppet_content.rake +16 -0
  228. data/lib/katello/version.rb +1 -1
  229. data/lib/proxy_api/container_gateway.rb +21 -0
  230. data/locale/action_names.rb +51 -51
  231. data/locale/bn/katello.edit.po +0 -0
  232. data/locale/bn/katello.po +136 -51
  233. data/locale/cs/katello.edit.po +0 -0
  234. data/locale/cs/katello.po +136 -49
  235. data/locale/de/katello.edit.po +0 -0
  236. data/locale/de/katello.po +136 -48
  237. data/locale/en/katello.edit.po +0 -0
  238. data/locale/en/katello.po +136 -48
  239. data/locale/es/katello.edit.po +0 -0
  240. data/locale/es/katello.po +136 -48
  241. data/locale/fr/katello.edit.po +0 -0
  242. data/locale/fr/katello.po +136 -48
  243. data/locale/gu/katello.edit.po +0 -0
  244. data/locale/gu/katello.po +136 -51
  245. data/locale/hi/katello.edit.po +0 -0
  246. data/locale/hi/katello.po +136 -51
  247. data/locale/it/katello.edit.po +0 -0
  248. data/locale/it/katello.po +136 -48
  249. data/locale/ja/katello.edit.po +0 -0
  250. data/locale/ja/katello.po +136 -48
  251. data/locale/katello.pot +941 -767
  252. data/locale/kn/katello.edit.po +0 -0
  253. data/locale/kn/katello.po +136 -51
  254. data/locale/ko/katello.edit.po +0 -0
  255. data/locale/ko/katello.po +136 -48
  256. data/locale/mr/katello.edit.po +0 -0
  257. data/locale/mr/katello.po +136 -51
  258. data/locale/or/katello.edit.po +0 -0
  259. data/locale/or/katello.po +136 -51
  260. data/locale/pa/katello.edit.po +0 -0
  261. data/locale/pa/katello.po +136 -51
  262. data/locale/pt/katello.edit.po +0 -0
  263. data/locale/pt/katello.po +136 -51
  264. data/locale/pt_BR/katello.edit.po +0 -0
  265. data/locale/pt_BR/katello.po +136 -48
  266. data/locale/ru/katello.edit.po +0 -0
  267. data/locale/ru/katello.po +136 -48
  268. data/locale/ta/katello.edit.po +0 -0
  269. data/locale/ta/katello.po +136 -51
  270. data/locale/te/katello.edit.po +0 -0
  271. data/locale/te/katello.po +136 -51
  272. data/locale/zh_CN/katello.edit.po +0 -0
  273. data/locale/zh_CN/katello.po +136 -48
  274. data/locale/zh_TW/katello.edit.po +0 -0
  275. data/locale/zh_TW/katello.po +136 -48
  276. data/package.json +1 -1
  277. data/webpack/__mocks__/foremanReact/Root/Context/ForemanContext.js +0 -1
  278. data/webpack/__mocks__/foremanReact/components/Pagination/PaginationHooks.js +2 -0
  279. data/webpack/__mocks__/foremanReact/components/common/dates/LongDateTime.js +5 -0
  280. data/webpack/{scenes/ContentViews/Details/Repositories → components/SelectableDropdown}/SelectableDropdown.js +20 -3
  281. data/webpack/components/SelectableDropdown/__tests__/SelectableDropdown.test.js +45 -0
  282. data/webpack/components/SelectableDropdown/index.js +3 -0
  283. data/webpack/components/Table/TableWrapper.js +2 -1
  284. data/webpack/components/Table/helpers.js +14 -0
  285. data/webpack/components/TypeAhead/TypeAhead.js +2 -1
  286. data/webpack/components/TypeAhead/pf3Search/TypeAheadSearch.js +2 -1
  287. data/webpack/components/TypeAhead/pf4Search/TypeAheadSearch.js +0 -1
  288. data/webpack/containers/Application/overrides.scss +6 -0
  289. data/webpack/index.js +6 -0
  290. data/webpack/redux/actions/RedHatRepositories/helpers.js +5 -5
  291. data/webpack/scenes/ContentViews/ContentViewsActions.js +31 -2
  292. data/webpack/scenes/ContentViews/ContentViewsConstants.js +5 -1
  293. data/webpack/scenes/ContentViews/Copy/ContentViewCopySelectors.js +16 -0
  294. data/webpack/scenes/ContentViews/Copy/CopyContentViewForm.js +77 -0
  295. data/webpack/scenes/ContentViews/Copy/CopyContentViewModal.js +44 -0
  296. data/webpack/scenes/ContentViews/Copy/__tests__/contentViewCopyResult.fixtures.json +42 -0
  297. data/webpack/scenes/ContentViews/Copy/__tests__/copyContentView.test.js +39 -0
  298. data/webpack/scenes/ContentViews/Copy/index.js +4 -0
  299. data/webpack/scenes/ContentViews/Create/ContentViewCreateSelectors.js +16 -0
  300. data/webpack/scenes/ContentViews/Create/ContentViewFormComponents.js +58 -0
  301. data/webpack/scenes/ContentViews/Create/CreateContentViewForm.js +175 -0
  302. data/webpack/scenes/ContentViews/Create/CreateContentViewModal.js +27 -0
  303. data/webpack/scenes/ContentViews/Create/__tests__/contentViewCreateResult.fixtures.json +42 -0
  304. data/webpack/scenes/ContentViews/Create/__tests__/createContentView.test.js +92 -0
  305. data/webpack/scenes/ContentViews/Create/index.js +4 -0
  306. data/webpack/scenes/ContentViews/Details/ContentViewDetailActions.js +16 -0
  307. data/webpack/scenes/ContentViews/Details/ContentViewDetailSelectors.js +20 -1
  308. data/webpack/scenes/ContentViews/Details/ContentViewDetails.js +17 -7
  309. data/webpack/scenes/ContentViews/Details/ContentViewInfo.js +19 -13
  310. data/webpack/scenes/ContentViews/Details/Filters/ContentType.js +40 -0
  311. data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilters.js +124 -0
  312. data/webpack/scenes/ContentViews/Details/Filters/__tests__/contentViewFilters.fixtures.json +134 -0
  313. data/webpack/scenes/ContentViews/Details/Filters/__tests__/contentViewFilters.test.js +92 -0
  314. data/webpack/scenes/ContentViews/Details/Repositories/ContentViewRepositories.js +44 -25
  315. data/webpack/scenes/ContentViews/Details/Repositories/__tests__/contentViewDetailRepos.test.js +17 -7
  316. data/webpack/scenes/ContentViews/Details/__tests__/contentViewDetail.test.js +24 -0
  317. data/webpack/scenes/ContentViews/Table/ContentViewsTable.js +53 -3
  318. data/webpack/scenes/ContentViews/Table/tableDataGenerator.js +4 -3
  319. data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +41 -0
  320. data/webpack/scenes/ContentViews/helpers.js +13 -0
  321. data/webpack/scenes/SmartProxy/Content.js +17 -0
  322. data/webpack/scenes/SmartProxy/SmartProxyContentActions.js +11 -0
  323. data/webpack/scenes/SmartProxy/SmartProxyContentConstants.js +3 -0
  324. data/webpack/scenes/SmartProxy/SmartProxyContentSelectors.js +16 -0
  325. data/webpack/scenes/SmartProxy/SmartProxyContentTable.js +152 -0
  326. data/webpack/scenes/SmartProxy/__tests__/SmartProxyContentResult.fixtures.json +140 -0
  327. data/webpack/scenes/SmartProxy/__tests__/SmartProxyContentTest.js +38 -0
  328. data/webpack/scenes/SmartProxy/index.js +4 -0
  329. data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +13 -11
  330. data/webpack/scenes/Subscriptions/Manifest/ManifestActions.js +3 -3
  331. data/webpack/scenes/Subscriptions/Manifest/__tests__/ManifestActions.test.js +2 -2
  332. data/webpack/scenes/Subscriptions/Manifest/__tests__/SimpleContentAccess.test.js +2 -2
  333. data/webpack/test-utils/react-testing-lib-wrapper.js +8 -2
  334. data/webpack/utils/helpers.js +3 -0
  335. metadata +110 -31
  336. data/app/controllers/katello/api/v2/gpg_keys_controller.rb +0 -114
  337. data/app/overrides/disable_turbolinks_on_proxies_index.rb +0 -5
  338. data/app/services/katello/event_daemon.rb +0 -135
  339. data/app/services/katello/pulp/content_counts_calculator.rb +0 -60
  340. data/lib/katello/tasks/common.rake +0 -7
  341. data/lib/katello/tasks/reports.rake +0 -4
  342. data/lib/katello/tasks/upgrades/3.10/update_gpg_key_urls.rake +0 -32
  343. data/webpack/__mocks__/foremanReact/components/common/Fill/GlobalFill.js +0 -3
  344. data/webpack/components/TypeAhead/pf4Search/TypeAheadSearch.scss +0 -5
  345. data/webpack/scenes/ContentViews/Table/actionResolver.js +0 -28
@@ -84,5 +84,17 @@ angular.module('Bastion.content-views').controller('ContentViewDetailsController
84
84
  };
85
85
 
86
86
  $scope.fetchContentView();
87
+
88
+ $scope.$watch('contentView.import_only', function () {
89
+ if ($scope.contentView.import_only) {
90
+ /* eslint-disable camelcase */
91
+ $scope.contentView.solve_dependencies = false;
92
+ /* eslint-enable camelcase */
93
+ }
94
+ });
95
+
96
+ $scope.importOnlyEnabled = function() {
97
+ return RepositoryTypesService.pulp3Supported('yum');
98
+ };
87
99
  }]
88
100
  );
@@ -59,7 +59,7 @@
59
59
  <td bst-table-cell>
60
60
  <div class="form-group">
61
61
  <input class="form-control"
62
- ng-hide="denied('edit_content_views', contentView)"
62
+ ng-hide="denied('view_content_views', contentView)"
63
63
  ng-model="rule.name"
64
64
  uib-typeahead="name for name in fetchAutocompleteName($viewValue)"
65
65
  ng-readonly="!rule.editMode"/>
@@ -179,4 +179,4 @@
179
179
  </tbody>
180
180
  </table>
181
181
  </div>
182
- </div>
182
+ </div>
@@ -13,7 +13,7 @@
13
13
  </div>
14
14
 
15
15
  <nav data-block="item-actions">
16
- <button type="button" class="btn btn-primary" ng-hide="denied('publish_content_views', contentView)"
16
+ <button type="button" class="btn btn-primary" ng-hide="denied('publish_content_views', contentView) || contentView.import_only"
17
17
  ui-sref="content-view.publish">
18
18
  <span translate>Publish New Version</span>
19
19
  </button>
@@ -73,7 +73,7 @@
73
73
  Repositories
74
74
  </a>
75
75
  </li>
76
- <li>
76
+ <li ng-hide="contentView.import_only">
77
77
  <a ui-sref="content-view.yum.filters" translate>
78
78
  Filters
79
79
  </a>
@@ -82,21 +82,21 @@
82
82
  </li>
83
83
 
84
84
  <li ng-class="{active: stateIncludes('content-view.repositories.deb')}"
85
- ng-hide="contentView.composite || !repositoryTypeEnabled('deb')">
85
+ ng-hide="contentView.composite || contentView.import_only || !repositoryTypeEnabled('deb')">
86
86
  <a ui-sref="content-view.repositories.deb.list" translate>
87
87
  Apt Repositories
88
88
  </a>
89
89
  </li>
90
90
 
91
91
  <li ng-class="{active: stateIncludes('content-view.repositories.file')}"
92
- ng-hide="contentView.composite || !repositoryTypeEnabled('file')">
92
+ ng-hide="contentView.composite || contentView.import_only || !repositoryTypeEnabled('file')">
93
93
  <a ui-sref="content-view.repositories.file.list" translate>
94
94
  File Repositories
95
95
  </a>
96
96
  </li>
97
97
 
98
98
  <li ng-class="{active: stateIncludes('content-view.puppet-modules')}"
99
- ng-hide="contentView.composite || !repositoryTypeEnabled('puppet')">
99
+ ng-hide="contentView.composite || contentView.import_only || !repositoryTypeEnabled('puppet')">
100
100
  <a ui-sref="content-view.puppet-modules.list" translate>
101
101
  Puppet Modules
102
102
  </a>
@@ -104,7 +104,7 @@
104
104
 
105
105
  <li uib-dropdown
106
106
  ng-class="{active: stateIncludes('content-view.repositories.docker') || stateIncludes('content-view.docker.filters')}"
107
- ng-hide="contentView.composite || !repositoryTypeEnabled('docker')">
107
+ ng-hide="contentView.composite || contentView.import_only || !repositoryTypeEnabled('docker')">
108
108
  <a uib-dropdown-toggle>
109
109
  <span translate>Container Images</span>
110
110
  <i class="fa fa-chevron-down"></i>
@@ -124,7 +124,7 @@
124
124
  </li>
125
125
 
126
126
  <li ng-class="{active: stateIncludes('content-view.repositories.ostree')}"
127
- ng-hide="contentView.composite || !repositoryTypeEnabled('ostree')">
127
+ ng-hide="contentView.composite || contentView.import_only || !repositoryTypeEnabled('ostree')">
128
128
  <a ui-sref="content-view.repositories.ostree.list" translate>
129
129
  OSTree Content
130
130
  </a>
@@ -24,6 +24,12 @@
24
24
  <dd ng-show="contentView.composite" translate>Yes</dd>
25
25
  <dd ng-hide="contentView.composite" translate>No</dd>
26
26
 
27
+ <div ng-show="importOnlyEnabled()">
28
+ <dt translate>Import-only</dt>
29
+ <dd ng-show="contentView.import_only" translate>Yes</dd>
30
+ <dd ng-hide="contentView.import_only" translate>No</dd>
31
+ </div>
32
+
27
33
  <dt translate>Force Puppet Environment</dt>
28
34
  <dd>
29
35
  <div bst-edit-checkbox="contentView.force_puppet_environment"
@@ -50,7 +56,7 @@
50
56
  </dd>
51
57
  </div>
52
58
 
53
- <div>
59
+ <div ng-if="!contentView.import_only">
54
60
  <dt translate>Solve Dependencies</dt>
55
61
  <dd>
56
62
  <div bst-edit-checkbox="contentView.solve_dependencies"
@@ -7,6 +7,10 @@
7
7
  It can be promoted to other environments from the Versions tab of this Content View.
8
8
  </p>
9
9
 
10
+ <div bst-alert="warning" ng-show="contentView.errors['messages'].length > 0">
11
+ <span translate>{{contentView.errors['messages'][0]}}</span>
12
+ </div>
13
+
10
14
  <header class="details-header">
11
15
  <h3 translate>Version Details</h3>
12
16
  </header>
@@ -11,8 +11,8 @@
11
11
  * @description
12
12
  */
13
13
  angular.module('Bastion.content-views').controller('NewContentViewController',
14
- ['$scope', 'ContentView', 'FormUtils', 'CurrentOrganization', 'contentViewSolveDependencies',
15
- function ($scope, ContentView, FormUtils, CurrentOrganization, contentViewSolveDependencies) {
14
+ ['$scope', 'ContentView', 'FormUtils', 'CurrentOrganization', 'contentViewSolveDependencies', 'RepositoryTypesService',
15
+ function ($scope, ContentView, FormUtils, CurrentOrganization, contentViewSolveDependencies, RepositoryTypesService) {
16
16
 
17
17
  function success(response) {
18
18
  var successState = 'content-view.repositories.yum.available';
@@ -44,17 +44,31 @@ angular.module('Bastion.content-views').controller('NewContentViewController',
44
44
  contentView.$save(success, error);
45
45
  };
46
46
 
47
+ $scope.importOnlyEnabled = function() {
48
+ return RepositoryTypesService.pulp3Supported('yum');
49
+ };
50
+
47
51
  $scope.$watch('contentView.name', function () {
48
- if ($scope.contentViewForm.name) {
52
+ if ($scope.contentViewForm && $scope.contentViewForm.name) {
49
53
  $scope.contentViewForm.name.$setValidity('server', true);
50
54
  FormUtils.labelize($scope.contentView);
51
55
  }
52
56
  });
53
57
 
58
+ $scope.$watch('contentView.import_only', function () {
59
+ if ($scope.contentView.import_only) {
60
+ $scope.contentView.composite = false;
61
+ /* eslint-disable camelcase */
62
+ $scope.contentView.solve_dependencies = false;
63
+ /* eslint-enable camelcase */
64
+ }
65
+ });
66
+
54
67
  $scope.$watch('contentView.composite', function () {
55
68
  if ($scope.contentView.composite) {
56
69
  /* eslint-disable camelcase */
57
70
  $scope.contentView.solve_dependencies = false;
71
+ $scope.contentView.import_only = false;
58
72
  } else {
59
73
  $scope.contentView.auto_publish = false;
60
74
  /* eslint-enable camelcase */
@@ -56,7 +56,7 @@
56
56
  </textarea>
57
57
  </div>
58
58
 
59
- <div bst-form-group>
59
+ <div bst-form-group ng-hide="contentView.import_only">
60
60
  <div class="checkbox">
61
61
  <label for="composite">
62
62
  <input id="composite"
@@ -70,7 +70,21 @@
70
70
  <p class="help-block" translate>A composite view contains other content views.</p>
71
71
  </div>
72
72
 
73
- <div bst-form-group ng-hide="contentView.composite">
73
+ <div bst-form-group ng-hide="!importOnlyEnabled() || contentView.composite">
74
+ <div class="checkbox">
75
+ <label for="import_only">
76
+ <input id="import_only"
77
+ name="import_only"
78
+ ng-model="contentView.import_only"
79
+ type="checkbox"
80
+ tabindex="4"/>
81
+ <span translate>Import-only</span>
82
+ </label>
83
+ </div>
84
+ <p class="help-block" translate>Designate whether this Content View is for importing from an upstream server. Import-only Content Views can not be published directly.</p>
85
+ </div>
86
+
87
+ <div bst-form-group ng-hide="contentView.composite || contentView.import_only">
74
88
  <div class="checkbox">
75
89
  <label for="solve_dependencies">
76
90
  <input id="solve_dependencies"
@@ -29,6 +29,7 @@
29
29
  <tr bst-table-head>
30
30
  <th bst-table-column><span translate>Name</span></th>
31
31
  <th bst-table-column><span translate>Composite View?</span></th>
32
+ <th bst-table-column ng-show="importOnlyEnabled()"><span translate>Import-only?</span></th>
32
33
  <th bst-table-column><span translate>Last Published</span></th>
33
34
  <th bst-table-column><span translate>Environments</span></th>
34
35
  <th bst-table-column><span translate>Repositories</span></th>
@@ -46,6 +47,10 @@
46
47
  <span ng-show="contentView.composite" translate>Yes</span>
47
48
  <span ng-hide="contentView.composite" translate>No</span>
48
49
  </td>
50
+ <td bst-table-cell ng-show="importOnlyEnabled()">
51
+ <span ng-show="contentView.import_only" translate>Yes</span>
52
+ <span ng-hide="contentView.import_only" translate>No</span>
53
+ </td>
49
54
  <td bst-table-cell>
50
55
  <span ng-show="contentView.last_published"><long-date-time date="contentView.last_published" /></span>
51
56
  <span ng-hide="contentView.last_published" translate>
@@ -521,6 +521,10 @@ msgstr ""
521
521
  msgid "Add ons"
522
522
  msgstr ""
523
523
 
524
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
525
+ msgid "Add ons:"
526
+ msgstr ""
527
+
524
528
  #: app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-group-filter-details.html
525
529
  msgid "Add Package Group"
526
530
  msgstr ""
@@ -1028,6 +1032,7 @@ msgstr[1] ""
1028
1032
 
1029
1033
  #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-environment-modal.html
1030
1034
  #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-release-version-modal.html
1035
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
1031
1036
  msgid "Assign"
1032
1037
  msgstr ""
1033
1038
 
@@ -1039,6 +1044,10 @@ msgstr ""
1039
1044
  msgid "Assign Release Version"
1040
1045
  msgstr ""
1041
1046
 
1047
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
1048
+ msgid "Assign System Purpose:"
1049
+ msgstr ""
1050
+
1042
1051
  #: app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-details.html
1043
1052
  msgid "Associations"
1044
1053
  msgstr ""
@@ -1192,6 +1201,7 @@ msgid "Build Time"
1192
1201
  msgstr ""
1193
1202
 
1194
1203
  #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-host-bulk-module-streams-modal.html
1204
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
1195
1205
  #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-traces-modal.html
1196
1206
  #: app/assets/javascripts/bastion_katello/content-views/deletion/views/content-view-deletion.html
1197
1207
  #: app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-activation-keys.html
@@ -1284,10 +1294,6 @@ msgstr ""
1284
1294
  msgid "Checksum Type"
1285
1295
  msgstr ""
1286
1296
 
1287
- #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
1288
- msgid "Choose <b>Default</b> to enable the repository for all architectures"
1289
- msgstr ""
1290
-
1291
1297
  #: app/assets/javascripts/bastion_katello/content-views/details/views/content-view-promotion.html
1292
1298
  msgid "Choose a lifecycle environment from the available promotion paths."
1293
1299
  msgstr ""
@@ -1524,6 +1530,10 @@ msgstr ""
1524
1530
  msgid "Content Host Status"
1525
1531
  msgstr ""
1526
1532
 
1533
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
1534
+ msgid "Content Host System Purpose"
1535
+ msgstr ""
1536
+
1527
1537
  #: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html
1528
1538
  msgid "Content Host:"
1529
1539
  msgstr ""
@@ -1771,6 +1781,10 @@ msgstr ""
1771
1781
  msgid "Cron Logic"
1772
1782
  msgstr ""
1773
1783
 
1784
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
1785
+ msgid "ctrl-click or shift-click to select multiple Add ons"
1786
+ msgstr ""
1787
+
1774
1788
  #: app/assets/javascripts/bastion_katello/content-hosts/content/content-host-errata.controller.js
1775
1789
  msgid "Current Lifecycle Environment (%e/%cv)"
1776
1790
  msgstr ""
@@ -1860,8 +1874,6 @@ msgid "Debs"
1860
1874
  msgstr ""
1861
1875
 
1862
1876
  #: app/assets/javascripts/bastion_katello/products/details/repositories/checksum.service.js
1863
- #: app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js
1864
- #: app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js
1865
1877
  msgid "Default"
1866
1878
  msgstr ""
1867
1879
 
@@ -1944,6 +1956,10 @@ msgstr ""
1944
1956
  msgid "Description"
1945
1957
  msgstr ""
1946
1958
 
1959
+ #: app/assets/javascripts/bastion_katello/content-views/new/views/content-view-new.html
1960
+ msgid "Designate whether this Content View is for importing from an upstream server. Import-only Content Views can not be published directly."
1961
+ msgstr ""
1962
+
1947
1963
  #: app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-details.html
1948
1964
  #: app/assets/javascripts/bastion_katello/content-credentials/details/views/content-credential-details.html
1949
1965
  #: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html
@@ -2605,6 +2621,15 @@ msgstr ""
2605
2621
  msgid "Immediate"
2606
2622
  msgstr ""
2607
2623
 
2624
+ #: app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html
2625
+ #: app/assets/javascripts/bastion_katello/content-views/new/views/content-view-new.html
2626
+ msgid "Import-only"
2627
+ msgstr ""
2628
+
2629
+ #: app/assets/javascripts/bastion_katello/content-views/views/content-views.html
2630
+ msgid "Import-only?"
2631
+ msgstr ""
2632
+
2608
2633
  #: app/assets/javascripts/bastion_katello/errata/errata-severity.filter.js
2609
2634
  msgid "Important"
2610
2635
  msgstr ""
@@ -2753,7 +2778,7 @@ msgstr ""
2753
2778
 
2754
2779
  #: app/assets/javascripts/bastion_katello/common/views/katello-agent-notice.html
2755
2780
  #: app/assets/javascripts/bastion_katello/content-hosts/views/register-client.html
2756
- msgid "Katello-agent is deprecated and will be removed in Katello 4.0. Consider migrating to Remote Execution."
2781
+ msgid "Katello-agent is deprecated and will be removed in a future release."
2757
2782
  msgstr ""
2758
2783
 
2759
2784
  #: app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html
@@ -3024,6 +3049,10 @@ msgstr ""
3024
3049
  msgid "Manage Sync Plan"
3025
3050
  msgstr ""
3026
3051
 
3052
+ #: app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html
3053
+ msgid "Manage System Purpose"
3054
+ msgstr ""
3055
+
3027
3056
  #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifests.html
3028
3057
  msgid "Manifest Lists"
3029
3058
  msgstr ""
@@ -3478,6 +3507,11 @@ msgstr ""
3478
3507
  msgid "No repository sets provided through subscriptions."
3479
3508
  msgstr ""
3480
3509
 
3510
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js
3511
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js
3512
+ msgid "No restriction"
3513
+ msgstr ""
3514
+
3481
3515
  #: app/assets/javascripts/bastion_katello/content-views/details/filters/views/filter-rule-matching-package-modal.html
3482
3516
  msgid "No RPMs were matched"
3483
3517
  msgstr ""
@@ -4626,6 +4660,10 @@ msgstr ""
4626
4660
  msgid "Restart Services on Content Host \"{{host.name}}\"?"
4627
4661
  msgstr ""
4628
4662
 
4663
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
4664
+ msgid "Restrict to <br>OS version"
4665
+ msgstr ""
4666
+
4629
4667
  #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
4630
4668
  msgid "Restrict to architecture"
4631
4669
  msgstr ""
@@ -4634,6 +4672,10 @@ msgstr ""
4634
4672
  msgid "Restrict to Architecture"
4635
4673
  msgstr ""
4636
4674
 
4675
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
4676
+ msgid "Restrict to OS version"
4677
+ msgstr ""
4678
+
4637
4679
  #: app/assets/javascripts/bastion_katello/tasks/views/task-details.html
4638
4680
  msgid "Result"
4639
4681
  msgstr ""
@@ -4643,6 +4685,10 @@ msgstr ""
4643
4685
  msgid "Role"
4644
4686
  msgstr ""
4645
4687
 
4688
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
4689
+ msgid "Role:"
4690
+ msgstr ""
4691
+
4646
4692
  #: app/assets/javascripts/bastion_katello/content-views/details/filters/views/filter-rule-matching-package-modal.html
4647
4693
  #: app/assets/javascripts/bastion_katello/packages/views/packages.html
4648
4694
  #: app/assets/javascripts/bastion_katello/content-views/details/filters/filter-helper.service.js
@@ -4798,10 +4844,18 @@ msgstr ""
4798
4844
  msgid "Service Level (SLA)"
4799
4845
  msgstr ""
4800
4846
 
4847
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
4848
+ msgid "Service Level:"
4849
+ msgstr ""
4850
+
4801
4851
  #: app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html
4802
4852
  msgid "Set Release Version"
4803
4853
  msgstr ""
4804
4854
 
4855
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
4856
+ msgid "Set System Purpose values on {{ hostCount }} selected content hosts?"
4857
+ msgstr ""
4858
+
4805
4859
  #: app/assets/javascripts/bastion_katello/errata/details/views/erratum-info.html
4806
4860
  msgid "Severity"
4807
4861
  msgstr ""
@@ -5204,6 +5258,10 @@ msgstr ""
5204
5258
  msgid "System Purpose allows you to set the system's intended use on your network and improves the accuracy of auto attaching subscriptions."
5205
5259
  msgstr ""
5206
5260
 
5261
+ #: app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-info.html
5262
+ msgid "System Purpose Management"
5263
+ msgstr ""
5264
+
5207
5265
  #: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html
5208
5266
  msgid "System Purpose Status"
5209
5267
  msgstr ""
@@ -5304,6 +5362,15 @@ msgstr ""
5304
5362
  msgid "The Remote Execution plugin needs to be installed in order to resolve Traces."
5305
5363
  msgstr ""
5306
5364
 
5365
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
5366
+ msgid "The repository will be enabled by default on content hosts with the selected architecture."
5367
+ msgstr ""
5368
+
5369
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
5370
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
5371
+ msgid "The repository will be enabled by default on content hosts with the selected OS version."
5372
+ msgstr ""
5373
+
5307
5374
  #: app/assets/javascripts/bastion_katello/activation-keys/new/views/activation-key-new.html
5308
5375
  msgid "The selected environment contains no Content Views, please select a different environment."
5309
5376
  msgstr ""
@@ -5746,6 +5813,10 @@ msgstr ""
5746
5813
  msgid "Usage Type"
5747
5814
  msgstr ""
5748
5815
 
5816
+ #: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-system-purpose-modal.html
5817
+ msgid "Usage Type:"
5818
+ msgstr ""
5819
+
5749
5820
  #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
5750
5821
  #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
5751
5822
  msgid "Use Ctrl-click to multi-select/deselect items."
@@ -328,6 +328,7 @@ msgstr ""
328
328
  "Inhaltsansichten. Komponenten, die eine Aktualisierung erfordern, werden "
329
329
  "darunter aufgelistet."
330
330
 
331
+ #: app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js
331
332
  #: app/assets/javascripts/bastion_katello/products/products.controller.js
332
333
  msgid "/foreman_tasks/tasks/%taskId"
333
334
  msgstr ""
@@ -1522,6 +1523,7 @@ msgstr ""
1522
1523
  msgid "Click to monitor task progress."
1523
1524
  msgstr ""
1524
1525
 
1526
+ #: app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js
1525
1527
  #: app/assets/javascripts/bastion_katello/products/bulk/products-bulk-http-proxy-modal.controller.js
1526
1528
  #: app/assets/javascripts/bastion_katello/products/details/product-repositories.controller.js
1527
1529
  #: app/assets/javascripts/bastion_katello/products/products.controller.js
@@ -2314,11 +2316,6 @@ msgstr "Bearbeiten"
2314
2316
  msgid "Enable"
2315
2317
  msgstr "Aktivieren"
2316
2318
 
2317
- #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
2318
- #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
2319
- msgid "Enable on Registration"
2320
- msgstr ""
2321
-
2322
2319
  #: app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-traces.html
2323
2320
  #: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html
2324
2321
  msgid "Enable Traces"
@@ -3512,11 +3509,9 @@ msgstr "Name"
3512
3509
 
3513
3510
  #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
3514
3511
  msgid ""
3515
- "Name of the upstream repository you want to sync. Example: 'busybox' or "
3516
- "'fedora/ssh'."
3512
+ "Name of the upstream repository you want to sync. Example: 'quay/busybox' or"
3513
+ " 'fedora/ssh'."
3517
3514
  msgstr ""
3518
- "Name des Upstream-Repositorys, das Sie synchronisieren möchten. Beispiel: "
3519
- "\"busybox\" oder \"fedora/ssh\"."
3520
3515
 
3521
3516
  #: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html
3522
3517
  msgid "Networking"
@@ -4271,9 +4266,11 @@ msgid "Product sync has been initiated in the background."
4271
4266
  msgstr ""
4272
4267
 
4273
4268
  #: app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js
4274
- msgid ""
4275
- "Product syncs has been initiated in the background. Click %s to monitor the "
4276
- "progress."
4269
+ msgid "Product syncs has been initiated in the background."
4270
+ msgstr ""
4271
+
4272
+ #: app/assets/javascripts/bastion_katello/products/products.controller.js
4273
+ msgid "Product verify checksum has been initiated in the background."
4277
4274
  msgstr ""
4278
4275
 
4279
4276
  #: app/assets/javascripts/bastion_katello/content-credentials/details/views/content-credential-details.html
@@ -5119,12 +5116,6 @@ msgid ""
5119
5116
  "will be synced."
5120
5117
  msgstr ""
5121
5118
 
5122
- #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
5123
- msgid ""
5124
- "Selecting this option will automatically enable this Repository when a Host "
5125
- "registers and consumes this subscription."
5126
- msgstr ""
5127
-
5128
5119
  #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
5129
5120
  msgid ""
5130
5121
  "Selecting this option will result in contents that are no longer part of the"
@@ -5924,8 +5915,8 @@ msgstr ""
5924
5915
 
5925
5916
  #: app/assets/javascripts/bastion_katello/subscriptions/views/content-access-mode-banner.html
5926
5917
  msgid ""
5927
- "This organization has Simple Content Access enabled. Hosts can consume from "
5928
- "all repositories in their Content View regardless of subscription status."
5918
+ "This organization has Simple Content Access enabled. Hosts are not required"
5919
+ " to have subscriptions attached to access repositories."
5929
5920
  msgstr ""
5930
5921
 
5931
5922
  #: app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-environments.html
@@ -6222,6 +6213,7 @@ msgstr ""
6222
6213
  #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
6223
6214
  msgid ""
6224
6215
  "URL of the registry you want to sync. Example: https://registry-1.docker.io/"
6216
+ " or https://quay.io/"
6225
6217
  msgstr ""
6226
6218
 
6227
6219
  #: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
@@ -6286,6 +6278,11 @@ msgstr ""
6286
6278
  msgid "Variant"
6287
6279
  msgstr ""
6288
6280
 
6281
+ #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-details.html
6282
+ #: app/assets/javascripts/bastion_katello/products/views/products.html
6283
+ msgid "Verify Content Checksum"
6284
+ msgstr ""
6285
+
6289
6286
  #: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
6290
6287
  #: app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html
6291
6288
  #: app/assets/javascripts/bastion_katello/products/discovery/views/discovery-create.html