katello 4.12.0.rc3 → 4.13.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 (244) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -1
  3. data/app/assets/javascripts/katello/locale/bn/katello.js +3365 -3350
  4. data/app/assets/javascripts/katello/locale/bn_IN/katello.js +3136 -3121
  5. data/app/assets/javascripts/katello/locale/ca/katello.js +3588 -3576
  6. data/app/assets/javascripts/katello/locale/cs/katello.js +3499 -3487
  7. data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +4186 -4186
  8. data/app/assets/javascripts/katello/locale/de/katello.js +5553 -5562
  9. data/app/assets/javascripts/katello/locale/de_AT/katello.js +3008 -2993
  10. data/app/assets/javascripts/katello/locale/de_DE/katello.js +3066 -3051
  11. data/app/assets/javascripts/katello/locale/el/katello.js +3376 -3370
  12. data/app/assets/javascripts/katello/locale/en/katello.js +3008 -2993
  13. data/app/assets/javascripts/katello/locale/en_GB/katello.js +3076 -3073
  14. data/app/assets/javascripts/katello/locale/en_US/katello.js +3008 -2993
  15. data/app/assets/javascripts/katello/locale/es/katello.js +5366 -5372
  16. data/app/assets/javascripts/katello/locale/et_EE/katello.js +3008 -2993
  17. data/app/assets/javascripts/katello/locale/fr/katello.js +5975 -5984
  18. data/app/assets/javascripts/katello/locale/gl/katello.js +3125 -3113
  19. data/app/assets/javascripts/katello/locale/gu/katello.js +3119 -3104
  20. data/app/assets/javascripts/katello/locale/he_IL/katello.js +3020 -3005
  21. data/app/assets/javascripts/katello/locale/hi/katello.js +3137 -3122
  22. data/app/assets/javascripts/katello/locale/id/katello.js +3008 -2993
  23. data/app/assets/javascripts/katello/locale/it/katello.js +4469 -4466
  24. data/app/assets/javascripts/katello/locale/ja/katello.js +5969 -5978
  25. data/app/assets/javascripts/katello/locale/ka/katello.js +5649 -5652
  26. data/app/assets/javascripts/katello/locale/kn/katello.js +3136 -3121
  27. data/app/assets/javascripts/katello/locale/ko/katello.js +4717 -4720
  28. data/app/assets/javascripts/katello/locale/locale/katello.js +1050 -1084
  29. data/app/assets/javascripts/katello/locale/ml_IN/katello.js +3008 -2993
  30. data/app/assets/javascripts/katello/locale/mr/katello.js +3136 -3121
  31. data/app/assets/javascripts/katello/locale/nl_NL/katello.js +3116 -3101
  32. data/app/assets/javascripts/katello/locale/or/katello.js +3137 -3122
  33. data/app/assets/javascripts/katello/locale/pa/katello.js +3136 -3121
  34. data/app/assets/javascripts/katello/locale/pl/katello.js +3210 -3195
  35. data/app/assets/javascripts/katello/locale/pl_PL/katello.js +3008 -2993
  36. data/app/assets/javascripts/katello/locale/pt/katello.js +3009 -2994
  37. data/app/assets/javascripts/katello/locale/pt_BR/katello.js +5362 -5368
  38. data/app/assets/javascripts/katello/locale/ro/katello.js +3008 -2993
  39. data/app/assets/javascripts/katello/locale/ro_RO/katello.js +3008 -2993
  40. data/app/assets/javascripts/katello/locale/ru/katello.js +4638 -4641
  41. data/app/assets/javascripts/katello/locale/sl/katello.js +3051 -3036
  42. data/app/assets/javascripts/katello/locale/sv_SE/katello.js +3156 -3144
  43. data/app/assets/javascripts/katello/locale/ta/katello.js +3365 -3350
  44. data/app/assets/javascripts/katello/locale/ta_IN/katello.js +3121 -3106
  45. data/app/assets/javascripts/katello/locale/te/katello.js +3136 -3121
  46. data/app/assets/javascripts/katello/locale/tr/katello.js +3025 -3010
  47. data/app/assets/javascripts/katello/locale/vi/katello.js +3008 -2993
  48. data/app/assets/javascripts/katello/locale/vi_VN/katello.js +3008 -2993
  49. data/app/assets/javascripts/katello/locale/zh/katello.js +3008 -2993
  50. data/app/assets/javascripts/katello/locale/zh_CN/katello.js +5968 -5977
  51. data/app/assets/javascripts/katello/locale/zh_TW/katello.js +4694 -4697
  52. data/app/assets/javascripts/katello/sync_management/sync_management.js +1 -0
  53. data/app/controllers/katello/api/registry/registry_proxies_controller.rb +51 -124
  54. data/app/controllers/katello/api/rhsm/candlepin_dynflow_proxy_controller.rb +12 -20
  55. data/app/controllers/katello/api/v2/activation_keys_controller.rb +10 -4
  56. data/app/controllers/katello/api/v2/capsule_content_controller.rb +24 -0
  57. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +9 -2
  58. data/app/controllers/katello/api/v2/debs_controller.rb +1 -1
  59. data/app/controllers/katello/api/v2/errata_controller.rb +1 -1
  60. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +12 -4
  61. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +3 -3
  62. data/app/controllers/katello/api/v2/organizations_controller.rb +0 -11
  63. data/app/controllers/katello/api/v2/packages_controller.rb +1 -1
  64. data/app/controllers/katello/api/v2/products_bulk_actions_controller.rb +1 -1
  65. data/app/controllers/katello/api/v2/repositories_controller.rb +18 -12
  66. data/app/controllers/katello/api/v2/repository_sets_controller.rb +2 -1
  67. data/app/controllers/katello/api/v2/simple_content_access_controller.rb +9 -22
  68. data/app/controllers/katello/concerns/api/v2/authorization.rb +1 -1
  69. data/app/helpers/katello/concerns/dashboard_helper_extensions.rb +0 -10
  70. data/app/helpers/katello/hosts_and_hostgroups_helper.rb +14 -2
  71. data/app/helpers/katello/katello_urls_helper.rb +26 -1
  72. data/app/helpers/katello/subscription_mailer_helper.rb +1 -1
  73. data/app/jobs/create_manifest_expire_soon_warning_notifications.rb +11 -0
  74. data/app/lib/actions/candlepin/owner/regenerate_upstream_identity_cert.rb +21 -0
  75. data/app/lib/actions/katello/capsule_content/sync.rb +1 -1
  76. data/app/lib/actions/katello/capsule_content/verify_checksum.rb +75 -0
  77. data/app/lib/actions/katello/content_view/promote.rb +1 -1
  78. data/app/lib/actions/katello/content_view/publish.rb +1 -1
  79. data/app/lib/actions/katello/content_view_version/verify_checksum.rb +29 -0
  80. data/app/lib/actions/katello/host/hypervisors_update.rb +1 -0
  81. data/app/lib/actions/katello/host/update_content_view.rb +2 -2
  82. data/app/lib/actions/katello/organization/manifest_import.rb +5 -0
  83. data/app/lib/actions/katello/organization/manifest_refresh.rb +3 -0
  84. data/app/lib/actions/katello/repository/metadata_generate.rb +7 -1
  85. data/app/lib/actions/katello/repository/remove_content.rb +1 -0
  86. data/app/lib/actions/katello/repository/sync.rb +2 -1
  87. data/app/lib/actions/katello/repository/upload_files.rb +1 -0
  88. data/app/lib/actions/pulp3/capsule_content/verify_checksum.rb +27 -0
  89. data/app/lib/actions/pulp3/orchestration/content_view_version/export_repository.rb +7 -9
  90. data/app/lib/actions/pulp3/orchestration/content_view_version/syncable_export.rb +5 -4
  91. data/app/lib/katello/concerns/base_template_scope_extensions.rb +7 -2
  92. data/app/lib/katello/errors.rb +4 -0
  93. data/app/lib/katello/http_resource.rb +6 -1
  94. data/app/lib/katello/resources/candlepin/consumer.rb +1 -1
  95. data/app/lib/katello/resources/candlepin/upstream_consumer.rb +18 -6
  96. data/app/lib/katello/resources/candlepin/upstream_job.rb +1 -1
  97. data/app/lib/katello/resources/cdn.rb +4 -13
  98. data/app/lib/katello/resources/registry.rb +25 -0
  99. data/app/mailers/katello/subscription_mailer.rb +3 -6
  100. data/app/models/katello/candlepin/repository_mapper.rb +1 -1
  101. data/app/models/katello/concerns/organization_extensions.rb +42 -3
  102. data/app/models/katello/content_view.rb +28 -0
  103. data/app/models/katello/content_view_environment_content_facet.rb +4 -2
  104. data/app/models/katello/glue/provider.rb +19 -12
  105. data/app/models/katello/glue/pulp/repos.rb +3 -8
  106. data/app/models/katello/host/content_facet.rb +1 -1
  107. data/app/models/katello/host/subscription_facet.rb +1 -1
  108. data/app/models/katello/host_collection.rb +12 -3
  109. data/app/models/katello/ping.rb +1 -1
  110. data/app/models/katello/repository.rb +33 -0
  111. data/app/models/katello/root_repository.rb +0 -4
  112. data/app/services/katello/content_unit_indexer.rb +9 -0
  113. data/app/services/katello/pulp3/alternate_content_source.rb +6 -8
  114. data/app/services/katello/pulp3/api/core.rb +13 -0
  115. data/app/services/katello/pulp3/api/yum.rb +11 -0
  116. data/app/services/katello/pulp3/docker_manifest.rb +5 -1
  117. data/app/services/katello/pulp3/repository/generic.rb +1 -1
  118. data/app/services/katello/pulp3/repository.rb +26 -6
  119. data/app/services/katello/pulp3/repository_mirror.rb +13 -12
  120. data/app/services/katello/pulp3/service_common.rb +2 -10
  121. data/app/services/katello/pulp3/smart_proxy_repository.rb +0 -2
  122. data/app/services/katello/ui_notifications/subscriptions/manifest_expire_soon_warning.rb +75 -0
  123. data/app/views/foreman/job_templates/update_package_-_katello_ansible_default.erb +5 -1
  124. data/app/views/foreman/job_templates/update_packages_by_search_query_-_katello_ansible_default.erb +2 -2
  125. data/app/views/foreman/job_templates/upload_profile.erb +16 -0
  126. data/app/views/katello/api/v2/content_view_filter_rules/show.json.rabl +9 -0
  127. data/app/views/katello/api/v2/docker_manifests/show.json.rabl +1 -0
  128. data/app/views/katello/api/v2/hosts/host_collections.json.rabl +5 -1
  129. data/app/views/katello/api/v2/organizations/show.json.rabl +9 -1
  130. data/app/views/katello/hosts/_errata_counts.html.erb +1 -1
  131. data/app/views/overrides/activation_keys/_host_environment_select.html.erb +1 -1
  132. data/app/views/overrides/activation_keys/_host_media_type_select.html.erb +15 -5
  133. data/app/views/overrides/activation_keys/_host_tab_pane.html.erb +1 -29
  134. data/config/routes/api/registry.rb +4 -8
  135. data/config/routes/api/v2.rb +2 -0
  136. data/db/migrate/20240423112842_add_fields_to_katello_docker_manifest.rb +8 -0
  137. data/db/migrate/20240502192021_change_katello_repository_rpms_id_seq_to_big_int.rb +9 -0
  138. data/db/seeds.d/109-katello-notification-blueprints.rb +6 -0
  139. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +3 -3
  140. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-credentials/new/views/new-content-credential.html +2 -1
  141. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-repository-sets.controller.js +3 -3
  142. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +0 -15
  143. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +8 -6
  144. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +12 -10
  145. data/lib/katello/permission_creator.rb +3 -3
  146. data/lib/katello/permissions/registry_permissions.rb +4 -7
  147. data/lib/katello/plugin.rb +10 -16
  148. data/lib/katello/repository_types/ostree.rb +7 -0
  149. data/lib/katello/scheduled_jobs.rb +7 -1
  150. data/lib/katello/tasks/clean_backend_objects.rake +1 -1
  151. data/lib/katello/tasks/repository.rake +22 -0
  152. data/lib/katello/version.rb +1 -1
  153. data/locale/action_names.rb +4 -3
  154. data/locale/bn/katello.po +166 -151
  155. data/locale/bn_IN/katello.po +166 -151
  156. data/locale/ca/katello.po +166 -151
  157. data/locale/cs/katello.po +166 -151
  158. data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
  159. data/locale/cs_CZ/katello.po +172 -157
  160. data/locale/de/LC_MESSAGES/katello.mo +0 -0
  161. data/locale/de/katello.po +178 -163
  162. data/locale/de_AT/katello.po +166 -151
  163. data/locale/de_DE/katello.po +166 -151
  164. data/locale/el/katello.po +166 -151
  165. data/locale/en/katello.po +166 -151
  166. data/locale/en_GB/katello.po +166 -151
  167. data/locale/en_US/katello.po +166 -151
  168. data/locale/es/LC_MESSAGES/katello.mo +0 -0
  169. data/locale/es/katello.po +178 -163
  170. data/locale/et_EE/katello.po +166 -151
  171. data/locale/fr/LC_MESSAGES/katello.mo +0 -0
  172. data/locale/fr/katello.po +179 -164
  173. data/locale/gl/katello.po +166 -151
  174. data/locale/gu/katello.po +166 -151
  175. data/locale/he_IL/katello.po +166 -151
  176. data/locale/hi/katello.po +166 -151
  177. data/locale/id/katello.po +166 -151
  178. data/locale/it/LC_MESSAGES/katello.mo +0 -0
  179. data/locale/it/katello.po +169 -154
  180. data/locale/ja/LC_MESSAGES/katello.mo +0 -0
  181. data/locale/ja/katello.po +179 -164
  182. data/locale/ka/LC_MESSAGES/katello.mo +0 -0
  183. data/locale/ka/katello.po +177 -162
  184. data/locale/katello.pot +1119 -1062
  185. data/locale/kn/katello.po +166 -151
  186. data/locale/ko/LC_MESSAGES/katello.mo +0 -0
  187. data/locale/ko/katello.po +174 -159
  188. data/locale/ml_IN/katello.po +166 -151
  189. data/locale/mr/katello.po +166 -151
  190. data/locale/nl_NL/katello.po +166 -151
  191. data/locale/or/katello.po +166 -151
  192. data/locale/pa/katello.po +166 -151
  193. data/locale/pl/katello.po +166 -151
  194. data/locale/pl_PL/katello.po +166 -151
  195. data/locale/pt/katello.po +166 -151
  196. data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
  197. data/locale/pt_BR/katello.po +178 -163
  198. data/locale/ro/katello.po +166 -151
  199. data/locale/ro_RO/katello.po +166 -151
  200. data/locale/ru/LC_MESSAGES/katello.mo +0 -0
  201. data/locale/ru/katello.po +171 -156
  202. data/locale/sl/katello.po +166 -151
  203. data/locale/sv_SE/katello.po +166 -151
  204. data/locale/ta/katello.po +166 -151
  205. data/locale/ta_IN/katello.po +166 -151
  206. data/locale/te/katello.po +166 -151
  207. data/locale/tr/katello.po +166 -151
  208. data/locale/vi/katello.po +166 -151
  209. data/locale/vi_VN/katello.po +166 -151
  210. data/locale/zh/katello.po +166 -151
  211. data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
  212. data/locale/zh_CN/katello.po +179 -164
  213. data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
  214. data/locale/zh_TW/katello.po +171 -156
  215. data/webpack/ForemanColumnExtensions/index.js +129 -0
  216. data/webpack/components/ActivationKeysSearch/ActivationKeysSearch.test.js +28 -0
  217. data/webpack/components/ActivationKeysSearch/index.js +222 -0
  218. data/webpack/components/Table/TableWrapper.js +14 -0
  219. data/webpack/components/extensions/HostDetails/ActionsBar/index.js +1 -1
  220. data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackagesTab.js +1 -1
  221. data/webpack/components/extensions/HostDetails/Tabs/__tests__/packageInstallModal.test.js +1 -0
  222. data/webpack/components/extensions/HostDetails/Tabs/__tests__/packagesTab.test.js +1 -0
  223. data/webpack/components/extensions/Hosts/ActionsBar/index.js +20 -1
  224. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCVModal/BulkChangeHostCVModal.js +220 -0
  225. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCVModal/actions.js +23 -0
  226. data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCVModal/index.js +25 -0
  227. data/webpack/components/extensions/Hosts/BulkActions/__tests__/bulkChangeHostCVModal.test.js +133 -0
  228. data/webpack/global_index.js +19 -0
  229. data/webpack/scenes/ContentViews/Details/ComponentContentViews/ContentViewComponents.js +6 -3
  230. data/webpack/scenes/ContentViews/Publish/CVPublishForm.js +1 -1
  231. data/webpack/scenes/ContentViews/Publish/__tests__/publishContentView.test.js +30 -0
  232. data/webpack/scenes/Hosts/ChangeContentSource/actions.js +3 -1
  233. data/webpack/scenes/Hosts/ChangeContentSource/components/ContentSourceForm.js +63 -25
  234. data/webpack/scenes/Hosts/ChangeContentSource/index.js +24 -16
  235. data/webpack/scenes/RedHatRepositories/__tests__/__snapshots__/RedHatRepositoriesPage.test.js.snap +1 -0
  236. data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +64 -5
  237. data/webpack/scenes/Subscriptions/UpstreamSubscriptions/UpstreamSubscriptionsPage.js +16 -13
  238. data/webpack/scenes/Subscriptions/UpstreamSubscriptions/__tests__/__snapshots__/UpstreamSubscriptionsPage.test.js.snap +14 -8
  239. data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsPage.test.js.snap +1 -0
  240. data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/SubscriptionsToolbar.js +1 -1
  241. metadata +59 -40
  242. data/app/assets/javascripts/katello/hosts/activation_key_edit.js +0 -167
  243. data/app/lib/actions/katello/host/upload_package_profile.rb +0 -45
  244. data/app/lib/actions/katello/host/upload_profiles.rb +0 -47
