katello 4.18.0.rc2 → 4.18.0

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

Potentially problematic release.


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

Files changed (234) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/locale/bn/katello.js +279 -15
  3. data/app/assets/javascripts/katello/locale/bn_IN/katello.js +279 -15
  4. data/app/assets/javascripts/katello/locale/ca/katello.js +281 -17
  5. data/app/assets/javascripts/katello/locale/cs/katello.js +280 -16
  6. data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +282 -18
  7. data/app/assets/javascripts/katello/locale/de/katello.js +290 -26
  8. data/app/assets/javascripts/katello/locale/de_AT/katello.js +279 -15
  9. data/app/assets/javascripts/katello/locale/de_DE/katello.js +281 -17
  10. data/app/assets/javascripts/katello/locale/el/katello.js +281 -17
  11. data/app/assets/javascripts/katello/locale/en/katello.js +280 -16
  12. data/app/assets/javascripts/katello/locale/en_GB/katello.js +280 -16
  13. data/app/assets/javascripts/katello/locale/en_US/katello.js +279 -15
  14. data/app/assets/javascripts/katello/locale/es/katello.js +445 -181
  15. data/app/assets/javascripts/katello/locale/et_EE/katello.js +279 -15
  16. data/app/assets/javascripts/katello/locale/fr/katello.js +1097 -833
  17. data/app/assets/javascripts/katello/locale/gl/katello.js +279 -15
  18. data/app/assets/javascripts/katello/locale/gu/katello.js +279 -15
  19. data/app/assets/javascripts/katello/locale/he_IL/katello.js +279 -15
  20. data/app/assets/javascripts/katello/locale/hi/katello.js +279 -15
  21. data/app/assets/javascripts/katello/locale/id/katello.js +279 -15
  22. data/app/assets/javascripts/katello/locale/it/katello.js +281 -17
  23. data/app/assets/javascripts/katello/locale/ja/katello.js +826 -562
  24. data/app/assets/javascripts/katello/locale/ka/katello.js +677 -413
  25. data/app/assets/javascripts/katello/locale/kn/katello.js +279 -15
  26. data/app/assets/javascripts/katello/locale/ko/katello.js +2325 -2062
  27. data/app/assets/javascripts/katello/locale/ml_IN/katello.js +279 -15
  28. data/app/assets/javascripts/katello/locale/mr/katello.js +279 -15
  29. data/app/assets/javascripts/katello/locale/nl_NL/katello.js +279 -15
  30. data/app/assets/javascripts/katello/locale/or/katello.js +279 -15
  31. data/app/assets/javascripts/katello/locale/pa/katello.js +279 -15
  32. data/app/assets/javascripts/katello/locale/pl/katello.js +281 -17
  33. data/app/assets/javascripts/katello/locale/pl_PL/katello.js +279 -15
  34. data/app/assets/javascripts/katello/locale/pt/katello.js +279 -15
  35. data/app/assets/javascripts/katello/locale/pt_BR/katello.js +458 -194
  36. data/app/assets/javascripts/katello/locale/ro/katello.js +279 -15
  37. data/app/assets/javascripts/katello/locale/ro_RO/katello.js +279 -15
  38. data/app/assets/javascripts/katello/locale/ru/katello.js +281 -17
  39. data/app/assets/javascripts/katello/locale/sl/katello.js +281 -17
  40. data/app/assets/javascripts/katello/locale/sv_SE/katello.js +279 -15
  41. data/app/assets/javascripts/katello/locale/ta/katello.js +279 -15
  42. data/app/assets/javascripts/katello/locale/ta_IN/katello.js +279 -15
  43. data/app/assets/javascripts/katello/locale/te/katello.js +279 -15
  44. data/app/assets/javascripts/katello/locale/tr/katello.js +279 -15
  45. data/app/assets/javascripts/katello/locale/vi/katello.js +279 -15
  46. data/app/assets/javascripts/katello/locale/vi_VN/katello.js +279 -15
  47. data/app/assets/javascripts/katello/locale/zh/katello.js +279 -15
  48. data/app/assets/javascripts/katello/locale/zh_CN/katello.js +831 -567
  49. data/app/assets/javascripts/katello/locale/zh_TW/katello.js +281 -17
  50. data/app/controllers/katello/api/registry/registry_proxies_controller.rb +2 -2
  51. data/app/controllers/katello/api/v2/content_export_incrementals_controller.rb +69 -19
  52. data/app/controllers/katello/api/v2/exports_controller.rb +14 -7
  53. data/app/controllers/katello/api/v2/flatpak_remote_repositories_controller.rb +9 -0
  54. data/app/controllers/katello/api/v2/host_errata_controller.rb +24 -2
  55. data/app/controllers/katello/api/v2/organizations_controller.rb +10 -4
  56. data/app/controllers/katello/api/v2/repositories_controller.rb +12 -3
  57. data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +36 -8
  58. data/app/lib/actions/katello/content_view/remove_rolling_repo_clone.rb +9 -1
  59. data/app/lib/actions/katello/repository/destroy.rb +3 -2
  60. data/app/lib/actions/pulp3/orchestration/content_view_version/export_library.rb +1 -2
  61. data/app/lib/actions/pulp3/orchestration/content_view_version/export_repository.rb +1 -2
  62. data/app/lib/katello/errors.rb +2 -0
  63. data/app/models/katello/content_view_environment.rb +3 -0
  64. data/app/models/katello/rhel_lifecycle_status.rb +3 -1
  65. data/app/services/katello/pulp3/content_view_version/export.rb +32 -25
  66. data/app/services/katello/pulp3/content_view_version/export_validator.rb +1 -1
  67. data/app/views/katello/api/v2/content_facet/base.json.rabl +3 -0
  68. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata-type.filter.js +1 -1
  69. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +8 -0
  70. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn.po +6 -5
  71. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn_IN.po +6 -5
  72. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ca.po +6 -5
  73. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/cs_CZ.po +6 -5
  74. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de.po +6 -5
  75. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_AT.po +6 -5
  76. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_DE.po +6 -5
  77. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/el.po +6 -5
  78. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_GB.po +6 -5
  79. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_US.po +6 -5
  80. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/es.po +6 -5
  81. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/et_EE.po +6 -5
  82. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/fr.po +6 -5
  83. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gl.po +6 -5
  84. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gu.po +6 -5
  85. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/he_IL.po +6 -5
  86. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/hi.po +6 -5
  87. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/id.po +6 -5
  88. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/it.po +6 -5
  89. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ja.po +6 -5
  90. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ka.po +6 -5
  91. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/kn.po +6 -5
  92. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ko.po +6 -5
  93. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ml_IN.po +6 -5
  94. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/mr.po +6 -5
  95. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/nl_NL.po +6 -5
  96. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/or.po +6 -5
  97. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pa.po +6 -5
  98. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl.po +6 -5
  99. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl_PL.po +6 -5
  100. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt.po +6 -5
  101. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt_BR.po +6 -5
  102. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro.po +6 -5
  103. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro_RO.po +6 -5
  104. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ru.po +6 -5
  105. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sl.po +6 -5
  106. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sv_SE.po +6 -5
  107. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta.po +6 -5
  108. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta_IN.po +6 -5
  109. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/te.po +6 -5
  110. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/tr.po +6 -5
  111. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi.po +6 -5
  112. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi_VN.po +6 -5
  113. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh.po +6 -5
  114. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_CN.po +6 -5
  115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_TW.po +6 -5
  116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/translations.js +11 -11
  117. data/lib/katello/plugin.rb +6 -0
  118. data/lib/katello/tasks/repository.rake +67 -0
  119. data/lib/katello/version.rb +1 -1
  120. data/locale/bn/LC_MESSAGES/katello.mo +0 -0
  121. data/locale/bn/katello.po +279 -15
  122. data/locale/bn_IN/LC_MESSAGES/katello.mo +0 -0
  123. data/locale/bn_IN/katello.po +279 -15
  124. data/locale/ca/LC_MESSAGES/katello.mo +0 -0
  125. data/locale/ca/katello.po +282 -18
  126. data/locale/cs/LC_MESSAGES/katello.mo +0 -0
  127. data/locale/cs/katello.po +280 -17
  128. data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
  129. data/locale/cs_CZ/katello.po +283 -19
  130. data/locale/de/LC_MESSAGES/katello.mo +0 -0
  131. data/locale/de/katello.po +295 -31
  132. data/locale/de_AT/LC_MESSAGES/katello.mo +0 -0
  133. data/locale/de_AT/katello.po +279 -15
  134. data/locale/de_DE/LC_MESSAGES/katello.mo +0 -0
  135. data/locale/de_DE/katello.po +282 -18
  136. data/locale/el/LC_MESSAGES/katello.mo +0 -0
  137. data/locale/el/katello.po +282 -18
  138. data/locale/en/LC_MESSAGES/katello.mo +0 -0
  139. data/locale/en/katello.po +280 -17
  140. data/locale/en_GB/LC_MESSAGES/katello.mo +0 -0
  141. data/locale/en_GB/katello.po +280 -16
  142. data/locale/en_US/LC_MESSAGES/katello.mo +0 -0
  143. data/locale/en_US/katello.po +279 -15
  144. data/locale/es/LC_MESSAGES/katello.mo +0 -0
  145. data/locale/es/katello.po +449 -184
  146. data/locale/et_EE/LC_MESSAGES/katello.mo +0 -0
  147. data/locale/et_EE/katello.po +279 -15
  148. data/locale/fr/LC_MESSAGES/katello.mo +0 -0
  149. data/locale/fr/katello.po +1103 -840
  150. data/locale/gl/LC_MESSAGES/katello.mo +0 -0
  151. data/locale/gl/katello.po +279 -15
  152. data/locale/gu/LC_MESSAGES/katello.mo +0 -0
  153. data/locale/gu/katello.po +279 -15
  154. data/locale/he_IL/LC_MESSAGES/katello.mo +0 -0
  155. data/locale/he_IL/katello.po +279 -15
  156. data/locale/hi/LC_MESSAGES/katello.mo +0 -0
  157. data/locale/hi/katello.po +279 -15
  158. data/locale/id/LC_MESSAGES/katello.mo +0 -0
  159. data/locale/id/katello.po +279 -15
  160. data/locale/it/LC_MESSAGES/katello.mo +0 -0
  161. data/locale/it/katello.po +282 -18
  162. data/locale/ja/LC_MESSAGES/katello.mo +0 -0
  163. data/locale/ja/katello.po +833 -568
  164. data/locale/ka/LC_MESSAGES/katello.mo +0 -0
  165. data/locale/ka/katello.po +679 -413
  166. data/locale/katello.pot +775 -359
  167. data/locale/kn/LC_MESSAGES/katello.mo +0 -0
  168. data/locale/kn/katello.po +279 -15
  169. data/locale/ko/LC_MESSAGES/katello.mo +0 -0
  170. data/locale/ko/katello.po +2334 -2058
  171. data/locale/ml_IN/LC_MESSAGES/katello.mo +0 -0
  172. data/locale/ml_IN/katello.po +279 -15
  173. data/locale/mr/LC_MESSAGES/katello.mo +0 -0
  174. data/locale/mr/katello.po +279 -15
  175. data/locale/nl_NL/LC_MESSAGES/katello.mo +0 -0
  176. data/locale/nl_NL/katello.po +279 -15
  177. data/locale/or/LC_MESSAGES/katello.mo +0 -0
  178. data/locale/or/katello.po +279 -15
  179. data/locale/pa/LC_MESSAGES/katello.mo +0 -0
  180. data/locale/pa/katello.po +279 -15
  181. data/locale/pl/LC_MESSAGES/katello.mo +0 -0
  182. data/locale/pl/katello.po +282 -18
  183. data/locale/pl_PL/LC_MESSAGES/katello.mo +0 -0
  184. data/locale/pl_PL/katello.po +279 -15
  185. data/locale/pt/LC_MESSAGES/katello.mo +0 -0
  186. data/locale/pt/katello.po +279 -15
  187. data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
  188. data/locale/pt_BR/katello.po +462 -197
  189. data/locale/ro/LC_MESSAGES/katello.mo +0 -0
  190. data/locale/ro/katello.po +279 -15
  191. data/locale/ro_RO/LC_MESSAGES/katello.mo +0 -0
  192. data/locale/ro_RO/katello.po +279 -15
  193. data/locale/ru/LC_MESSAGES/katello.mo +0 -0
  194. data/locale/ru/katello.po +282 -18
  195. data/locale/sl/LC_MESSAGES/katello.mo +0 -0
  196. data/locale/sl/katello.po +282 -18
  197. data/locale/sv_SE/LC_MESSAGES/katello.mo +0 -0
  198. data/locale/sv_SE/katello.po +279 -15
  199. data/locale/ta/LC_MESSAGES/katello.mo +0 -0
  200. data/locale/ta/katello.po +279 -15
  201. data/locale/ta_IN/LC_MESSAGES/katello.mo +0 -0
  202. data/locale/ta_IN/katello.po +279 -15
  203. data/locale/te/LC_MESSAGES/katello.mo +0 -0
  204. data/locale/te/katello.po +279 -15
  205. data/locale/tr/LC_MESSAGES/katello.mo +0 -0
  206. data/locale/tr/katello.po +279 -15
  207. data/locale/vi/LC_MESSAGES/katello.mo +0 -0
  208. data/locale/vi/katello.po +279 -15
  209. data/locale/vi_VN/LC_MESSAGES/katello.mo +0 -0
  210. data/locale/vi_VN/katello.po +279 -15
  211. data/locale/zh/LC_MESSAGES/katello.mo +0 -0
  212. data/locale/zh/katello.po +279 -15
  213. data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
  214. data/locale/zh_CN/katello.po +836 -567
  215. data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
  216. data/locale/zh_TW/katello.po +282 -18
  217. data/webpack/components/Errata/index.js +18 -0
  218. data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/HostErrataConstants.js +3 -0
  219. data/webpack/global_index.js +0 -4
  220. data/webpack/redux/actions/RedHatRepositories/helpers.js +3 -3
  221. data/webpack/redux/reducers/index.js +0 -2
  222. metadata +4 -16
  223. data/webpack/components/extensions/about/SystemStatuses.js +0 -55
  224. data/webpack/components/extensions/about/SystemStatusesActions.js +0 -16
  225. data/webpack/components/extensions/about/SystemStatusesConsts.js +0 -3
  226. data/webpack/components/extensions/about/SystemStatusesReducer.js +0 -26
  227. data/webpack/components/extensions/about/SystemStatusesSelectors.js +0 -3
  228. data/webpack/components/extensions/about/__tests__/SystemStatuses.fixtures.js +0 -20
  229. data/webpack/components/extensions/about/__tests__/SystemStatuses.test.js +0 -14
  230. data/webpack/components/extensions/about/__tests__/SystemStatusesReducer.test.js +0 -32
  231. data/webpack/components/extensions/about/__tests__/__snapshots__/SystemStatuses.test.js.snap +0 -156
  232. data/webpack/components/extensions/about/__tests__/__snapshots__/SystemStatusesReducer.test.js.snap +0 -47
  233. data/webpack/components/extensions/about/index.js +0 -19
  234. data/webpack/components/extensions/reducers.js +0 -6
