katello 4.17.0 → 4.17.1
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.
- checksums.yaml +4 -4
- data/app/controllers/katello/api/registry/registry_proxies_controller.rb +2 -0
- data/app/lib/actions/katello/repository/destroy.rb +3 -0
- data/app/views/foreman/job_templates/install_packages_by_search_query_-_katello_ansible_default.erb +6 -14
- data/app/views/foreman/job_templates/remove_packages_by_search_query_-_katello_ansible_default.erb +2 -15
- data/app/views/foreman/job_templates/update_packages_by_search_query_-_katello_ansible_default.erb +5 -13
- data/db/migrate/20240924161240_katello_recreate_evr_constructs.rb +20 -0
- data/db/migrate/20250714190050_add_missing_rpms_evr_index.rb +14 -0
- data/lib/katello/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 522d23e5be01ddc111e940e111a09d858a2dfa686c9cbb17ac0c883b14f224bc
|
4
|
+
data.tar.gz: 6f6dc2887f0eafdd0500edeb62792318da9bd25612565fcef2027423b364d2c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 597e47e1205993f0223f0151f24accea76c030eb0a98536f9b9e05cb1d1f49341c69543bf79a4781b700fa948f6df53769dbaa44d6c54399f504362bd1729b68
|
7
|
+
data.tar.gz: 263fe1e31f8469f6a7ea74c932c1fa8bab9769200d72aca0f3a94c47d5772a4a5c8c10661ea1abe0bebdcc53b416584fa17a98c1c12e1a94e8519eab4fbf93b9
|
@@ -560,6 +560,8 @@ module Katello
|
|
560
560
|
|
561
561
|
def check_blob
|
562
562
|
pulp_response = Resources::Registry::Proxy.get(@_request.fullpath, 'Accept' => request.headers['Accept'])
|
563
|
+
response.headers['Content-Type'] = pulp_response.headers[:content_type] if pulp_response.headers[:content_type]
|
564
|
+
response.headers['Content-Length'] = pulp_response.headers[:content_length] if pulp_response.headers[:content_length]
|
563
565
|
head pulp_response.code
|
564
566
|
end
|
565
567
|
|
@@ -88,6 +88,9 @@ module Actions
|
|
88
88
|
def handle_custom_content(repository, remove_from_content_view_versions)
|
89
89
|
#if this is the last instance of a custom repo or a deb repo using structured APT, destroy the content
|
90
90
|
if remove_from_content_view_versions || repository.root.repositories.where.not(id: repository.id).empty? || repository.deb_using_structured_apt?
|
91
|
+
# Never destroy content for structured apt rolling repo clones, because it belongs to the library instance
|
92
|
+
return if repository.deb_using_structured_apt? && repository.content_view.rolling?
|
93
|
+
|
91
94
|
plan_action(::Actions::Katello::Product::ContentDestroy, repository)
|
92
95
|
end
|
93
96
|
end
|
data/app/views/foreman/job_templates/install_packages_by_search_query_-_katello_ansible_default.erb
CHANGED
@@ -19,23 +19,15 @@ template_inputs:
|
|
19
19
|
- hosts: all
|
20
20
|
tasks:
|
21
21
|
<%= indent(4) { snippet('check_bootc_status') } %>
|
22
|
-
- name: Enable bootc overlay
|
23
|
-
shell:
|
24
|
-
cmd: 'bootc usr-overlay'
|
25
|
-
register: out
|
26
|
-
ignore_errors: true
|
27
|
-
when: is_bootc_host
|
28
|
-
- debug: var=out
|
29
|
-
- name: Install packages via dnf for image mode machines
|
30
|
-
package:
|
31
|
-
use: 'dnf'
|
32
22
|
<% if package_names.empty? -%>
|
33
|
-
|
23
|
+
- name: Install all packages transiently for image mode machines
|
24
|
+
shell: "dnf --transient install -y '*'"
|
25
|
+
when: is_bootc_host
|
34
26
|
<% else -%>
|
35
|
-
|
36
|
-
|
37
|
-
<% end -%>
|
27
|
+
- name: Install packages transiently for image mode machines
|
28
|
+
shell: "dnf --transient install -y <%= package_names.join(' ') %>"
|
38
29
|
when: is_bootc_host
|
30
|
+
<% end -%>
|
39
31
|
- name: Install packages normally
|
40
32
|
package:
|
41
33
|
<% if package_names.empty? -%>
|
data/app/views/foreman/job_templates/remove_packages_by_search_query_-_katello_ansible_default.erb
CHANGED
@@ -19,21 +19,8 @@ template_inputs:
|
|
19
19
|
- hosts: all
|
20
20
|
tasks:
|
21
21
|
<%= indent(4) { snippet('check_bootc_status') } %>
|
22
|
-
- name:
|
23
|
-
shell:
|
24
|
-
cmd: 'bootc usr-overlay'
|
25
|
-
register: out
|
26
|
-
ignore_errors: true
|
27
|
-
when: is_bootc_host
|
28
|
-
- debug: var=out
|
29
|
-
- name: Remove packages via dnf for image mode machines
|
30
|
-
package:
|
31
|
-
name:
|
32
|
-
<% package_names.each do |package_name| -%>
|
33
|
-
- <%= package_name %>
|
34
|
-
<% end -%>
|
35
|
-
state: absent
|
36
|
-
use: 'dnf'
|
22
|
+
- name: Remove packages transiently for image mode machines
|
23
|
+
shell: "dnf --transient remove -y <%= package_names.join(' ') %>"
|
37
24
|
when: is_bootc_host
|
38
25
|
- name: Remove packages normally
|
39
26
|
package:
|
data/app/views/foreman/job_templates/update_packages_by_search_query_-_katello_ansible_default.erb
CHANGED
@@ -28,20 +28,12 @@ template_inputs:
|
|
28
28
|
- hosts: all
|
29
29
|
tasks:
|
30
30
|
<%= indent(4) { snippet('check_bootc_status') } %>
|
31
|
-
- name:
|
32
|
-
shell:
|
33
|
-
|
34
|
-
|
35
|
-
ignore_errors: true
|
31
|
+
- name: Update packages transiently for image mode machines
|
32
|
+
shell: |
|
33
|
+
dnf --transient install -y <%= package_names.join(' ') %>
|
34
|
+
dnf --transient upgrade -y --best <%= package_names.join(' ') %>
|
36
35
|
when: is_bootc_host
|
37
|
-
-
|
38
|
-
- name: Install packages via dnf for image mode machines
|
39
|
-
package:
|
40
|
-
name: <%= indent(10) { to_yaml(package_names).gsub(/---/, "") } -%>
|
41
|
-
state: latest
|
42
|
-
use: 'dnf'
|
43
|
-
when: is_bootc_host
|
44
|
-
- name: Install packages normally
|
36
|
+
- name: Update packages normally
|
45
37
|
package:
|
46
38
|
name: <%= indent(10) { to_yaml(package_names).gsub(/---/, "") } -%>
|
47
39
|
state: latest
|
@@ -1,5 +1,23 @@
|
|
1
1
|
class KatelloRecreateEvrConstructs < ActiveRecord::Migration[6.1]
|
2
|
+
def fix_installed_package_dupes
|
3
|
+
# Remove duplicate installed packages and host installed packages.
|
4
|
+
duplicated_nvreas = ::Katello::InstalledPackage.group(:nvrea).having('count(*) > 1').pluck(:nvrea)
|
5
|
+
duplicated_nvreas.each do |nvrea|
|
6
|
+
packages_relation = ::Katello::InstalledPackage.where(nvrea: nvrea).order(:id)
|
7
|
+
original_package = packages_relation.first
|
8
|
+
duplicate_package_ids = packages_relation.offset(1).pluck(:id)
|
9
|
+
hosts_with_original_package = ::Katello::HostInstalledPackage.where(installed_package_id: original_package.id).pluck(:host_id)
|
10
|
+
if hosts_with_original_package.any?
|
11
|
+
::Katello::HostInstalledPackage.where(host_id: hosts_with_original_package, installed_package_id: duplicate_package_ids).delete_all
|
12
|
+
end
|
13
|
+
::Katello::HostInstalledPackage.where(installed_package_id: duplicate_package_ids).update_all(installed_package_id: original_package.id)
|
14
|
+
::Katello::InstalledPackage.where(id: duplicate_package_ids).delete_all
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
2
18
|
def up
|
19
|
+
fix_installed_package_dupes
|
20
|
+
|
3
21
|
if !extension_enabled?('evr')
|
4
22
|
return
|
5
23
|
else
|
@@ -147,6 +165,8 @@ class KatelloRecreateEvrConstructs < ActiveRecord::Migration[6.1]
|
|
147
165
|
rpmver_array(coalesce(release,'empty'))::evr_array_item[])::evr_t);
|
148
166
|
SQL
|
149
167
|
|
168
|
+
add_index :katello_rpms, [:name, :arch, :evr]
|
169
|
+
|
150
170
|
create_trigger :evr_insert_trigger_katello_rpms, on: :katello_rpms
|
151
171
|
create_trigger :evr_update_trigger_katello_rpms, on: :katello_rpms
|
152
172
|
create_trigger :evr_insert_trigger_katello_installed_packages, on: :katello_installed_packages
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class AddMissingRpmsEvrIndex < ActiveRecord::Migration[7.0]
|
2
|
+
def up
|
3
|
+
# Re-add the katello_rpms EVR index dropped erroneously by 20240924161240.
|
4
|
+
unless index_exists?(:katello_rpms, [:name, :arch, :evr])
|
5
|
+
add_index :katello_rpms, [:name, :arch, :evr]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
def down
|
10
|
+
if index_exists?(:katello_rpms, [:name, :arch, :evr])
|
11
|
+
remove_index :katello_rpms, [:name, :arch, :evr]
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/katello/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: katello
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.17.
|
4
|
+
version: 4.17.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- N/A
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-07-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -2160,6 +2160,7 @@ files:
|
|
2160
2160
|
- db/migrate/20250215143303_drop_katello_yum_metadata_file.rb
|
2161
2161
|
- db/migrate/20250409120843_fix_file_download_policy.rb
|
2162
2162
|
- db/migrate/20250410155300_change_ansible_templates_category.rb
|
2163
|
+
- db/migrate/20250714190050_add_missing_rpms_evr_index.rb
|
2163
2164
|
- db/seeds.d/101-locations.rb
|
2164
2165
|
- db/seeds.d/102-organizations.rb
|
2165
2166
|
- db/seeds.d/104-proxy.rb
|