@@ -250,16 +250,18 @@
250
250
  </p>
251
251
  </div>
252
252
 
253
- <div bst-form-group label="{{ 'Upstream Authentication Token' | translate }}" >
254
- <input id="upstream_authentication_token"
255
- name="upstream_authentication_token"
256
- type="text"
257
- autocomplete="off"
258
- ng-model="repository.upstream_authentication_token"/>
259
- <p class="help-block" translate>
260
- Token of the upstream repository user for authentication. Leave empty if repository does not require authentication.
261
- </p>
262
- </div>
253
+ <span ng-show="repository.content_type === 'yum'">
254
+ <div bst-form-group label="{{ 'Upstream Authentication Token' | translate }}" >
255
+ <input id="upstream_authentication_token"
256
+ name="upstream_authentication_token"
257
+ type="text"
258
+ autocomplete="off"
259
+ ng-model="repository.upstream_authentication_token"/>
260
+ <p class="help-block" translate>
261
+ Token of the upstream repository user for authentication. Leave empty if repository does not require authentication.
262
+ </p>
263
+ </div>
264
+ </span>
263
265
 
264
266
  <div ng-repeat="option in genericRemoteOptions" ng-if="repository.generic_remote_options !== []">
265
267
  <div ng-if='option.input_type=="text"' bst-form-group label="{{ option.title | translate }}">
