katello 3.18.2.1 → 3.18.3
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.
- checksums.yaml +4 -4
- data/app/controllers/katello/api/registry/registry_proxies_controller.rb +2 -2
- data/app/lib/actions/katello/orphan_cleanup/remove_orphans.rb +1 -1
- data/app/models/katello/concerns/hostgroup_extensions.rb +1 -1
- data/app/services/katello/applicability/applicable_content_helper.rb +8 -6
- data/app/services/katello/pulp3/api/core.rb +14 -0
- data/app/services/katello/pulp3/migration.rb +20 -12
- data/app/services/katello/pulp3/migration_switchover.rb +13 -0
- data/app/services/katello/pulp3/repository.rb +34 -9
- data/app/services/katello/pulp3/repository/apt.rb +1 -2
- data/app/services/katello/pulp3/task.rb +8 -5
- data/app/services/katello/pulp3/task_group.rb +13 -5
- data/db/migrate/20210420140050_add_pulp3_hrefs_to_content_types_deb.rb +5 -0
- data/lib/katello/engine.rb +1 -1
- data/lib/katello/tasks/check_config.rake +18 -0
- data/lib/katello/tasks/pulp3_content_switchover.rake +5 -3
- data/lib/katello/tasks/pulp3_migration.rake +1 -1
- data/lib/katello/tasks/pulp3_migration_stats.rake +2 -1
- data/lib/katello/tasks/reimport.rake +1 -1
- data/lib/katello/version.rb +1 -1
- metadata +12 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a81840cf9dd6dd5b365f58ff15fcb56479a8a4d28222aaacd1c62f8601684a9a
|
4
|
+
data.tar.gz: f11313470e9660b9a88f0e992cb9f7ea85545b48f7b7148bcf29c4a1e40a7cd7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48801531bfad55800f818b0cd7570dc9710bfa9853d87850936aadc95f01d538bc2235681785a8a7d6744143fc6365d4750afc37754d486f8cfe92f231b66051
|
7
|
+
data.tar.gz: 8fa055b8365689b7781c63b9c115a28bcccd858c274e1ded11b7c226f58efe3d2a787daf7eb754483c379d9e82bfa8028b23d917e7f8ad6ac77a07ba6eb6c44d
|
@@ -184,8 +184,8 @@ module Katello
|
|
184
184
|
'application/vnd.docker.distribution.manifest.v1+prettyjws'
|
185
185
|
end
|
186
186
|
end
|
187
|
-
|
188
|
-
render json: manifest_response
|
187
|
+
response.headers['Content-Type'] = media_type
|
188
|
+
render json: manifest_response
|
189
189
|
end
|
190
190
|
end
|
191
191
|
|
@@ -8,7 +8,7 @@ module Actions
|
|
8
8
|
def plan(proxy)
|
9
9
|
sequence do
|
10
10
|
plan_action(Actions::Pulp::Orchestration::OrphanCleanup::RemoveOrphans, proxy)
|
11
|
-
if proxy.pulp3_enabled?
|
11
|
+
if proxy.pulp3_enabled? && ::Katello::Ping.pulpcore_enabled
|
12
12
|
plan_action(
|
13
13
|
Actions::Pulp3::Orchestration::OrphanCleanup::RemoveOrphans,
|
14
14
|
proxy)
|
@@ -126,7 +126,7 @@ module Katello
|
|
126
126
|
facet_model = Facets.registered_facets[facet].hostgroup_configuration.model
|
127
127
|
value = facet_model.where.not(attribute => nil).joins(:hostgroup).merge(
|
128
128
|
::Hostgroup.where(id: self.ancestor_ids).reorder(ancestry: :desc)
|
129
|
-
).limit(1).pluck(attribute)
|
129
|
+
).limit(1).pluck(attribute).first
|
130
130
|
end
|
131
131
|
value
|
132
132
|
end
|
@@ -122,20 +122,22 @@ module Katello
|
|
122
122
|
end
|
123
123
|
|
124
124
|
def applicable_differences
|
125
|
-
|
126
|
-
|
125
|
+
ActiveRecord::Base.connection.uncached do
|
126
|
+
consumer_ids = content_facet.send(applicable_units).pluck("#{content_unit_class.table_name}.id")
|
127
|
+
content_ids = fetch_content_ids
|
127
128
|
|
128
|
-
|
129
|
-
|
129
|
+
to_remove = consumer_ids - content_ids
|
130
|
+
to_add = content_ids - consumer_ids
|
130
131
|
|
131
|
-
|
132
|
+
[to_add, to_remove]
|
133
|
+
end
|
132
134
|
end
|
133
135
|
|
134
136
|
def insert(applicable_ids)
|
135
137
|
unless applicable_ids.empty?
|
136
138
|
inserts = applicable_ids.map { |applicable_id| "(#{applicable_id.to_i}, #{content_facet.id.to_i})" }
|
137
139
|
sql = "INSERT INTO #{content_facet_association_class.table_name} (#{content_unit_association_id}, content_facet_id) VALUES #{inserts.join(', ')}"
|
138
|
-
ActiveRecord::Base.connection.
|
140
|
+
ActiveRecord::Base.connection.exec_insert(sql)
|
139
141
|
end
|
140
142
|
end
|
141
143
|
|
@@ -58,6 +58,20 @@ module Katello
|
|
58
58
|
fail NotImplementedError
|
59
59
|
end
|
60
60
|
|
61
|
+
def self.ignore_409_exception(*)
|
62
|
+
yield
|
63
|
+
rescue => e
|
64
|
+
raise e unless e&.code == 409
|
65
|
+
nil
|
66
|
+
end
|
67
|
+
|
68
|
+
def cancel_task(task_href)
|
69
|
+
data = PulpcoreClient::TaskResponse.new(state: 'canceled')
|
70
|
+
self.class.ignore_409_exception do
|
71
|
+
tasks_api.tasks_cancel(task_href, data)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
61
75
|
def exporter_api
|
62
76
|
PulpcoreClient::ExportersPulpApi.new(core_api_client)
|
63
77
|
end
|
@@ -4,6 +4,8 @@ module Katello
|
|
4
4
|
module Pulp3
|
5
5
|
class Migration
|
6
6
|
attr_accessor :smart_proxy, :reimport_all, :task_id
|
7
|
+
attr_reader :repository_types
|
8
|
+
|
7
9
|
GET_QUERY_ID_LENGTH = 90
|
8
10
|
|
9
11
|
MUTABLE_CONTENT_TYPES = [
|
@@ -16,7 +18,9 @@ module Katello
|
|
16
18
|
].freeze
|
17
19
|
|
18
20
|
CORRUPTABLE_CONTENT_TYPES = [
|
19
|
-
Katello::Rpm,
|
21
|
+
Katello::Rpm,
|
22
|
+
Katello::FileUnit,
|
23
|
+
Katello::Deb
|
20
24
|
].freeze
|
21
25
|
|
22
26
|
def self.repository_types_for_migration
|
@@ -70,7 +74,9 @@ module Katello
|
|
70
74
|
|
71
75
|
def last_successful_migration_time
|
72
76
|
task = ForemanTasks::Task.where(:label => Actions::Pulp3::ContentMigration.to_s, :result => 'success').order("started_at desc").first
|
73
|
-
|
77
|
+
reset_task = ForemanTasks::Task.where(:label => Actions::Pulp3::ContentMigrationReset.to_s).order("started_at desc").first
|
78
|
+
reset_more_recent = reset_task && task && reset_task.started_at > task.started_at
|
79
|
+
if reimport_all || task.nil? || reset_more_recent
|
74
80
|
0
|
75
81
|
else
|
76
82
|
task.started_at.to_i
|
@@ -131,30 +137,31 @@ module Katello
|
|
131
137
|
end
|
132
138
|
plan = { plugins: plugins }
|
133
139
|
|
134
|
-
|
135
|
-
migration_plan_api.reset(migration_plan_api.create(plan: plan).pulp_href, plan.to_json)
|
140
|
+
pulp3_task = migration_plan_api.reset(migration_plan_api.create(plan: plan).pulp_href)
|
136
141
|
|
137
142
|
content_types_for_migration.each do |content_type|
|
138
143
|
if content_type.model_class == ::Katello::Erratum
|
139
144
|
::Katello::RepositoryErratum.update_all(erratum_pulp3_href: nil)
|
140
145
|
else
|
141
|
-
content_type.model_class.update_all(migrated_pulp3_href: nil)
|
146
|
+
content_type.model_class.update_all(migrated_pulp3_href: nil, missing_from_migration: false, ignore_missing_from_migration: false)
|
142
147
|
end
|
143
148
|
end
|
144
149
|
|
145
150
|
@repository_types.each do |repo_type|
|
146
151
|
if repo_type == "file"
|
147
|
-
::Katello::Repository.file_type.
|
152
|
+
::Katello::Repository.file_type.update_all(remote_href: nil, publication_href: nil, version_href: nil)
|
148
153
|
elsif repo_type == "docker"
|
149
|
-
::Katello::Repository.docker_type.
|
154
|
+
::Katello::Repository.docker_type.update_all(remote_href: nil, publication_href: nil, version_href: nil)
|
150
155
|
elsif repo_type == "yum"
|
151
|
-
::Katello::Repository.yum_type.
|
156
|
+
::Katello::Repository.yum_type.update_all(remote_href: nil, publication_href: nil, version_href: nil)
|
152
157
|
end
|
153
158
|
end
|
154
159
|
|
155
160
|
::Katello::Pulp3::RepositoryReference.destroy_all
|
156
161
|
::Katello::Pulp3::DistributionReference.destroy_all
|
157
162
|
::Katello::Pulp3::ContentGuard.destroy_all
|
163
|
+
|
164
|
+
pulp3_task
|
158
165
|
end
|
159
166
|
|
160
167
|
def create_migrations
|
@@ -298,10 +305,11 @@ module Katello
|
|
298
305
|
to_import[[errata_id, repo_id]] ||= {erratum_id: errata_id, erratum_pulp3_href: pulp3_href, repository_id: repo_id}
|
299
306
|
end
|
300
307
|
end
|
301
|
-
end
|
302
308
|
|
303
|
-
|
304
|
-
|
309
|
+
Katello::RepositoryErratum.import([:erratum_id, :erratum_pulp3_href, :repository_id], to_import.values, :validate => false,
|
310
|
+
on_duplicate_key_update: {conflict_target: [:erratum_id, :repository_id], columns: [:erratum_pulp3_href]})
|
311
|
+
to_import = {}
|
312
|
+
end
|
305
313
|
end
|
306
314
|
|
307
315
|
def mark_missing_content(content_type)
|
@@ -327,7 +335,7 @@ module Katello
|
|
327
335
|
unmigrated_units.select(:id, :pulp_id).find_in_batches(batch_size: GET_QUERY_ID_LENGTH) do |needing_hrefs|
|
328
336
|
current_count += needing_hrefs.count
|
329
337
|
update_import_status("Importing migrated content type #{content_type.label}: #{current_count}/#{total_count}")
|
330
|
-
migrated_units = pulp2_content_api.list(pulp2_id__in: needing_hrefs.map
|
338
|
+
migrated_units = pulp2_content_api.list(pulp2_id__in: needing_hrefs.map(&:pulp_id))
|
331
339
|
migrated_units.results.each do |migrated_unit|
|
332
340
|
content_type.model_class.where(pulp_id: migrated_unit.pulp2_id).update_all(migrated_pulp3_href: migrated_unit.pulp3_content)
|
333
341
|
end
|
@@ -25,6 +25,19 @@ module Katello
|
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
|
+
def remove_orphaned_content
|
29
|
+
models = []
|
30
|
+
@migration.repository_types.each do |repo_type_label|
|
31
|
+
repo_type = ::Katello::RepositoryTypeManager.repository_types[repo_type_label]
|
32
|
+
indexable_types = repo_type.content_types_to_index
|
33
|
+
models += indexable_types&.map(&:model_class)
|
34
|
+
models.select! { |model| model.many_repository_associations }
|
35
|
+
end
|
36
|
+
models.each do |model|
|
37
|
+
model.joins("left join katello_#{model.repository_association} on #{model.table_name}.id = katello_#{model.repository_association}.#{model.unit_id_field}").where("katello_#{model.repository_association}.#{model.unit_id_field} IS NULL").destroy_all
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
28
41
|
def deduplicated_content_types
|
29
42
|
#even though YumMetatadataFile is de-depulicated, we're not indexing it in pulp3
|
30
43
|
[Katello::PackageGroup]
|
@@ -1,7 +1,7 @@
|
|
1
|
+
# rubocop:disable Metrics/ClassLength
|
1
2
|
require "pulpcore_client"
|
2
3
|
module Katello
|
3
4
|
module Pulp3
|
4
|
-
# rubocop:disable Metrics/ClassLength
|
5
5
|
class Repository
|
6
6
|
include Katello::Util::HttpProxy
|
7
7
|
attr_accessor :repo
|
@@ -158,10 +158,7 @@ module Katello
|
|
158
158
|
end
|
159
159
|
|
160
160
|
def compute_remote_options(computed_options = remote_options)
|
161
|
-
|
162
|
-
computed_options[key] = Digest::SHA256.hexdigest(computed_options[key].chomp) if computed_options[key]
|
163
|
-
end
|
164
|
-
computed_options.except(:name)
|
161
|
+
computed_options.except(:name, :client_key)
|
165
162
|
end
|
166
163
|
|
167
164
|
def create
|
@@ -221,11 +218,38 @@ module Katello
|
|
221
218
|
end
|
222
219
|
|
223
220
|
def refresh_distributions
|
224
|
-
|
225
|
-
|
226
|
-
update_distribution
|
221
|
+
if repo.docker?
|
222
|
+
dist = lookup_distributions(base_path: repo.container_repository_name).first
|
227
223
|
else
|
224
|
+
dist = lookup_distributions(base_path: repo.relative_path).first
|
225
|
+
end
|
226
|
+
|
227
|
+
# First check if the distribution exists
|
228
|
+
if dist
|
229
|
+
dist_ref = distribution_reference
|
230
|
+
# If we have a DistributionReference, update the distribution
|
231
|
+
if dist_ref
|
232
|
+
return update_distribution
|
233
|
+
# If no DistributionReference, create a DistributionReference and return
|
234
|
+
else
|
235
|
+
save_distribution_references([dist.pulp_href])
|
236
|
+
return []
|
237
|
+
end
|
238
|
+
end
|
239
|
+
|
240
|
+
# So far, it looks like there is no distribution. Try to create one.
|
241
|
+
begin
|
228
242
|
create_distribution(relative_path)
|
243
|
+
rescue api.class.client_module::ApiError => e
|
244
|
+
# Now it seems there is a distribution. Fetch it and save the reference.
|
245
|
+
if e.message.include?("\"base_path\":[\"This field must be unique.\"]") ||
|
246
|
+
e.message.include?("\"base_path\":[\"Overlaps with existing distribution\"")
|
247
|
+
dist = lookup_distributions(base_path: repo.relative_path).first
|
248
|
+
save_distribution_references([dist.pulp_href])
|
249
|
+
return []
|
250
|
+
else
|
251
|
+
raise e
|
252
|
+
end
|
229
253
|
end
|
230
254
|
end
|
231
255
|
|
@@ -275,7 +299,8 @@ module Katello
|
|
275
299
|
pulp3_distribution_data = api.get_distribution(href)
|
276
300
|
path, content_guard_href = pulp3_distribution_data&.base_path, pulp3_distribution_data&.content_guard
|
277
301
|
unless distribution_reference
|
278
|
-
|
302
|
+
# Ensure that duplicates won't be created in the case of a race condition
|
303
|
+
DistributionReference.where(path: path, href: href, repository_id: repo.id, content_guard_href: content_guard_href).first_or_create!
|
279
304
|
end
|
280
305
|
end
|
281
306
|
end
|
@@ -27,8 +27,7 @@ module Katello
|
|
27
27
|
popts = super(repository_version)
|
28
28
|
popts.merge!(
|
29
29
|
{
|
30
|
-
#
|
31
|
-
#structured: true, # publish real suites (e.g. 'stable')
|
30
|
+
structured: true, # publish real suites (e.g. 'stable')
|
32
31
|
simple: true # publish all into 'default'-suite
|
33
32
|
}
|
34
33
|
)
|
@@ -56,8 +56,10 @@ module Katello
|
|
56
56
|
@pulp_data ||= tasks_api.read(@href).as_json.with_indifferent_access
|
57
57
|
end
|
58
58
|
|
59
|
-
|
60
|
-
|
59
|
+
delegate :tasks_api, to: :core_api
|
60
|
+
|
61
|
+
def core_api
|
62
|
+
::Katello::Pulp3::Api::Core.new(@smart_proxy)
|
61
63
|
end
|
62
64
|
|
63
65
|
def task_group_href
|
@@ -94,10 +96,11 @@ module Katello
|
|
94
96
|
end
|
95
97
|
|
96
98
|
def cancel
|
97
|
-
|
98
|
-
tasks_api.tasks_cancel(task_data['pulp_href'], data)
|
99
|
+
core_api.cancel_task(task_data['pulp_href'])
|
99
100
|
#the main task may have completed, so cancel spawned tasks too
|
100
|
-
task_data['spawned_tasks']&.each
|
101
|
+
task_data['spawned_tasks']&.each do |spawned|
|
102
|
+
core_api.cancel_task(spawned['pulp_href'])
|
103
|
+
end
|
101
104
|
end
|
102
105
|
end
|
103
106
|
end
|
@@ -71,17 +71,25 @@ module Katello
|
|
71
71
|
end
|
72
72
|
|
73
73
|
def error
|
74
|
+
return if task_group_data[WAITING] > 0 || task_group_data[RUNNING] > 0
|
74
75
|
if task_group_data[FAILED] > 0
|
75
76
|
"#{task_group_data[FAILED]} subtask(s) failed for task group #{@href}."
|
77
|
+
elsif task_group_data[CANCELLED] > 0
|
78
|
+
"#{task_group_data[CANCELLED]} subtask(s) cancelled for task group #{@href}."
|
76
79
|
end
|
77
80
|
end
|
78
81
|
|
82
|
+
def core_api
|
83
|
+
::Katello::Pulp3::Api::Core.new(@smart_proxy)
|
84
|
+
end
|
85
|
+
|
79
86
|
def cancel
|
80
|
-
tasks_api =
|
81
|
-
tasks_response =
|
82
|
-
|
83
|
-
|
84
|
-
|
87
|
+
tasks_api = core_api.tasks_api
|
88
|
+
tasks_response = core_api.fetch_from_list do |page_opts|
|
89
|
+
tasks_api.list(page_opts.merge(task_group: task_group_data['pulp_href'], state__in: 'running,waiting'))
|
90
|
+
end
|
91
|
+
tasks_response.collect do |result|
|
92
|
+
::Katello::Pulp3::Api::Core.new(@smart_proxy).cancel_task(result.pulp_href)
|
85
93
|
end
|
86
94
|
end
|
87
95
|
end
|
data/lib/katello/engine.rb
CHANGED
@@ -75,7 +75,7 @@ module Katello
|
|
75
75
|
|
76
76
|
# make sure the Katello plugin is initialized before `after_initialize`
|
77
77
|
# hook so that the resumed Dynflow tasks can rely on everything ready.
|
78
|
-
initializer 'katello.register_plugin', :before => :finisher_hook do
|
78
|
+
initializer 'katello.register_plugin', :before => :finisher_hook, :after => 'foreman_remote_execution.register_plugin' do
|
79
79
|
::Foreman::AccessControl::Permission.prepend ::Katello::Concerns::PermissionExtensions
|
80
80
|
require 'katello/plugin'
|
81
81
|
|
@@ -0,0 +1,18 @@
|
|
1
|
+
namespace :katello do
|
2
|
+
task :check_config => ['environment'] do
|
3
|
+
desc "Task that can be run before a content migration to check that the configuration valid"
|
4
|
+
fail_msg = _("The system appears to already be using pulp3 with all content migrated.")
|
5
|
+
|
6
|
+
puts "Checking for valid Katello configuraton."
|
7
|
+
if SETTINGS[:katello][:use_pulp_2_for_content_type].nil?
|
8
|
+
fail fail_msg
|
9
|
+
end
|
10
|
+
|
11
|
+
if !SETTINGS[:katello][:use_pulp_2_for_content_type][:docker] &&
|
12
|
+
!SETTINGS[:katello][:use_pulp_2_for_content_type][:file] &&
|
13
|
+
!SETTINGS[:katello][:use_pulp_2_for_content_type][:yum] &&
|
14
|
+
!SETTINGS[:katello][:use_pulp_2_for_content_type][:deb]
|
15
|
+
fail fail_msg
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -3,13 +3,15 @@ require "#{Katello::Engine.root}/app/services/katello/pulp3/migration_switchover
|
|
3
3
|
|
4
4
|
namespace :katello do
|
5
5
|
desc "Runs a Pulp 3 migration of pulp3 hrefs to pulp ids for supported content types."
|
6
|
-
task :pulp3_content_switchover => ["dynflow:client"] do
|
6
|
+
task :pulp3_content_switchover => ["dynflow:client", "check_config"] do
|
7
7
|
dryrun = ENV['DRYRUN']
|
8
|
+
|
8
9
|
begin
|
9
10
|
User.current = User.anonymous_admin
|
10
11
|
|
12
|
+
switchover_service = Katello::Pulp3::MigrationSwitchover.new(SmartProxy.pulp_primary)
|
13
|
+
switchover_service.remove_orphaned_content #run out of transaction for easier re-run
|
11
14
|
ActiveRecord::Base.transaction do
|
12
|
-
switchover_service = Katello::Pulp3::MigrationSwitchover.new(SmartProxy.pulp_primary)
|
13
15
|
switchover_service.run
|
14
16
|
fail "Dryrun completed without error, aborting and rolling back" if dryrun
|
15
17
|
end
|
@@ -18,7 +20,7 @@ namespace :katello do
|
|
18
20
|
exit 1
|
19
21
|
end
|
20
22
|
|
21
|
-
task = ForemanTasks.
|
23
|
+
task = ForemanTasks.async_task(Actions::Pulp3::ContentGuard::RefreshAllDistributions, SmartProxy.pulp_primary)
|
22
24
|
until !task.pending? || task.paused?
|
23
25
|
sleep(10)
|
24
26
|
task = ForemanTasks::Task.find(task.id)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
namespace :katello do
|
2
2
|
desc "Runs a Pulp 2 to 3 Content Migration for supported types. May be run multiple times. Use wait=false to immediately return with a task url."
|
3
|
-
task :pulp3_migration => ["dynflow:client"] do
|
3
|
+
task :pulp3_migration => ["dynflow:client", 'check_config'] do
|
4
4
|
services = [:candlepin, :foreman_tasks, :pulp3, :pulp, :pulp_auth]
|
5
5
|
Katello::Ping.ping!(services: services)
|
6
6
|
|
@@ -10,7 +10,8 @@ namespace :katello do
|
|
10
10
|
migratable_repo_count = ::Katello::Repository.count - ::Katello::Repository.puppet_type.count -
|
11
11
|
::Katello::Repository.ostree_type.count - ::Katello::Repository.deb_type.count
|
12
12
|
|
13
|
-
on_demand_rpm_count = Katello::RepositoryRpm.where(:repository_id => Katello::Repository.yum_type.on_demand).
|
13
|
+
on_demand_rpm_count = Katello::RepositoryRpm.where(:repository_id => Katello::Repository.yum_type.on_demand).
|
14
|
+
select(:rpm_id).distinct.count
|
14
15
|
on_demand_unmigrated_rpm_count = on_demand_rpm_count - migrated_rpm_count
|
15
16
|
immediate_unmigrated_rpm_count = ::Katello::Rpm.count - migrated_rpm_count - on_demand_unmigrated_rpm_count
|
16
17
|
|
@@ -2,7 +2,7 @@ require File.expand_path("../engine", File.dirname(__FILE__))
|
|
2
2
|
|
3
3
|
namespace :katello do
|
4
4
|
desc "Runs a katello ping and prints out the statuses of each service"
|
5
|
-
task :check_ping => :environment do
|
5
|
+
task :check_ping => [:environment, "dynflow:client"] do
|
6
6
|
::User.current = ::User.anonymous_admin
|
7
7
|
ping_results = Katello::Ping.ping
|
8
8
|
if ping_results[:status] != "ok"
|
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: 3.18.
|
4
|
+
version: 3.18.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- N/A
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -366,40 +366,40 @@ dependencies:
|
|
366
366
|
requirements:
|
367
367
|
- - ">="
|
368
368
|
- !ruby/object:Gem::Version
|
369
|
-
version: 3.
|
369
|
+
version: 3.10.0
|
370
370
|
- - "<"
|
371
371
|
- !ruby/object:Gem::Version
|
372
|
-
version: 3.
|
372
|
+
version: 3.11.0
|
373
373
|
type: :runtime
|
374
374
|
prerelease: false
|
375
375
|
version_requirements: !ruby/object:Gem::Requirement
|
376
376
|
requirements:
|
377
377
|
- - ">="
|
378
378
|
- !ruby/object:Gem::Version
|
379
|
-
version: 3.
|
379
|
+
version: 3.10.0
|
380
380
|
- - "<"
|
381
381
|
- !ruby/object:Gem::Version
|
382
|
-
version: 3.
|
382
|
+
version: 3.11.0
|
383
383
|
- !ruby/object:Gem::Dependency
|
384
384
|
name: pulp_2to3_migration_client
|
385
385
|
requirement: !ruby/object:Gem::Requirement
|
386
386
|
requirements:
|
387
387
|
- - ">="
|
388
388
|
- !ruby/object:Gem::Version
|
389
|
-
version: 0.
|
389
|
+
version: 0.8.0
|
390
390
|
- - "<"
|
391
391
|
- !ruby/object:Gem::Version
|
392
|
-
version: 0.
|
392
|
+
version: 1.0.0
|
393
393
|
type: :runtime
|
394
394
|
prerelease: false
|
395
395
|
version_requirements: !ruby/object:Gem::Requirement
|
396
396
|
requirements:
|
397
397
|
- - ">="
|
398
398
|
- !ruby/object:Gem::Version
|
399
|
-
version: 0.
|
399
|
+
version: 0.8.0
|
400
400
|
- - "<"
|
401
401
|
- !ruby/object:Gem::Version
|
402
|
-
version: 0.
|
402
|
+
version: 1.0.0
|
403
403
|
- !ruby/object:Gem::Dependency
|
404
404
|
name: pulp_certguard_client
|
405
405
|
requirement: !ruby/object:Gem::Requirement
|
@@ -2142,6 +2142,7 @@ files:
|
|
2142
2142
|
- db/migrate/20201021150008_add_import_only_to_katello_content_view.rb
|
2143
2143
|
- db/migrate/20201119211133_pulp3_migration_progress.rb
|
2144
2144
|
- db/migrate/20210201165835_add_migration_missing_content.rb
|
2145
|
+
- db/migrate/20210420140050_add_pulp3_hrefs_to_content_types_deb.rb
|
2145
2146
|
- db/seeds.d/101-locations.rb
|
2146
2147
|
- db/seeds.d/102-organizations.rb
|
2147
2148
|
- db/seeds.d/104-proxy.rb
|
@@ -4484,6 +4485,7 @@ files:
|
|
4484
4485
|
- lib/katello/repository_types/puppet.rb
|
4485
4486
|
- lib/katello/repository_types/yum.rb
|
4486
4487
|
- lib/katello/scheduled_jobs.rb
|
4488
|
+
- lib/katello/tasks/check_config.rake
|
4487
4489
|
- lib/katello/tasks/clean_backend_objects.rake
|
4488
4490
|
- lib/katello/tasks/clean_old_file_repos.rake
|
4489
4491
|
- lib/katello/tasks/clean_published_repo_directories.rake
|