katello 4.14.1 → 4.15.0.rc2

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 (459) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/common/chosen.jquery.js +3 -3
  3. data/app/assets/javascripts/katello/common/env_select_scroll.js +3 -3
  4. data/app/assets/javascripts/katello/common/katello.js +8 -7
  5. data/app/assets/javascripts/katello/common/katello_object.js +3 -3
  6. data/app/assets/javascripts/katello/common/menu.js +7 -7
  7. data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +6 -6
  8. data/app/assets/javascripts/katello/locale/bn/katello.js +259 -28
  9. data/app/assets/javascripts/katello/locale/bn_IN/katello.js +258 -27
  10. data/app/assets/javascripts/katello/locale/ca/katello.js +258 -27
  11. data/app/assets/javascripts/katello/locale/cs/katello.js +258 -27
  12. data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +258 -27
  13. data/app/assets/javascripts/katello/locale/de/katello.js +259 -28
  14. data/app/assets/javascripts/katello/locale/de_AT/katello.js +258 -27
  15. data/app/assets/javascripts/katello/locale/de_DE/katello.js +258 -27
  16. data/app/assets/javascripts/katello/locale/el/katello.js +258 -27
  17. data/app/assets/javascripts/katello/locale/en/katello.js +258 -27
  18. data/app/assets/javascripts/katello/locale/en_GB/katello.js +258 -27
  19. data/app/assets/javascripts/katello/locale/en_US/katello.js +258 -27
  20. data/app/assets/javascripts/katello/locale/es/katello.js +259 -28
  21. data/app/assets/javascripts/katello/locale/et_EE/katello.js +258 -27
  22. data/app/assets/javascripts/katello/locale/fr/katello.js +259 -28
  23. data/app/assets/javascripts/katello/locale/gl/katello.js +258 -27
  24. data/app/assets/javascripts/katello/locale/gu/katello.js +258 -27
  25. data/app/assets/javascripts/katello/locale/he_IL/katello.js +258 -27
  26. data/app/assets/javascripts/katello/locale/hi/katello.js +258 -27
  27. data/app/assets/javascripts/katello/locale/id/katello.js +258 -27
  28. data/app/assets/javascripts/katello/locale/it/katello.js +259 -28
  29. data/app/assets/javascripts/katello/locale/ja/katello.js +259 -28
  30. data/app/assets/javascripts/katello/locale/ka/katello.js +259 -28
  31. data/app/assets/javascripts/katello/locale/kn/katello.js +258 -27
  32. data/app/assets/javascripts/katello/locale/ko/katello.js +259 -28
  33. data/app/assets/javascripts/katello/locale/ml_IN/katello.js +258 -27
  34. data/app/assets/javascripts/katello/locale/mr/katello.js +258 -27
  35. data/app/assets/javascripts/katello/locale/nl_NL/katello.js +258 -27
  36. data/app/assets/javascripts/katello/locale/or/katello.js +258 -27
  37. data/app/assets/javascripts/katello/locale/pa/katello.js +258 -27
  38. data/app/assets/javascripts/katello/locale/pl/katello.js +258 -27
  39. data/app/assets/javascripts/katello/locale/pl_PL/katello.js +258 -27
  40. data/app/assets/javascripts/katello/locale/pt/katello.js +258 -27
  41. data/app/assets/javascripts/katello/locale/pt_BR/katello.js +259 -28
  42. data/app/assets/javascripts/katello/locale/ro/katello.js +258 -27
  43. data/app/assets/javascripts/katello/locale/ro_RO/katello.js +258 -27
  44. data/app/assets/javascripts/katello/locale/ru/katello.js +259 -28
  45. data/app/assets/javascripts/katello/locale/sl/katello.js +258 -27
  46. data/app/assets/javascripts/katello/locale/sv_SE/katello.js +258 -27
  47. data/app/assets/javascripts/katello/locale/ta/katello.js +259 -28
  48. data/app/assets/javascripts/katello/locale/ta_IN/katello.js +258 -27
  49. data/app/assets/javascripts/katello/locale/te/katello.js +258 -27
  50. data/app/assets/javascripts/katello/locale/tr/katello.js +258 -27
  51. data/app/assets/javascripts/katello/locale/vi/katello.js +258 -27
  52. data/app/assets/javascripts/katello/locale/vi_VN/katello.js +258 -27
  53. data/app/assets/javascripts/katello/locale/zh/katello.js +258 -27
  54. data/app/assets/javascripts/katello/locale/zh_CN/katello.js +259 -28
  55. data/app/assets/javascripts/katello/locale/zh_TW/katello.js +259 -28
  56. data/app/assets/javascripts/katello/organizations/download_certificate.js +1 -1
  57. data/app/assets/javascripts/katello/sync_management/sync_management.js +9 -9
  58. data/app/assets/javascripts/katello/widgets/env_content_view_selector.js +5 -5
  59. data/app/assets/javascripts/katello/widgets/path_selector.js +6 -6
  60. data/app/assets/javascripts/katello/widgets/subpanel_new.js +1 -1
  61. data/app/controllers/katello/api/registry/registry_proxies_controller.rb +7 -7
  62. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +6 -1
  63. data/app/controllers/katello/api/v2/activation_keys_controller.rb +131 -59
  64. data/app/controllers/katello/api/v2/api_controller.rb +1 -1
  65. data/app/controllers/katello/api/v2/capsule_content_controller.rb +21 -10
  66. data/app/controllers/katello/api/v2/content_view_components_controller.rb +1 -1
  67. data/app/controllers/katello/api/v2/content_view_environments_controller.rb +54 -0
  68. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +3 -3
  69. data/app/controllers/katello/api/v2/content_views_controller.rb +1 -1
  70. data/app/controllers/katello/api/v2/environments_controller.rb +1 -1
  71. data/app/controllers/katello/api/v2/exports_controller.rb +1 -1
  72. data/app/controllers/katello/api/v2/generic_content_units_controller.rb +2 -1
  73. data/app/controllers/katello/api/v2/host_collections_controller.rb +2 -2
  74. data/app/controllers/katello/api/v2/host_contents_controller.rb +1 -1
  75. data/app/controllers/katello/api/v2/host_errata_controller.rb +1 -1
  76. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +1 -1
  77. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +1 -4
  78. data/app/controllers/katello/api/v2/organizations_controller.rb +1 -1
  79. data/app/controllers/katello/api/v2/repositories_controller.rb +3 -2
  80. data/app/controllers/katello/api/v2/repository_sets_controller.rb +1 -1
  81. data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +10 -16
  82. data/app/controllers/katello/concerns/api/v2/multi_cv_params_handling.rb +24 -0
  83. data/app/controllers/katello/concerns/authorization/api/v2/content_views_controller.rb +2 -5
  84. data/app/controllers/katello/concerns/hosts_controller_extensions.rb +1 -1
  85. data/app/controllers/katello/concerns/registration_commands_controller_extensions.rb +1 -1
  86. data/app/helpers/katello/concerns/smart_proxy_helper_extensions.rb +5 -5
  87. data/app/helpers/katello/hosts_and_hostgroups_helper.rb +2 -2
  88. data/app/helpers/katello/katello_url_helper.rb +1 -1
  89. data/app/lib/actions/candlepin/product/content_create.rb +12 -1
  90. data/app/lib/actions/candlepin/product/content_update.rb +21 -4
  91. data/app/lib/actions/katello/activation_key/reassign.rb +4 -3
  92. data/app/lib/actions/katello/capsule_content/sync_capsule.rb +8 -3
  93. data/app/lib/actions/katello/capsule_content/update_content_counts.rb +21 -3
  94. data/app/lib/actions/katello/cdn_configuration/update.rb +1 -1
  95. data/app/lib/actions/katello/content_view/capsule_sync.rb +17 -1
  96. data/app/lib/actions/katello/content_view/incremental_updates.rb +1 -1
  97. data/app/lib/actions/katello/content_view/presenters/incremental_updates_presenter.rb +1 -1
  98. data/app/lib/actions/katello/content_view/remove.rb +8 -12
  99. data/app/lib/actions/katello/content_view_version/import.rb +1 -1
  100. data/app/lib/actions/katello/content_view_version/incremental_update.rb +2 -2
  101. data/app/lib/actions/katello/flatpak/scan_remote.rb +62 -0
  102. data/app/lib/actions/katello/host/hypervisors.rb +1 -1
  103. data/app/lib/actions/katello/product/content_create.rb +28 -19
  104. data/app/lib/actions/katello/product/content_destroy.rb +6 -5
  105. data/app/lib/actions/katello/product/destroy.rb +1 -1
  106. data/app/lib/actions/katello/repository/clone_contents.rb +14 -0
  107. data/app/lib/actions/katello/repository/create.rb +24 -17
  108. data/app/lib/actions/katello/repository/create_container_push_root.rb +44 -0
  109. data/app/lib/actions/katello/repository/create_root.rb +5 -15
  110. data/app/lib/actions/katello/repository/destroy.rb +3 -3
  111. data/app/lib/actions/katello/repository/discover.rb +1 -1
  112. data/app/lib/actions/katello/repository/finish_upload.rb +13 -0
  113. data/app/lib/actions/katello/repository/import_upload.rb +1 -1
  114. data/app/lib/actions/katello/repository/sync.rb +16 -0
  115. data/app/lib/actions/katello/repository/update.rb +11 -20
  116. data/app/lib/actions/katello/repository/upload_files.rb +1 -1
  117. data/app/lib/actions/katello/repository_set/enable_repository.rb +1 -1
  118. data/app/lib/actions/katello/repository_set/scan_cdn.rb +1 -1
  119. data/app/lib/actions/katello/upstream_subscriptions/bind_entitlement.rb +1 -1
  120. data/app/lib/actions/pulp3/capsule_content/sync.rb +1 -1
  121. data/app/lib/actions/pulp3/orchestration/content_view_version/export_library.rb +1 -1
  122. data/app/lib/actions/pulp3/orchestration/repository/create.rb +6 -1
  123. data/app/lib/actions/pulp3/orchestration/repository/trigger_update_repo_cert_guard.rb +1 -1
  124. data/app/lib/actions/pulp3/repository/initialize.rb +17 -0
  125. data/app/lib/actions/pulp3/repository/refresh_distribution.rb +1 -1
  126. data/app/lib/katello/api/constraints/register_with_activation_key_constraint.rb +11 -0
  127. data/app/lib/katello/concerns/base_template_scope_extensions.rb +1 -1
  128. data/app/lib/katello/http_resource.rb +6 -6
  129. data/app/lib/katello/messaging/stomp_connection.rb +4 -4
  130. data/app/lib/katello/resources/candlepin/activation_key.rb +1 -1
  131. data/app/lib/katello/resources/candlepin/owner.rb +1 -1
  132. data/app/lib/katello/resources/candlepin/product.rb +1 -1
  133. data/app/lib/katello/resources/candlepin.rb +1 -1
  134. data/app/lib/katello/resources/cdn/katello_cdn.rb +3 -3
  135. data/app/lib/katello/resources/cdn.rb +1 -1
  136. data/app/lib/katello/resources/discovery/container.rb +5 -3
  137. data/app/lib/katello/resources/discovery/yum.rb +3 -1
  138. data/app/lib/katello/resources/registry.rb +0 -3
  139. data/app/lib/katello/util/candlepin_repository_checker.rb +2 -2
  140. data/app/lib/katello/util/cveak_migrator.rb +38 -0
  141. data/app/lib/katello/util/deb.rb +9 -0
  142. data/app/lib/katello/util/deduplication_migrator.rb +8 -8
  143. data/app/lib/katello/util/model.rb +2 -2
  144. data/app/lib/katello/util/search.rb +5 -5
  145. data/app/lib/katello/util/task_status.rb +19 -19
  146. data/app/lib/katello/util/url_matcher.rb +3 -3
  147. data/app/lib/katello/validators/content_view_environment_org_validator.rb +2 -1
  148. data/app/lib/katello/validators/katello_url_format_validator.rb +2 -2
  149. data/app/mailers/katello/errata_mailer.rb +1 -4
  150. data/app/models/katello/activation_key.rb +123 -27
  151. data/app/models/katello/alternate_content_source.rb +5 -5
  152. data/app/models/katello/authorization/activation_key.rb +1 -1
  153. data/app/models/katello/authorization/content_view_environment.rb +7 -0
  154. data/app/models/katello/cdn_configuration.rb +1 -1
  155. data/app/models/katello/concerns/content_facet_host_extensions.rb +36 -38
  156. data/app/models/katello/concerns/host_managed_extensions.rb +19 -8
  157. data/app/models/katello/concerns/organization_extensions.rb +4 -4
  158. data/app/models/katello/concerns/redhat_extensions.rb +1 -1
  159. data/app/models/katello/concerns/smart_proxy_extensions.rb +84 -39
  160. data/app/models/katello/content.rb +3 -3
  161. data/app/models/katello/content_view.rb +15 -18
  162. data/app/models/katello/content_view_environment.rb +56 -15
  163. data/app/models/katello/content_view_environment_activation_key.rb +20 -0
  164. data/app/models/katello/content_view_erratum_filter_rule.rb +1 -1
  165. data/app/models/katello/content_view_filter.rb +2 -2
  166. data/app/models/katello/content_view_history.rb +1 -1
  167. data/app/models/katello/content_view_repository.rb +1 -1
  168. data/app/models/katello/content_view_version.rb +3 -3
  169. data/app/models/katello/content_view_version_export_history.rb +2 -2
  170. data/app/models/katello/content_view_version_import_history.rb +1 -1
  171. data/app/models/katello/events/delete_latest_content_view_version.rb +1 -1
  172. data/app/models/katello/flatpak_remote.rb +11 -0
  173. data/app/models/katello/flatpak_remote_repository.rb +12 -0
  174. data/app/models/katello/flatpak_remote_repository_manifest.rb +10 -0
  175. data/app/models/katello/glue/candlepin/activation_key.rb +1 -1
  176. data/app/models/katello/glue/candlepin/candlepin_object.rb +1 -1
  177. data/app/models/katello/glue/candlepin/pool.rb +1 -1
  178. data/app/models/katello/glue/pulp/repos.rb +1 -1
  179. data/app/models/katello/host/content_facet.rb +33 -17
  180. data/app/models/katello/host/info_provider.rb +2 -4
  181. data/app/models/katello/host/subscription_facet.rb +2 -2
  182. data/app/models/katello/host_available_module_stream.rb +1 -1
  183. data/app/models/katello/installed_product.rb +2 -2
  184. data/app/models/katello/kt_environment.rb +11 -6
  185. data/app/models/katello/ping.rb +2 -3
  186. data/app/models/katello/repository.rb +40 -6
  187. data/app/models/katello/rhel_lifecycle_status.rb +10 -10
  188. data/app/models/katello/root_repository.rb +14 -18
  189. data/app/models/katello/task_status.rb +1 -1
  190. data/app/models/katello/upstream_pool.rb +2 -2
  191. data/app/presenters/katello/product_content_presenter.rb +2 -2
  192. data/app/presenters/katello/repository_presenter.rb +3 -3
  193. data/app/presenters/katello/sync_status_presenter.rb +3 -3
  194. data/app/services/cert/certs.rb +6 -2
  195. data/app/services/katello/candlepin_event_listener.rb +1 -1
  196. data/app/services/katello/event_monitor/poller_thread.rb +1 -1
  197. data/app/services/katello/event_queue.rb +1 -1
  198. data/app/services/katello/product_content_finder.rb +10 -10
  199. data/app/services/katello/product_content_importer.rb +1 -1
  200. data/app/services/katello/pulp3/alternate_content_source.rb +2 -2
  201. data/app/services/katello/pulp3/ansible_collection.rb +1 -1
  202. data/app/services/katello/pulp3/api/apt.rb +4 -0
  203. data/app/services/katello/pulp3/content.rb +1 -0
  204. data/app/services/katello/pulp3/content_view_version/export.rb +3 -10
  205. data/app/services/katello/pulp3/content_view_version/export_validator.rb +1 -1
  206. data/app/services/katello/pulp3/content_view_version/import.rb +2 -2
  207. data/app/services/katello/pulp3/content_view_version/import_gpg_keys.rb +1 -1
  208. data/app/services/katello/pulp3/content_view_version/importable_products.rb +2 -2
  209. data/app/services/katello/pulp3/content_view_version/importable_repositories.rb +4 -4
  210. data/app/services/katello/pulp3/content_view_version/metadata_generator.rb +2 -2
  211. data/app/services/katello/pulp3/deb.rb +35 -1
  212. data/app/services/katello/pulp3/docker_manifest.rb +1 -1
  213. data/app/services/katello/pulp3/docker_manifest_list.rb +6 -2
  214. data/app/services/katello/pulp3/docker_tag.rb +1 -1
  215. data/app/services/katello/pulp3/erratum.rb +2 -2
  216. data/app/services/katello/pulp3/file_unit.rb +1 -1
  217. data/app/services/katello/pulp3/generic_content_unit.rb +1 -1
  218. data/app/services/katello/pulp3/module_stream.rb +2 -2
  219. data/app/services/katello/pulp3/repository/ansible_collection.rb +1 -1
  220. data/app/services/katello/pulp3/repository/apt.rb +22 -16
  221. data/app/services/katello/pulp3/repository/docker.rb +2 -2
  222. data/app/services/katello/pulp3/repository/file.rb +1 -1
  223. data/app/services/katello/pulp3/repository/generic.rb +1 -1
  224. data/app/services/katello/pulp3/repository/yum.rb +7 -7
  225. data/app/services/katello/pulp3/repository.rb +15 -9
  226. data/app/services/katello/pulp3/repository_mirror.rb +3 -3
  227. data/app/services/katello/registration_manager.rb +23 -6
  228. data/app/services/katello/repository_type.rb +3 -3
  229. data/app/services/katello/smart_proxy_helper.rb +3 -3
  230. data/app/services/katello/ui_notifications/content_view/delete_latest_version_failure.rb +1 -1
  231. data/app/services/katello/ui_notifications/subscriptions/expire_soon.rb +3 -3
  232. data/app/services/katello/ui_notifications/subscriptions/manifest_expire_soon_warning.rb +3 -3
  233. data/app/services/katello/ui_notifications/task_notification.rb +2 -2
  234. data/app/services/katello/upstream_connection_checker.rb +1 -1
  235. data/app/views/foreman/job_templates/resolve_traces.erb +8 -1
  236. data/app/views/foreman/job_templates/resolve_traces_-_katello_ansible_default.erb +4 -3
  237. data/app/views/foreman/job_templates/restart_services.erb +11 -3
  238. data/app/views/foreman/job_templates/restart_services_-_katello_ansible_default.erb +4 -3
  239. data/app/views/katello/api/v2/activation_keys/base.json.rabl +43 -8
  240. data/app/views/katello/api/v2/alternate_content_sources/base.json.rabl +1 -1
  241. data/app/views/katello/api/v2/capsule_content/sync_status.json.rabl +5 -5
  242. data/app/views/katello/api/v2/common/_metadata.json.rabl +1 -1
  243. data/app/views/katello/api/v2/content_credentials/show.json.rabl +1 -1
  244. data/app/views/katello/api/v2/content_facet/base.json.rabl +15 -6
  245. data/app/views/katello/api/v2/content_facet/show.json.rabl +1 -1
  246. data/app/views/katello/api/v2/content_view_environments/index.json.rabl +7 -0
  247. data/app/views/katello/api/v2/content_view_environments/show.json.rabl +33 -0
  248. data/app/views/katello/api/v2/content_view_filter_rules/show.json.rabl +1 -1
  249. data/app/views/katello/api/v2/content_view_filters/show.json.rabl +1 -1
  250. data/app/views/katello/api/v2/content_view_versions/base.json.rabl +3 -3
  251. data/app/views/katello/api/v2/content_views/base.json.rabl +3 -3
  252. data/app/views/katello/api/v2/content_views/show.json.rabl +1 -1
  253. data/app/views/katello/api/v2/debs/backend.json.rabl +7 -0
  254. data/app/views/katello/api/v2/debs/base.json.rabl +4 -0
  255. data/app/views/katello/api/v2/debs/show.json.rabl +2 -0
  256. data/app/views/katello/api/v2/docker_manifest_lists/show.json.rabl +1 -0
  257. data/app/views/katello/api/v2/docker_tags/_base.json.rabl +2 -2
  258. data/app/views/katello/api/v2/environments/show.json.rabl +4 -4
  259. data/app/views/katello/api/v2/gpg_keys/show.json.rabl +1 -1
  260. data/app/views/katello/api/v2/host_collections/base.json.rabl +1 -1
  261. data/app/views/katello/api/v2/hosts/base.json.rabl +2 -2
  262. data/app/views/katello/api/v2/package_groups/base.json.rabl +2 -2
  263. data/app/views/katello/api/v2/products/show.json.rabl +2 -2
  264. data/app/views/katello/api/v2/repositories/show.json.rabl +1 -1
  265. data/app/views/katello/api/v2/repository_sets/show.json.rabl +1 -1
  266. data/app/views/katello/api/v2/subscriptions/base.json.rabl +1 -1
  267. data/app/views/katello/api/v2/subscriptions/show.json.rabl +3 -3
  268. data/app/views/katello/api/v2/sync_plans/show.json.rabl +1 -1
  269. data/config/initializers/inflections.rb +11 -0
  270. data/config/katello.yaml.example +4 -10
  271. data/config/routes/api/registry.rb +0 -2
  272. data/config/routes/api/rhsm.rb +1 -4
  273. data/config/routes/api/v2.rb +2 -3
  274. data/db/migrate/20140716211853_repo_rename_feed_to_url.rb +1 -1
  275. data/db/migrate/20141003210742_add_docker_container_registry_url_to_providers.rb +1 -1
  276. data/db/migrate/20150224083608_remove_docker_registry_url.rb +1 -1
  277. data/db/migrate/20160808002834_add_files.rb +1 -1
  278. data/db/migrate/20161014133811_move_content_view_version_description_to_histories.rb +1 -1
  279. data/db/migrate/20200818192230_update_system_purpose_status.rb +1 -1
  280. data/db/migrate/20201012172713_remove_gpg_key_perms.rb +1 -1
  281. data/db/migrate/20210322142311_add_auth_url_token_to_root_repositories.rb +1 -1
  282. data/db/migrate/20211220185935_clean_duplicate_content_units.rb +2 -2
  283. data/db/migrate/20230717150442_change_change_content_source_job_template_name.rb +1 -1
  284. data/db/migrate/20240207191223_remove_entitlement_mode_host_statuses.rb +1 -1
  285. data/db/migrate/20240508100434_add_content_id_to_katello_repository.rb +5 -0
  286. data/db/migrate/20240730163043_add_content_view_environment_activation_key.rb +87 -0
  287. data/db/migrate/20240806130902_add_more_deb_fields.rb +15 -0
  288. data/db/migrate/20240903194428_add_priority_to_content_view_environment_activation_key.rb +5 -0
  289. data/db/migrate/20241007200316_add_fields_to_katello_docker_manifest_list.rb +8 -0
  290. data/db/migrate/20241007212705_add_bootc_facts_to_content_facet.rb +27 -0
  291. data/db/migrate/20241025151105_remove_pulp3_migrated_hrefs_from_content_tables.rb +10 -0
  292. data/db/migrate/20241030181402_create_katello_flatpak_tables.rb +41 -0
  293. data/db/seeds.d/106-mail_notifications.rb +9 -9
  294. data/db/seeds.d/108-subcription-bookmarks.rb +1 -1
  295. data/db/seeds.d/109-katello-notification-blueprints.rb +21 -21
  296. data/db/seeds.d/110-content-view-autopublish.rb +5 -5
  297. data/db/seeds.d/111-container-image-bookmarks.rb +1 -1
  298. data/db/seeds.d/111-upgrade_tasks.rb +1 -1
  299. data/engines/bastion/lib/bastion/engine.rb +1 -1
  300. data/engines/bastion/lib/bastion.rb +1 -1
  301. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +16 -0
  302. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-info.html +29 -15
  303. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-repository-sets.html +13 -0
  304. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys.html +2 -0
  305. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-host-collections-modal.controller.js +2 -0
  306. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-host-collections-modal.html +4 -4
  307. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/debs.routes.js +9 -0
  308. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-dependencies.html +54 -0
  309. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-info.html +13 -1
  310. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb.html +8 -1
  311. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +1 -1
  312. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +4 -0
  313. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js +2 -0
  314. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +11 -0
  315. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/activation_keys.scss +1 -1
  316. data/engines/bastion_katello/lib/bastion_katello/engine.rb +1 -1
  317. data/lib/katello/engine.rb +17 -15
  318. data/lib/katello/permission_creator.rb +51 -49
  319. data/lib/katello/permissions/host_permissions.rb +4 -4
  320. data/lib/katello/permissions/organization_permissions.rb +4 -4
  321. data/lib/katello/permissions/registry_permissions.rb +1 -1
  322. data/lib/katello/permissions/roles_permissions.rb +1 -1
  323. data/lib/katello/permissions/user_permissions.rb +1 -1
  324. data/lib/katello/plugin.rb +14 -8
  325. data/lib/katello/repository_types/docker.rb +4 -2
  326. data/lib/katello/repository_types/ostree.rb +5 -3
  327. data/lib/katello/repository_types/python.rb +1 -1
  328. data/lib/katello/repository_types/yum.rb +2 -1
  329. data/lib/katello/scheduled_jobs.rb +1 -1
  330. data/lib/katello/tasks/migrate_structure_content_for_deb.rake +105 -0
  331. data/lib/katello/tasks/receptor/extract_orgs.rake +1 -1
  332. data/lib/katello/tasks/reimport.rake +1 -1
  333. data/lib/katello/tasks/repository.rake +19 -9
  334. data/lib/katello/tasks/upgrades/4.1/reupdate_content_import_export_perms.rake +1 -1
  335. data/lib/katello/tasks/upgrades/4.3/fix_url_auth.rake +1 -1
  336. data/lib/katello/version.rb +1 -1
  337. data/locale/action_names.rb +92 -1
  338. data/locale/bn/LC_MESSAGES/katello.mo +0 -0
  339. data/locale/bn/katello.po +259 -28
  340. data/locale/bn_IN/LC_MESSAGES/katello.mo +0 -0
  341. data/locale/bn_IN/katello.po +258 -27
  342. data/locale/ca/LC_MESSAGES/katello.mo +0 -0
  343. data/locale/ca/katello.po +258 -27
  344. data/locale/cs/LC_MESSAGES/katello.mo +0 -0
  345. data/locale/cs/katello.po +258 -30
  346. data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
  347. data/locale/cs_CZ/katello.po +258 -27
  348. data/locale/de/LC_MESSAGES/katello.mo +0 -0
  349. data/locale/de/katello.po +259 -28
  350. data/locale/de_AT/LC_MESSAGES/katello.mo +0 -0
  351. data/locale/de_AT/katello.po +258 -27
  352. data/locale/de_DE/LC_MESSAGES/katello.mo +0 -0
  353. data/locale/de_DE/katello.po +258 -27
  354. data/locale/el/LC_MESSAGES/katello.mo +0 -0
  355. data/locale/el/katello.po +258 -27
  356. data/locale/en/LC_MESSAGES/katello.mo +0 -0
  357. data/locale/en/katello.po +258 -27
  358. data/locale/en_GB/LC_MESSAGES/katello.mo +0 -0
  359. data/locale/en_GB/katello.po +258 -27
  360. data/locale/en_US/LC_MESSAGES/katello.mo +0 -0
  361. data/locale/en_US/katello.po +258 -27
  362. data/locale/es/LC_MESSAGES/katello.mo +0 -0
  363. data/locale/es/katello.po +259 -28
  364. data/locale/et_EE/LC_MESSAGES/katello.mo +0 -0
  365. data/locale/et_EE/katello.po +258 -27
  366. data/locale/fr/LC_MESSAGES/katello.mo +0 -0
  367. data/locale/fr/katello.po +259 -28
  368. data/locale/gl/LC_MESSAGES/katello.mo +0 -0
  369. data/locale/gl/katello.po +258 -27
  370. data/locale/gu/LC_MESSAGES/katello.mo +0 -0
  371. data/locale/gu/katello.po +258 -27
  372. data/locale/he_IL/LC_MESSAGES/katello.mo +0 -0
  373. data/locale/he_IL/katello.po +258 -27
  374. data/locale/hi/LC_MESSAGES/katello.mo +0 -0
  375. data/locale/hi/katello.po +258 -27
  376. data/locale/id/LC_MESSAGES/katello.mo +0 -0
  377. data/locale/id/katello.po +258 -27
  378. data/locale/it/LC_MESSAGES/katello.mo +0 -0
  379. data/locale/it/katello.po +259 -28
  380. data/locale/ja/LC_MESSAGES/katello.mo +0 -0
  381. data/locale/ja/katello.po +259 -28
  382. data/locale/ka/LC_MESSAGES/katello.mo +0 -0
  383. data/locale/ka/katello.po +259 -28
  384. data/locale/katello.pot +1041 -696
  385. data/locale/kn/LC_MESSAGES/katello.mo +0 -0
  386. data/locale/kn/katello.po +258 -27
  387. data/locale/ko/LC_MESSAGES/katello.mo +0 -0
  388. data/locale/ko/katello.po +259 -28
  389. data/locale/ml_IN/LC_MESSAGES/katello.mo +0 -0
  390. data/locale/ml_IN/katello.po +258 -27
  391. data/locale/mr/LC_MESSAGES/katello.mo +0 -0
  392. data/locale/mr/katello.po +258 -27
  393. data/locale/nl_NL/LC_MESSAGES/katello.mo +0 -0
  394. data/locale/nl_NL/katello.po +258 -27
  395. data/locale/or/LC_MESSAGES/katello.mo +0 -0
  396. data/locale/or/katello.po +258 -27
  397. data/locale/pa/LC_MESSAGES/katello.mo +0 -0
  398. data/locale/pa/katello.po +258 -27
  399. data/locale/pl/LC_MESSAGES/katello.mo +0 -0
  400. data/locale/pl/katello.po +258 -27
  401. data/locale/pl_PL/LC_MESSAGES/katello.mo +0 -0
  402. data/locale/pl_PL/katello.po +258 -27
  403. data/locale/pt/LC_MESSAGES/katello.mo +0 -0
  404. data/locale/pt/katello.po +258 -27
  405. data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
  406. data/locale/pt_BR/katello.po +259 -28
  407. data/locale/ro/LC_MESSAGES/katello.mo +0 -0
  408. data/locale/ro/katello.po +258 -27
  409. data/locale/ro_RO/LC_MESSAGES/katello.mo +0 -0
  410. data/locale/ro_RO/katello.po +258 -27
  411. data/locale/ru/LC_MESSAGES/katello.mo +0 -0
  412. data/locale/ru/katello.po +259 -28
  413. data/locale/sl/LC_MESSAGES/katello.mo +0 -0
  414. data/locale/sl/katello.po +258 -27
  415. data/locale/sv_SE/LC_MESSAGES/katello.mo +0 -0
  416. data/locale/sv_SE/katello.po +258 -27
  417. data/locale/ta/LC_MESSAGES/katello.mo +0 -0
  418. data/locale/ta/katello.po +259 -28
  419. data/locale/ta_IN/LC_MESSAGES/katello.mo +0 -0
  420. data/locale/ta_IN/katello.po +258 -27
  421. data/locale/te/LC_MESSAGES/katello.mo +0 -0
  422. data/locale/te/katello.po +258 -27
  423. data/locale/tr/LC_MESSAGES/katello.mo +0 -0
  424. data/locale/tr/katello.po +258 -27
  425. data/locale/vi/LC_MESSAGES/katello.mo +0 -0
  426. data/locale/vi/katello.po +258 -27
  427. data/locale/vi_VN/LC_MESSAGES/katello.mo +0 -0
  428. data/locale/vi_VN/katello.po +258 -27
  429. data/locale/zh/LC_MESSAGES/katello.mo +0 -0
  430. data/locale/zh/katello.po +258 -27
  431. data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
  432. data/locale/zh_CN/katello.po +259 -28
  433. data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
  434. data/locale/zh_TW/katello.po +259 -28
  435. data/vendor/assets/javascripts/katello/chosen.jquery.js +2 -2
  436. data/vendor/assets/javascripts/katello/jquery.ba-bbq.js +1 -1
  437. data/vendor/assets/javascripts/katello/jquery.hoverIntent.js +2 -2
  438. data/webpack/ForemanColumnExtensions/index.js +1 -1
  439. data/webpack/components/extensions/HostDetails/Cards/ContentViewDetailsCard/ContentViewDetailsCard.js +113 -86
  440. data/webpack/components/extensions/HostDetails/DetailsTabCards/HwPropertiesCard.js +7 -2
  441. data/webpack/components/extensions/HostDetails/Tabs/DebsTab/DebsTab.js +31 -4
  442. data/webpack/components/extensions/HostDetails/Tabs/RepositorySetsTab/RepositorySetsTab.js +1 -1
  443. data/webpack/components/extensions/RegistrationCommands/fields/ActivationKeys.js +1 -7
  444. data/webpack/components/extensions/RegistrationCommands/helpers.js +15 -0
  445. data/webpack/components/extensions/RegistrationCommands/index.js +3 -9
  446. data/webpack/global_index.js +11 -4
  447. data/webpack/redux/actions/RedHatRepositories/helpers.js +2 -0
  448. data/webpack/scenes/ActivationKeys/Details/ActivationKeyDetails.js +4 -0
  449. data/webpack/scenes/ActivationKeys/Details/components/CVEDetailsCard.js +37 -0
  450. data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetailConfig.js +1 -2
  451. data/webpack/scenes/Hosts/ChangeContentSource/helpers.js +2 -8
  452. data/webpack/scenes/SmartProxy/ExpandableCvDetails.js +22 -2
  453. data/webpack/scenes/SmartProxy/ExpandedSmartProxyRepositories.js +39 -20
  454. data/webpack/scenes/SmartProxy/SmartProxyContentActions.js +2 -1
  455. data/webpack/scenes/SmartProxy/SmartProxyExpandableTable.js +6 -4
  456. data/webpack/scenes/SmartProxy/__tests__/SmartProxyContentTest.js +62 -0
  457. metadata +134 -76
  458. data/app/lib/katello/api/constraints/activation_key_constraint.rb +0 -7
  459. /data/app/lib/katello/{api → routing}/mapper_extensions.rb +0 -0