@@ -54,7 +54,7 @@ module Katello
54
54
  @plugin.permission :manage_capsule_content,
55
55
  {
56
56
  'katello/api/v2/capsule_content' => [:add_lifecycle_environment, :remove_lifecycle_environment,
57
- :update_counts, :sync, :reclaim_space, :cancel_sync],
57
+ :update_counts, :sync, :reclaim_space, :verify_checksum, :cancel_sync],
58
58
  'katello/api/v2/capsules' => [:index, :show]
59
59
  },
60
60
  :resource_type => 'SmartProxy'
@@ -134,7 +134,7 @@ module Katello
134
134
  @plugin.permission :publish_content_views,
135
135
  {
136
136
  'katello/api/v2/content_views' => [:publish],
137
- 'katello/api/v2/content_view_versions' => [:incremental_update, :republish_repositories],
137
+ 'katello/api/v2/content_view_versions' => [:incremental_update, :republish_repositories, :verify_checksum],
138
138
  'katello/api/v2/content_imports' => [:version, :index]
139
139
  },
140
140
  :resource_type => 'Katello::ContentView',
@@ -142,7 +142,7 @@ module Katello
142
142
  @plugin.permission :promote_or_remove_content_views,
143
143
  {
144
144
  'katello/api/v2/content_view_versions' => [:promote],
145
- 'katello/api/v2/content_views' => [:remove_from_environment, :remove, :republish_repositories]
145
+ 'katello/api/v2/content_views' => [:remove_from_environment, :remove, :republish_repositories, :verify_checksum]
146
146
  },