@@ -711,6 +711,12 @@ Foreman::Plugin.register :katello do
711
711
  full_name: N_('Enable structured APT for deb content'),
712
712
  description: N_("If set, newly created APT repos in Katello will use the same repo structure as the remote repos they are synchronized from. " \
713
713
  "You may migrate existing APT repos to match the setting, by running 'foreman-rake katello:migrate_structure_content_for_deb'.")
714
+
715
+ setting 'registry_token_expiration_minutes',
716
+ type: :integer,
717
+ default: 60,
718
+ full_name: N_('Registry token expiration time'),
719
+ description: N_('Time in minutes before registry access tokens expire.')
714
720
  end
715
721
  end
716
722
 
@@ -78,6 +78,73 @@ namespace :katello do
78
78
  handle_manifest_list_label_updates
79
79
  end
80
80
 
81
+ desc "Clean up duplicate erratum_packages"
82
+ task :cleanup_duplicate_erratum_packages => ["dynflow:client", "check_ping"] do
83
+ User.current = User.anonymous_api_admin
84
+ handle_duplicate_erratum_packages
85
+ end
86
+
87
+ def handle_duplicate_erratum_packages
88
+ # Get all duplicate groups
89
+ duplicate_groups = Katello::ErratumPackage
90
+ .select(:nvrea, :erratum_id, :name, :filename)
91
+ .group(:nvrea, :erratum_id, :name, :filename)
92
+ .having('COUNT(*) > 1')
93
+
94
+ return if duplicate_groups.empty?
95
+ # Alert users that they need to reindex their database to ensure the indexes are re-run and active.
96
+ puts "Please reindex your database to ensure indexes are rebuilt and active."
97
+ puts "This can be achieved by running `runuser -u postgres -- reindexdb -a`"
98
+ puts "Seek technical support for any errors with database reindexing."
99
+ # Build mapping of duplicates to keep/delete in memory
100
+ ids_to_delete = []
101
+ update_mappings = {}
102
+
103
+ duplicate_groups.each do |group|
104
+ # Get all IDs for this duplicate group in one query
105
+ duplicate_ids = Katello::ErratumPackage
106
+ .where(
107
+ nvrea: group.nvrea,
108
+ erratum_id: group.erratum_id,
109
+ name: group.name,
110
+ filename: group.filename
111
+ )
112
+ .order(:id)
113
+ .pluck(:id)
114
+
115
+ id_to_keep = duplicate_ids.first
116
+ ids_to_remove = duplicate_ids[1..]
117
+
118
+ ids_to_delete.concat(ids_to_remove)
119
+ ids_to_remove.each { |id| update_mappings[id] = id_to_keep }
120
+ end
121
+
122
+ return if ids_to_delete.empty?
123
+
124
+ # Handle references - delete conflicting ones first, then update remaining
125
+ update_mappings.each_slice(1000) do |batch|
126
+ batch.each do |old_id, new_id|
127
+ # Delete records where module_stream already has the target erratum_package
128
+ Katello::ModuleStreamErratumPackage
129
+ .where(erratum_package_id: old_id)
130
+ .where(
131
+ module_stream_id: Katello::ModuleStreamErratumPackage
132
+ .where(erratum_package_id: new_id)
133
+ .select(:module_stream_id)
134
+ )
135
+ .delete_all
136
+
137
+ # Update remaining records
138
+ Katello::ModuleStreamErratumPackage
139
+ .where(erratum_package_id: old_id)
140
+ .update_all(erratum_package_id: new_id)
141
+ end
142
+ end
143
+
144
+ Katello::ErratumPackage.where(id: ids_to_delete).delete_all
145
+ puts "Deleted #{ids_to_delete.size} duplicate erratum_packages"
146
+ end
147
+
81
148
  def lookup_repositories
82
149
  lifecycle_envs = Katello::KTEnvironment.where(:name => ENV['LIFECYCLE_ENVIRONMENT']) if ENV['LIFECYCLE_ENVIRONMENT']
83
150
  content_views = Katello::ContentView.where(:name => ENV['CONTENT_VIEW']) if ENV['CONTENT_VIEW']
@@ -1,3 +1,3 @@
1
1
  module Katello
2
- VERSION = "4.18.0.rc2".freeze
2
+ VERSION = "4.18.0".freeze
3
3
  end
Binary file