@@ -11,7 +11,7 @@ if @content_source.present?
11
11
  {
12
12
  :name => @content_source.name,
13
13
  :id => @content_source_id,
14
- :environment_is_associated => env.content_source_associated?(@content_source)
14
+ :environment_is_associated => env.content_source_associated?(@content_source),
15
15
  }
16
16
  end
17
17
  end
@@ -31,7 +31,7 @@ end
31
31
  node :counts do |env|
32
32
  counts = {
33
33
  :content_hosts => env.hosts.authorized("view_hosts").count,
34
- :content_views => env.content_views.non_default.count
34
+ :content_views => env.content_views.non_default.count,
35
35
  }
36
36
  if env.library?
37
37
  repos = env.repositories.in_default_view
@@ -54,7 +54,7 @@ node :permissions do |env|
54
54
  :view_lifecycle_environments => env.readable?,
55
55
  :edit_lifecycle_environments => env.editable?,
56
56
  :destroy_lifecycle_environments => env.deletable?,
57
- :promote_or_remove_content_views_to_environments => env.promotable_or_removable?
57
+ :promote_or_remove_content_views_to_environments => env.promotable_or_removable?,
58
58
  }
59
59
  end
60
60
 
@@ -62,7 +62,7 @@ node :content_views do |env|
62
62
  env.content_views.non_default.map do |cv|