147
147
  :resource_type => 'Katello::ContentView',
148
148
  :finder_scope => :promotable_or_removable
@@ -8,13 +8,10 @@ Foreman::AccessControl.permission(:create_personal_access_tokens).actions.concat
8
8
  'katello/api/registry/registry_proxies/catalog',
9
9
  'katello/api/registry/registry_proxies/tags_list',
10
10
  'katello/api/registry/registry_proxies/pull_manifest',
11
- #'katello/api/registry/registry_proxies/push_manifest',
11
+ 'katello/api/registry/registry_proxies/push_manifest',
12
12
  'katello/api/registry/registry_proxies/pull_blob',
13
13
  'katello/api/registry/registry_proxies/check_blob',
14
- #'katello/api/registry/registry_proxies/start_upload_blob',
15
- #'katello/api/registry/registry_proxies/upload_blob',
16
- #'katello/api/registry/registry_proxies/chunk_upload_blob',
17
- #'katello/api/registry/registry_proxies/finish_upload_blob',
18
- 'katello/api/registry/registry_proxies/status_upload_blob',
19
- 'katello/api/registry/registry_proxies/cancel_upload_blob'
14
+ 'katello/api/registry/registry_proxies/start_upload_blob',
15
+ 'katello/api/registry/registry_proxies/upload_blob',
16
+ 'katello/api/registry/registry_proxies/finish_upload_blob'
20
17
  ]
@@ -4,7 +4,7 @@ require 'katello/host_status_manager'
4
4
  # rubocop:disable Metrics/BlockLength
5
5
 
6
6
  Foreman::Plugin.register :katello do
7
- requires_foreman '>= 3.7'
7
+ requires_foreman '>= 3.11'
8
8
  register_gettext
9
9
 
10
10
  sub_menu :top_menu, :content_menu, :caption => N_('Content'),
@@ -373,13 +373,6 @@ Foreman::Plugin.register :katello do
373
373
  collection: proc { http_proxy_select },
374
374
  include_blank: N_("no global default")
375
375
 
376
- setting 'cdn_ssl_version',
377
- type: :string,
378
- default: nil,
379
- full_name: N_('CDN SSL version'),
380
- description: N_("SSL version used to communicate with the CDN"),
381
- collection: proc { hashify_parameters(Katello::Resources::CDN::SUPPORTED_SSL_VERSIONS) }
382
-
383
376
  setting 'katello_default_provision',
384
377
  type: :string,
385
378
  default: 'Kickstart default',
@@ -519,6 +512,12 @@ Foreman::Plugin.register :katello do
519
512
  description: N_("Default download policy for Smart Proxy syncs (either 'inherit', immediate', or 'on_demand')"),
520
513
  collection: proxy_download_policies