63
63
  {
64
64
  :name => cv.name,
65
- :id => cv.id
65
+ :id => cv.id,
66
66
  }
67
67
  end
68
68
  end
@@ -32,6 +32,6 @@ node :permissions do |gpg_key|
32
32
  {
33
33
  :view_gpg_keys => gpg_key.readable?,
34
34
  :edit_gpg_keys => gpg_key.editable?,
35
- :destroy_gpg_keys => gpg_key.deletable?
35
+ :destroy_gpg_keys => gpg_key.deletable?,
36
36
  }
37
37
  end
@@ -9,7 +9,7 @@ extends "katello/api/v2/common/timestamps"
9
9
  node :permissions do |host_collection|
10
10
  {
11
11
  :deletable => host_collection.deletable?,
12
- :editable => host_collection.editable?
12
+ :editable => host_collection.editable?,
13
13
 
14
14
  }
15
15
  end
@@ -20,7 +20,7 @@ if @facet
20
20
  {
21
21
  :id => content_view.id,
22
22
  :name => content_view.name,
23
- :composite => content_view.composite?
23
+ :composite => content_view.composite?,
24
24
  }
25
25
  end
26
26
  end
@@ -29,7 +29,7 @@ if @facet
29
29
  if lifecycle_environment.present?
30
30
  {
31
31
  :id => lifecycle_environment.id,
32
- :name => lifecycle_environment.name
32
+ :name => lifecycle_environment.name,
33
33
  }