521
514
 
515
+ setting 'validate_host_lce_content_source_coherence',
516
+ type: :boolean,
517
+ default: true,
518
+ full_name: N_('Validate host/lifecycle environment/content source coherence'),
519
+ description: N_("Validate that a host's assigned lifecycle environment is synced by the smart proxy from which the host will get its content. Applies only to API requests; does not affect web UI checks")
520
+
522
521
  setting 'pulpcore_export_destination',
523
522
  type: :string,
524
523
  default: "/var/lib/pulp/exports",
@@ -585,7 +584,7 @@ Foreman::Plugin.register :katello do
585
584
  type: :integer,
586
585
  default: 120,
587
586
  full_name: N_('Expire soon days'),
588
- description: N_('The number of days remaining in a subscription before you will be reminded about renewing it.')
587
+ description: N_('The number of days remaining in a subscription before you will be reminded about renewing it. Also used for manifest expiration warnings.')
589
588
 
590
589
  setting 'host_dmi_uuid_duplicates',
591
590
  type: :array,
@@ -629,12 +628,6 @@ Foreman::Plugin.register :katello do
629
628
  full_name: N_('Pulp bulk load size'),
630
629
  description: N_('The number of items fetched from a single paged Pulp API call.')
631
630
 
632
- setting 'upload_profiles_without_dynflow',
633
- type: :boolean,
634
- default: true,
635
- full_name: N_('Upload profiles without Dynflow'),
636
- description: N_('Allow Katello to update host installed packages, enabled repos, and module inventory directly instead of wrapped in Dynflow tasks (try turning off if Puma processes are using too much memory)')
637
-
638
631
  setting 'orphan_protection_time',
639
632
  type: :integer,
640
633
  default: 1440,
@@ -676,6 +669,7 @@ Foreman::Plugin.register :katello do
676
669
  RemoteExecutionFeature.register(:katello_service_restart, N_("Katello: Service Restart"), :description => N_("Restart Services via Katello interface"), :provided_inputs => ['helpers'])
677
670
  RemoteExecutionFeature.register(:katello_host_tracer_resolve, N_("Katello: Resolve Traces"), :description => N_("Resolve traces via Katello interface"), :provided_inputs => ['ids'])
678
671
  RemoteExecutionFeature.register(:katello_change_content_source, N_("Katello: Configure host for new content source"), :description => N_("Replace content source on the target machine"), :provided_inputs => [])
672
+ RemoteExecutionFeature.register(:katello_upload_profile, N_("Katello: Upload Profile"), :description => N_("Upload package / repos profile"), :provided_inputs => [])
679
673
  RemoteExecutionFeature.register(:katello_module_stream_action, N_("Katello: Module Stream Actions"),
680
674
  :description => N_("Perform a module stream action via Katello interface"),
681
675
  :provided_inputs => ['action', 'module_spec', 'options'])
@@ -727,7 +721,7 @@ Foreman::Plugin.register :katello do
727
721
  ], 'Role granting permission to import content views in an organization'
728
722
 
729
723
  role 'Content Exporter', [
730
- :export_content, :view_products, :view_content_views, :view_organizations
724
+ :export_content, :view_products, :view_content_views, :create_content_views, :view_organizations
731
725
  ], 'Role granting permission to export content views in an organization'
732
726
 
733
727
  def find_katello_assets(args = {})
@@ -18,6 +18,12 @@ Katello::RepositoryTypeManager.register('ostree') do
18
18
  distribution_class PulpOstreeClient::OstreeOstreeDistribution
19
19
  repo_sync_url_class PulpOstreeClient::RepositorySyncURL
20
20
 
21
+ generic_remote_option :include_refs, title: N_("Include Refs"), type: Array, input_type: "text", delimiter: ",", default: [],
22
+ description: N_("A comma-separated list of refs to include during a sync. The wildcards *, ? are recognized.")
23
+
24
+ generic_remote_option :exclude_refs, title: N_("Exclude Refs"), type: Array, input_type: "text", delimiter: ",", default: [],
25
+ description: N_("A comma-separated list of tags to exclude during a sync. The wildcards *, ? are recognized. 'exclude_refs' is evaluated after 'include_refs'.")
26
+
21
27
  url_description N_("URL of an OSTree repository.")
22
28
 
23
29
  generic_content_type 'ostree_ref',
@@ -47,4 +53,5 @@ Katello::RepositoryTypeManager.register('ostree') do
47
53
  default_managed_content_type :ostree_ref
48
54
 
49
55
  test_url 'https://fixtures.pulpproject.org/ostree/small/'
56
+ test_url_root_options generic_remote_options: {include_refs: ['rawhide']}.to_json
50
57
  end
@@ -1,6 +1,12 @@
1
1
  # First, we check if there's a job already enqueued for any notifications
2
2
  ::Foreman::Application.dynflow.config.on_init do |world|