34
34
  end
35
35
  end
@@ -13,8 +13,8 @@ node :repository do |package_group|
13
13
  :name => repo.name,
14
14
  :product => {
15
15
  :id => repo.product.id,
16
- :name => repo.product.name
17
- }
16
+ :name => repo.product.name,
17
+ },
18
18
  }
19
19
  end
20
20
  end
@@ -54,7 +54,7 @@ node :sync_status do |product|
54
54
  :display_size => local_sync_status[:display_size],
55
55
  :size => local_sync_status[:size],
56
56
  :is_running => local_sync_status[:is_running],
57
- :error_details => local_sync_status[:error_details]
57
+ :error_details => local_sync_status[:error_details],
58
58
  }
59
59
  end
60
60
 
@@ -63,7 +63,7 @@ node :permissions do |product|
63
63
  :view_products => product.readable?,
64
64
  :edit_products => product.editable?,
65
65
  :destroy_products => product.deletable?,
66
- :sync_products => product.syncable?
66
+ :sync_products => product.syncable?,
67
67
  }
68
68
  end
69
69
 
@@ -71,7 +71,7 @@ end
71
71
  node :permissions do |repo|
72
72
  {
73
73
  :deletable => repo.deletable?,
74
- :deletable_across_cv => Setting[:delete_repo_across_cv]
74
+ :deletable_across_cv => Setting[:delete_repo_across_cv],
75
75
  }
76
76
  end
77
77
 
@@ -11,7 +11,7 @@ glue :content do
11
11
  vendor: content.vendor,
12
12
  type: content.content_type,
13
13
  gpgUrl: content.gpg_url,
14
- contentUrl: content.content_url
14
+ contentUrl: content.content_url,
15
15
  }
16
16
  end
17
17
 
@@ -23,6 +23,6 @@ attributes :upstream_pool_id
23
23
  node :hypervisor, :if => lambda { |sub| sub && sub.respond_to?(:hypervisor) && sub.hypervisor } do |subscription|
24
24
  {
25
25
  id: subscription.hypervisor.id,
26
- name: subscription.hypervisor.name
26
+ name: subscription.hypervisor.name,
27
27
  }
28
28
  end
@@ -27,12 +27,12 @@ node :activation_keys do |subscription|
27
27
  service_level: key.service_level,
28
28
  environment: {
29
29
  id: key.environment.try(:id),
30
- name: key.environment.try(:name)
30
+ name: key.environment.try(:name),
31
31
  },
32
32
  content_view: {
33
33
  id: key.content_view.try(:id),
34
- name: key.content_view.try(:name)
35
- }
34
+ name: key.content_view.try(:name),
35
+ },
36
36
  }
37
37
  end
38
38
  end