3
- [CreateExpiredManifestNotifications, CreateHostLifecycleExpireSoonNotifications, CreatePulpDiskSpaceNotifications, SendExpireSoonNotifications].each do |job_class|
3
+ [
4
+ CreateExpiredManifestNotifications,
5
+ CreateHostLifecycleExpireSoonNotifications,
6
+ CreatePulpDiskSpaceNotifications,
7
+ SendExpireSoonNotifications,
8
+ CreateManifestExpireSoonWarningNotifications
9
+ ].each do |job_class|
4
10
  job_class.spawn_if_missing(world)
5
11
  end
6
12
  end
@@ -75,7 +75,7 @@ namespace :katello do
75
75
  print "The following changes will not actually be performed. Rerun with COMMIT=true to apply the changes\n"
76
76
  end
77
77
 
78
- SETTINGS[:katello][:candlepin][:bulk_load_size] = 1_500
78
+ SETTINGS[:katello][:candlepin][:bulk_load_size] = 125
79
79
  User.current = User.anonymous_admin
80
80
  cleaner = BackendCleaner.new
81
81
  cleaner.populate!
@@ -71,6 +71,12 @@ namespace :katello do
71
71
  end
72
72
  end
73
73
 
74
+ desc "Re-import all container manifests to populate labels and annotations."
75
+ task :import_container_manifest_labels => ["dynflow:client", "check_ping"] do
76
+ User.current = User.anonymous_api_admin
77
+ handle_manifest_label_updates
78
+ end
79
+
74
80
  def lookup_repositories
75
81
  lifecycle_envs = Katello::KTEnvironment.where(:name => ENV['LIFECYCLE_ENVIRONMENT']) if ENV['LIFECYCLE_ENVIRONMENT']
76
82
  content_views = Katello::ContentView.where(:name => ENV['CONTENT_VIEW']) if ENV['CONTENT_VIEW']
@@ -108,6 +114,22 @@ namespace :katello do
108
114
  end
109
115
  end
110
116
 
117
+ def handle_manifest_label_updates
118
+ batch_size = 1000
119
+ Katello::DockerManifest.
120
+ where(schema_version: 2).
121
+ where(annotations: {}, labels: {}).
122
+ where(is_bootable: false, is_flatpak: false).
123
+ find_in_batches(batch_size: batch_size) do |group|
124
+ manifest_unit_ids = group.pluck(:pulp_id)
125
+ index_service = Katello::ContentUnitIndexer.new(
126
+ content_type: Katello::RepositoryTypeManager.find_content_type("docker_manifest"),
127
+ pulp_content_ids: manifest_unit_ids
128
+ )
129
+ index_service.reimport_units
130
+ end
131
+ end
132
+
111
133
  def handle_missing_root_repo(root_repo)
112
134
  root_repo.destroy! if commit?
113
135
  end
@@ -1,3 +1,3 @@
1
1
  module Katello
2
- VERSION = "4.12.0.rc3".freeze
2
+ VERSION = "4.13.0.rc1".freeze
3
3
  end
@@ -4,7 +4,6 @@ _("Abstract")
4
4
  _("Attach subscriptions")
5
5
  _("Auto attach subscriptions")
6
6
  _("Bulk generate applicability for hosts")
7
- _("Combined Profile Update")
8
7
  _("Copy version units to library")
9
8
  _("Create Alternate Content Source")
10
9
  _("Create Export History")
@@ -48,7 +47,7 @@ _("Index errata")
48
47
  _("Index module streams")
49
48
  _("Index package groups")
50
49
  _("Instance update")
51
- _("Package Profile Update")
50
+ _("Metadata generate")
52
51
  _("Product Create")
53
52
  _("Promote")
54
53
  _("Promotion to Environment")
@@ -72,7 +71,7 @@ _("Update CDN Configuration")
72
71
  _("Update Content Counts")
73
72
  _("Update Content Overrides")
74
73
  _("Update content urls")
75
- _("Update for host")
74
+ _("Update content view environments for host")
76
75
  _("Update http proxy details")
77
76
  _("Update http proxy")
78
77
  _("Update redhat repository")
@@ -86,4 +85,6 @@ _("Update")
86
85
  _("Updating System Purpose for host")
87
86
  _("Upload into")
88
87
  _("Upload into")
88
+ _("Verify checksum for content on smart proxy")
89
+ _("Verify checksum of version repositories")
89
90
  _("Verify checksum")