@@ -25,6 +25,6 @@ node :permissions do |sync_plan|
25
25
  {
26
26
  :view_sync_plans => sync_plan.readable?,
27
27
  :edit_sync_plans => sync_plan.editable?,
28
- :destroy_sync_plans => sync_plan.deletable?
28
+ :destroy_sync_plans => sync_plan.deletable?,
29
29
  }
30
30
  end
@@ -1,4 +1,12 @@
1
1
  # Be sure to restart your server when you modify this file.
2
+ Rails.autoloaders.each do |autoloader|
3
+ autoloader.inflector.inflect(
4
+ 'kt_environment' => 'KTEnvironment',
5
+ 'cdn' => 'CDN',
6
+ 'cveak_migrator' => 'CVEAKMigrator',
7
+ 'cvecf_migrator' => 'CVECFMigrator'
8
+ )
9
+ end
2
10
 
3
11
  # Add new inflection rules using the following format
4
12
  # (all these examples are active by default):
@@ -9,4 +17,7 @@ ActiveSupport::Inflector.inflections do |inflect|
9
17
  # inflect.uncountable %w(fish sheep)
10
18
 
11
19
  inflect.singular 'bases', 'base'
20
+
21
+ inflect.acronym 'SCA' # Simple Content Access
22
+ inflect.acronym 'CV' # Content view
12
23
  end
@@ -17,22 +17,16 @@
17
17
  :oauth_key: katello
18
18
  :oauth_secret: katello
19
19
 
20
- # refers to the candlepin-ca.crt location that is needed
21
- # to connect to candlepin over https.This is not necessary
22
- # if the candlepin server is running on the same machine as katello
23
- # but required if the server is on a different machine.
24
- # In the different machine case the katello host needs to have a
25
- # copy of /etc/candlepin/certs/candlepin-ca.crt copied from
26
- # the candlepin host and the location of the copied file needs to be
27
- # specified here..
20
+ # Optional CA file to user to verify HTTPS connections to Candlepin. If not
21
+ # specified, Foreman's ssl_ca_file setting is used.
28
22
  :ca_cert_file:
29
23
  # :bulk_load_size: 1000
30
24
  # Setup your pulp environment here
31
25
  :pulp:
32
26
  :sync_threads: 4
33
27
  # refers to the apache certificate
34
- # (typically /etc/pki/tls/certs/localhost.crt) location that is needed
35
- # to connect to pulp over https.
28
+ # Optional CA file to user to verify HTTPS connections to Candlepin. If not
29
+ # specified, Foreman's ssl_ca_file setting is used.
36
30
  :ca_cert_file:
37
31
  :default_login: admin
38
32
  :sync_KBlimit:
@@ -1,5 +1,3 @@
1
- require 'katello/api/mapper_extensions'
2
-
3
1
  class ActionDispatch::Routing::Mapper
4
2
  include Katello::Routing::MapperExtensions
5
3
  end
@@ -1,6 +1,3 @@
1
- require 'katello/api/constraints/activation_key_constraint'
2
- require 'katello/api/mapper_extensions'
3
-
4
1
  class ActionDispatch::Routing::Mapper
5
2
  include Katello::Routing::MapperExtensions
6
3
  end
@@ -11,7 +8,7 @@ Katello::Engine.routes.draw do
11
8
 
12
9
  scope :path => :rhsm, :module => :rhsm, :as => :rhsm do
13
10
  # subscription-manager support
14
- scope :constraints => Katello::RegisterWithActivationKeyConstraint.new do
11
+ scope :constraints => Katello::Api::Constraints::RegisterWithActivationKeyConstraint.new do
15
12
  match '/consumers' => 'candlepin_proxies#consumer_activate', :via => :post
16
13
  end
17
14
  match '/consumers' => 'candlepin_proxies#consumer_create', :via => :post
@@ -1,6 +1,3 @@
1
- require 'katello/api/constraints/activation_key_constraint'
2
- require 'katello/api/mapper_extensions'
3
-
4
1
  class ActionDispatch::Routing::Mapper
5
2
  include Katello::Routing::MapperExtensions
6
3
  end
@@ -75,6 +72,8 @@ Katello::Engine.routes.draw do
75
72
  match '/content_views/:composite_content_view_id/content_view_components/remove' => 'content_view_components#remove_components', :via => :put
76
73
  match '/content_views/:composite_content_view_id/content_view_components/:id' => 'content_view_components#update', :via => :put
77
74
 
75
+ api_resources :content_view_environments, :only => [:index]
76
+
78
77
  api_resources :content_views do
79
78
  get :auto_complete_search, :on => :collection
80
79
  member do
@@ -1,4 +1,4 @@
1
- class RepoRenameFeedToUrl < ActiveRecord::Migration[4.2]
1
+ class RepoRenameFeedToURL < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  rename_column :katello_repositories, :feed, :url
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddDockerContainerRegistryUrlToProviders < ActiveRecord::Migration[4.2]
1
+ class AddDockerContainerRegistryURLToProviders < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  add_column :katello_providers, :docker_registry_url, :string, :limit => 255
4
4
  end
@@ -1,4 +1,4 @@
1
- class RemoveDockerRegistryUrl < ActiveRecord::Migration[4.2]
1
+ class RemoveDockerRegistryURL < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  remove_column :katello_providers, :docker_registry_url
4
4
  end
@@ -12,7 +12,7 @@ class AddFiles < ActiveRecord::Migration[4.2]
12
12
  add_index :katello_files, [
13
13
  :id,
14
14
  :uuid,
15
- :name
15
+ :name,
16
16
  ],
17
17
  :name => 'katello_files_fields_index'
18
18
 
@@ -15,7 +15,7 @@ class MoveContentViewVersionDescriptionToHistories < ActiveRecord::Migration[4.2
15
15
  publish: 1,
16
16
  promotion: 2,
17
17
  removal: 3,
18
- export: 4
18
+ export: 4,
19
19
  }
20
20
  end
21
21
 
@@ -5,7 +5,7 @@ class UpdateSystemPurposeStatus < ActiveRecord::Migration[6.0]
5
5
  "Katello::PurposeAddonsStatus",
6
6
  "Katello::PurposeRoleStatus",
7
7
  "Katello::PurposeSlaStatus",
8
- "Katello::PurposeUsageStatus"
8
+ "Katello::PurposeUsageStatus",
9
9
  ]
10
10
 
11
11
  # load both sets of host statuses and *then* update them to make sure we update the correct statuses
@@ -4,7 +4,7 @@ class RemoveGpgKeyPerms < ActiveRecord::Migration[6.0]
4
4
  Permission.find_by(name: :view_gpg_keys) => Permission.find_by(name: :view_content_credentials),
5
5
  Permission.find_by(name: :edit_gpg_keys) => Permission.find_by(name: :edit_content_credentials),
6
6
  Permission.find_by(name: :destroy_gpg_keys) => Permission.find_by(name: :destroy_content_credentials),
7
- Permission.find_by(name: :create_gpg_keys) => Permission.find_by(name: :create_content_credentials)
7
+ Permission.find_by(name: :create_gpg_keys) => Permission.find_by(name: :create_content_credentials),
8
8
  }
9
9
  end
10
10
 
@@ -1,4 +1,4 @@
1
- class AddAuthUrlTokenToRootRepositories < ActiveRecord::Migration[6.0]
1
+ class AddAuthURLTokenToRootRepositories < ActiveRecord::Migration[6.0]
2
2
  def change
3
3
  add_column :katello_root_repositories, :ansible_collection_auth_url, :text
4
4
  add_column :katello_root_repositories, :ansible_collection_auth_token, :text
@@ -86,14 +86,14 @@ class CleanDuplicateContentUnits < ActiveRecord::Migration[6.0]
86
86
  handle_duplicate(Katello::DockerManifestList, 'docker_manifest_list_id', [:pulp_id],
87
87
  associated_models: {
88
88
  Katello::DockerManifestListManifest => :docker_manifest_id,
89
- Katello::RepositoryDockerManifestList => :repository_id
89
+ Katello::RepositoryDockerManifestList => :repository_id,
90
90
  })
91
91
  add_index :katello_docker_manifest_lists, :pulp_id, :unique => true
92
92
 
93
93
  handle_duplicate(Katello::DockerManifest, 'docker_manifest_id', [:pulp_id],
94
94
  associated_models: {
95
95
  Katello::DockerManifestListManifest => :docker_manifest_list_id,
96
- Katello::RepositoryDockerManifest => :repository_id
96
+ Katello::RepositoryDockerManifest => :repository_id,
97
97
  })
98
98
  add_index :katello_docker_manifests, :pulp_id, :unique => true
99
99
  end
@@ -1,6 +1,6 @@
1
1
  class ChangeChangeContentSourceJobTemplateName < ActiveRecord::Migration[6.1]
2
2
  TEMPLATE_NAMES = {
3
- "Change content source" => "Configure host for new content source"
3
+ "Change content source" => "Configure host for new content source",
4
4
  }.freeze
5
5
 
6
6
  def up
@@ -11,7 +11,7 @@ class RemoveEntitlementModeHostStatuses < ActiveRecord::Migration[6.1]
11
11
  "Katello::PurposeAddonsStatus",
12
12
  "Katello::PurposeRoleStatus",
13
13
  "Katello::PurposeSlaStatus",
14
- "Katello::PurposeUsageStatus"
14
+ "Katello::PurposeUsageStatus",
15
15
  ]
16
16
 
17
17
  ::HostStatus::Status.where(type: obsolete_statuses).delete_all
@@ -0,0 +1,5 @@
1
+ class AddContentIdToKatelloRepository < ActiveRecord::Migration[6.1]
2
+ def change
3
+ add_column :katello_repositories, :content_id, :string
4
+ end
5
+ end
@@ -0,0 +1,87 @@
1
+ class AddContentViewEnvironmentActivationKey < ActiveRecord::Migration[6.1]
2
+ class FakeActivationKey < ApplicationRecord
3
+ self.table_name = 'katello_activation_keys'
4
+ end
5
+
6
+ def up
7
+ create_table :katello_content_view_environment_activation_keys do |t|
8
+ t.references :content_view_environment, :null => false, :index => false, :foreign_key => { :to_table => 'katello_content_view_environments' }
9
+ t.references :activation_key, :null => false, :index => false, :foreign_key => { :to_table => 'katello_activation_keys' }
10
+ end
11
+ ::Katello::Util::CVEAKMigrator.new.execute!
12
+ FakeActivationKey.all.each do |activation_key|
13
+ next if activation_key.environment_id.blank? && activation_key.content_view_id.blank?
14
+
15
+ cve_id = ::Katello::KTEnvironment.find(activation_key.environment_id)
16
+ .content_view_environments
17
+ .find_by(content_view_id: activation_key.content_view_id)
18
+ &.id
19
+ unless cve_id.present? && ::Katello::ContentViewEnvironmentActivationKey.create(
20
+ activation_key_id: activation_key.id,
21
+ content_view_environment_id: cve_id
22
+ )
23
+ Rails.logger.warn "Failed to create ContentViewEnvironmentActivationKey for activation_key #{activation_key.id}"
24
+ end
25
+ end
26
+
27
+ remove_column :katello_activation_keys, :content_view_id
28
+ remove_column :katello_activation_keys, :environment_id
29
+ end
30
+
31
+ def down
32
+ add_column :katello_activation_keys, :content_view_id, :integer, :index => true
33
+ add_column :katello_activation_keys, :environment_id, :integer, :index => true
34
+
35
+ add_foreign_key "katello_activation_keys", "katello_content_views",
36
+ :name => "katello_activation_keys_content_view_id", :column => "content_view_id"
37
+
38
+ add_foreign_key "katello_activation_keys", "katello_environments",
39
+ :name => "katello_activation_keys_environment_id", :column => "environment_id"
40
+
41
+ ::Katello::ActivationKey.reset_column_information
42
+
43
+ ::Katello::ContentViewEnvironmentActivationKey.unscoped.all.each do |cveak|
44
+ activation_key = cveak.activation_key
45
+ cve = cveak.content_view_environment
46
+ default_org = cve.environment&.organization
47
+ default_cv_id = default_org&.default_content_view&.id
48
+ default_lce_id = default_org&.library&.id
49
+ cv_id = cveak.content_view_environment.content_view_id || default_cv_id
50
+ lce_id = cveak.content_view_environment.environment_id || default_lce_id
51
+ say "Updating activation_key #{activation_key.id} with cv_id #{cv_id} and lce_id #{lce_id}"
52
+ activation_key.content_view_id = cv_id
53
+ activation_key.environment_id = lce_id
54
+ activation_key.save(validate: false)
55
+ end
56
+
57
+ ensure_no_null_cv_lce
58
+ change_column :katello_activation_keys, :content_view_id, :integer, :null => false
59
+ change_column :katello_activation_keys, :environment_id, :integer, :null => false
60
+
61
+ drop_table :katello_content_view_environment_activation_keys
62
+ end
63
+
64
+ def ensure_no_null_cv_lce
65
+ # The following is to try to prevent PG::NotNullViolation: ERROR: column "content_view_id" contains null values
66
+ # since we add null constraints to the columns in the next step
67
+ activation_keys_without_cv = ::Katello::ActivationKey.where(content_view_id: nil)
68
+ if activation_keys_without_cv.any?
69
+ say "Found #{activation_keys_without_cv.count} activation_keys with nil content_view_id"
70
+ activation_keys_without_cv.each do |activation_key|
71
+ say "reassigning bad activation_key #{activation_key.id} to default content view"
72
+ activation_key.content_view_id = activation_key&.organization&.default_content_view&.id
73
+ activation_key.save(validate: false)
74
+ end
75
+ end
76
+
77
+ activation_keys_without_lce = ::Katello::ActivationKey.where(environment_id: nil)
78
+ if activation_keys_without_lce.any?
79
+ say "Found #{activation_keys_without_lce.count} activation_keys with nil environment_id"
80
+ activation_keys_without_lce.each do |activation_key|
81
+ say "reassigning bad activation_key #{activation_key.id} to default lifecycle environment"
82
+ activation_key.environment_id = activation_key&.organization&.library&.id
83
+ activation_key.save(validate: false)
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,15 @@
1
+ class AddMoreDebFields < ActiveRecord::Migration[6.1]
2
+ def up
3
+ add_column :katello_debs, :section, :string, :limit => 255
4
+ add_column :katello_debs, :maintainer, :string, :limit => 255
5
+ add_column :katello_debs, :homepage, :string, :limit => 255
6
+ add_column :katello_debs, :installed_size, :string, :limit => 255
7
+ end
8
+
9
+ def down
10
+ remove_column :katello_debs, :section
11
+ remove_column :katello_debs, :maintainer
12
+ remove_column :katello_debs, :homepage
13
+ remove_column :katello_debs, :installed_size
14
+ end
15
+ end
@@ -0,0 +1,5 @@
1
+ class AddPriorityToContentViewEnvironmentActivationKey < ActiveRecord::Migration[6.1]
2
+ def change
3
+ add_column :katello_content_view_environment_activation_keys, :priority, :integer, default: 0, null: false
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ class AddFieldsToKatelloDockerManifestList < ActiveRecord::Migration[6.1]
2
+ def change
3
+ add_column :katello_docker_manifest_lists, :annotations, :jsonb, default: {}
4
+ add_column :katello_docker_manifest_lists, :labels, :jsonb, default: {}
5
+ add_column :katello_docker_manifest_lists, :is_bootable, :boolean, default: false
6
+ add_column :katello_docker_manifest_lists, :is_flatpak, :boolean, default: false
7
+ end
8
+ end
@@ -0,0 +1,27 @@
1
+ class AddBootcFactsToContentFacet < ActiveRecord::Migration[6.1]
2
+ def change
3
+ add_column :katello_content_facets, :bootc_booted_image, :string
4
+ add_column :katello_content_facets, :bootc_booted_digest, :string
5
+
6
+ add_column :katello_content_facets, :bootc_available_image, :string
7
+ add_column :katello_content_facets, :bootc_available_digest, :string
8
+
9
+ add_column :katello_content_facets, :bootc_staged_image, :string
10
+ add_column :katello_content_facets, :bootc_staged_digest, :string
11
+
12
+ add_column :katello_content_facets, :bootc_rollback_image, :string
13
+ add_column :katello_content_facets, :bootc_rollback_digest, :string
14
+
15
+ add_index :katello_content_facets, :bootc_booted_image
16
+ add_index :katello_content_facets, :bootc_booted_digest
17
+
18
+ add_index :katello_content_facets, :bootc_available_image
19
+ add_index :katello_content_facets, :bootc_available_digest
20
+
21
+ add_index :katello_content_facets, :bootc_staged_image
22
+ add_index :katello_content_facets, :bootc_staged_digest
23
+
24
+ add_index :katello_content_facets, :bootc_rollback_image
25
+ add_index :katello_content_facets, :bootc_rollback_digest
26
+ end
27
+ end
@@ -0,0 +1,10 @@
1
+ class RemovePulp3MigratedHrefsFromContentTables < ActiveRecord::Migration[6.1]
2
+ def change
3
+ content_models = [Katello::Rpm, Katello::ModuleStream, Katello::Erratum, Katello::PackageGroup, Katello::YumMetadataFile,
4
+ Katello::Srpm, Katello::FileUnit, Katello::DockerManifestList, Katello::DockerManifest, Katello::DockerTag]
5
+
6
+ content_models.each do |model|
7
+ remove_column model.table_name, :migrated_pulp3_href, :string
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,41 @@
1
+ class CreateKatelloFlatpakTables < ActiveRecord::Migration[6.1]
2
+ #rubocop:disable Metrics/MethodLength
3
+ def change
4
+ create_table :katello_flatpak_remotes do |t|
5
+ t.string :name, null: false
6
+ t.string :url, null: false
7
+ t.integer :organization_id, null: false
8
+ t.text :description
9
+ t.boolean :seeded, default: false, null: false
10
+ t.string :username
11
+ t.text :token
12
+ t.timestamps
13
+ end
14
+
15
+ add_foreign_key :katello_flatpak_remotes, :taxonomies, name: 'katello_flatpak_remotes_organization_id', column: :organization_id
16
+
17
+ create_table :katello_flatpak_remote_repositories do |t|
18
+ t.string :name, null: false
19
+ t.string :label, null: false
20
+ t.integer :flatpak_remote_id, null: false
21
+ t.timestamps
22
+ end
23
+
24
+ create_table :katello_flatpak_remote_repository_manifests do |t|
25
+ t.integer :flatpak_remote_repository_id, null: false
26
+ t.string :digest, null: false
27
+ t.string :tags, array: true, default: []
28
+ t.string :name, null: false
29
+ t.boolean :application, default: true, null: false
30
+ t.text :runtime
31
+ t.string :flatpak_ref, null: false
32
+ t.timestamps
33
+ end
34
+
35
+ add_index :katello_flatpak_remote_repository_manifests, :flatpak_ref, name: 'index_remote_repository_manifests_on_flatpak_ref'
36
+ add_index :katello_flatpak_remote_repository_manifests, [:flatpak_remote_repository_id, :digest], unique: true, name: 'index_remote_repository_manifests_on_repo_id_and_digest'
37
+ add_foreign_key :katello_flatpak_remote_repository_manifests, :katello_flatpak_remote_repositories, column: :flatpak_remote_repository_id
38
+ add_foreign_key :katello_flatpak_remote_repositories, :katello_flatpak_remotes, column: :flatpak_remote_id
39
+ end
40
+ #rubocop:enable Metrics/MethodLength
41
+ end
@@ -20,21 +20,21 @@ User.as(::User.anonymous_api_admin.login) do
20
20
  :description => N_('A summary of available and applicable errata for your hosts'),
21
21
  :mailer => 'Katello::ErrataMailer',
22
22
  :method => 'host_errata',
23
- :subscription_type => 'report'
23
+ :subscription_type => 'report',
24
24
  },
25
25
 
26
26
  {:name => :sync_errata,
27
27
  :description => N_('A summary of new errata after a repository is synchronized'),
28
28
  :mailer => 'Katello::ErrataMailer',
29
29
  :method => 'sync_errata',
30
- :subscription_type => 'alert'
30
+ :subscription_type => 'alert',
31
31
  },
32
32
 
33
33
  {:name => :promote_errata,
34
34
  :description => N_('A post-promotion summary of hosts with installable errata'),
35
35
  :mailer => 'Katello::ErrataMailer',
36
36
  :method => 'promote_errata',
37
- :subscription_type => 'alert'
37
+ :subscription_type => 'alert',
38
38
  },
39
39
 
40
40
  {:name => :subscriptions_expiring_soon,
@@ -42,36 +42,36 @@ User.as(::User.anonymous_api_admin.login) do
42
42
  :mailer => 'Katello::SubscriptionMailer',
43
43
  :method => 'subscription_expiry',
44
44
  :subscription_type => 'report',
45
- :queryable => true
45
+ :queryable => true,
46
46
  },
47
47
 
48
48
  {:name => :repository_sync_failure,
49
49
  :description => N_('A notification about failed repository sync'),
50
50
  :mailer => 'Katello::TaskMailer',
51
51
  :method => 'repo_sync_failure',
52
- :subscription_type => 'alert'
52
+ :subscription_type => 'alert',
53
53
  },
54
54
 
55
55
  {:name => :content_view_publish_failure,
56
56
  :description => N_('A notification about failed content view publish'),
57
57
  :mailer => 'Katello::TaskMailer',
58
58
  :method => 'cv_publish_failure',
59
- :subscription_type => 'alert'
59
+ :subscription_type => 'alert',
60
60
  },
61
61
 
62
62
  {:name => :content_view_promote_failure,
63
63
  :description => N_('A notification about failed content view promotion'),
64
64
  :mailer => 'Katello::TaskMailer',
65
65
  :method => 'cv_promote_failure',
66
- :subscription_type => 'alert'
66
+ :subscription_type => 'alert',
67
67
  },
68
68
 
69
69
  {:name => :proxy_sync_failure,
70
70
  :description => N_('A notification about failed proxy sync'),
71
71
  :mailer => 'Katello::TaskMailer',
72
72
  :method => 'proxy_sync_failure',
73
- :subscription_type => 'alert'
74
- }
73
+ :subscription_type => 'alert',
74
+ },
75
75
  ]
76
76
 
77
77
  notifications.each do |notification|
@@ -9,7 +9,7 @@ User.as_anonymous_admin do
9
9
  bookmarks = [
10
10
  {:name => "list hypervisors", :query => 'hypervisor = true', :controller => "hosts"},
11
11
  {:name => "future", :query => 'starts > Today', :controller => "katello_subscriptions"},
12
- {:name => "expiring soon", :query => 'expires 30 days from now', :controller => "katello_subscriptions"}
12
+ {:name => "expiring soon", :query => 'expires 30 days from now', :controller => "katello_subscriptions"},
13
13
  ]
14
14
 
15
15
  bookmarks.each do |input|