katello 4.7.0.rc1 → 4.7.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.
- checksums.yaml +4 -4
- data/app/lib/actions/candlepin/abstract_async_task.rb +7 -3
- data/app/lib/actions/candlepin/owner/{upstream_export.rb → retrieve_upstream_export.rb} +3 -3
- data/app/lib/actions/candlepin/owner/start_upstream_export.rb +24 -0
- data/app/lib/actions/candlepin/upstream_abstract_async_task.rb +30 -0
- data/app/lib/actions/katello/organization/manifest_refresh.rb +12 -7
- data/app/lib/actions/middleware/propagate_candlepin_errors.rb +6 -1
- data/app/lib/actions/pulp3/orchestration/orphan_cleanup/remove_orphans.rb +1 -0
- data/app/lib/actions/pulp3/orphan_cleanup/delete_orphan_alternate_content_sources.rb +16 -0
- data/app/lib/katello/errors.rb +1 -0
- data/app/lib/katello/resources/candlepin/upstream_consumer.rb +1 -1
- data/app/lib/katello/resources/candlepin/upstream_job.rb +28 -0
- data/app/models/katello/content_view_erratum_filter.rb +5 -4
- data/app/models/katello/glue/provider.rb +28 -18
- data/app/services/katello/pulp3/docker_manifest.rb +2 -1
- data/app/services/katello/pulp3/docker_manifest_list.rb +2 -1
- data/app/services/katello/pulp3/smart_proxy_mirror_repository.rb +21 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +2 -2
- data/lib/katello/repository_types/docker.rb +2 -1
- data/lib/katello/version.rb +1 -1
- data/locale/action_names.rb +68 -68
- data/locale/bn/katello.po +38 -35
- data/locale/cs/katello.po +38 -35
- data/locale/de/katello.po +130 -126
- data/locale/en/katello.po +38 -35
- data/locale/es/katello.po +95 -88
- data/locale/fr/katello.po +95 -88
- data/locale/gu/katello.po +44 -41
- data/locale/hi/katello.po +43 -40
- data/locale/it/katello.po +61 -56
- data/locale/ja/katello.po +615 -614
- data/locale/ka/katello.po +8821 -0
- data/locale/katello.pot +353 -339
- data/locale/kn/katello.po +41 -38
- data/locale/ko/katello.po +62 -59
- data/locale/mr/katello.po +41 -38
- data/locale/or/katello.po +43 -40
- data/locale/pa/katello.po +41 -38
- data/locale/pt/katello.po +40 -36
- data/locale/pt_BR/katello.po +91 -84
- data/locale/ru/katello.po +68 -65
- data/locale/ta/katello.po +38 -35
- data/locale/te/katello.po +41 -38
- data/locale/zanata.xml +4 -2
- data/locale/zh_CN/katello.po +99 -96
- data/locale/zh_TW/katello.po +62 -59
- data/webpack/components/Table/EmptyStateMessage.js +3 -3
- data/webpack/containers/Application/overrides.scss +13 -1
- data/webpack/scenes/ContentViews/Create/ContentViewFormComponents.js +8 -3
- data/webpack/scenes/ContentViews/Details/Filters/ArtifactsWithNoErrata.js +8 -8
- data/webpack/scenes/ContentViews/Details/Filters/CVModuleStreamFilterContent.js +0 -6
- data/webpack/scenes/ContentViews/Details/Filters/CVRpmFilterContent.js +0 -6
- data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilterDetailsHeader.js +67 -9
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/CVRpmFilterContent.test.js +4 -4
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/ContentViewPackageGroupFilter.test.js +6 -6
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvErrataIDFilter.test.js +6 -6
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvModuleStreamFilter.test.js +6 -8
- data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompare.scss +31 -0
- data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareHeader.js +5 -7
- data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareTable.js +9 -2
- metadata +12 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 681115c601daa1728c23ca2aa5f2995c3997f8aebd24d48f465119a9daea07fe
|
4
|
+
data.tar.gz: f83059ee941668d27e4ada30accf702b86f37fd20e475ffa0580fdea0fa01261
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 98206f5b247a2e33f31fe908d0294ac239334106118493c4c6f4749461960975043e560724e788d5ae922d334f0ee151deaa7ded09eb9df79ef4931e52509278
|
7
|
+
data.tar.gz: 5f1528fa18239ddc42e4880b9877a81a75149a8e2c1a37242284e29ba8f6c808752d76c4afceea5b2b988f62df559ec5f3535e125e6a7465c11174ac69c71a09
|
@@ -14,12 +14,12 @@ module Actions
|
|
14
14
|
case state
|
15
15
|
when :running
|
16
16
|
if self.external_task.nil?
|
17
|
-
_("initiating
|
17
|
+
_("initiating %s task") % candlepin
|
18
18
|
else
|
19
|
-
_("checking
|
19
|
+
_("checking %s task status") % candlepin
|
20
20
|
end
|
21
21
|
when :suspended
|
22
|
-
_("waiting for
|
22
|
+
_("waiting for %s to finish the task") % candlepin
|
23
23
|
else
|
24
24
|
super
|
25
25
|
end
|
@@ -30,6 +30,10 @@ module Actions
|
|
30
30
|
!::Katello::Resources::Candlepin::Job.not_finished?(external_task)
|
31
31
|
end
|
32
32
|
|
33
|
+
def candlepin
|
34
|
+
_("Candlepin")
|
35
|
+
end
|
36
|
+
|
33
37
|
private
|
34
38
|
|
35
39
|
def job_poll_params
|
@@ -1,16 +1,16 @@
|
|
1
1
|
module Actions
|
2
2
|
module Candlepin
|
3
3
|
module Owner
|
4
|
-
class
|
4
|
+
class RetrieveUpstreamExport < Candlepin::Abstract
|
5
5
|
input_format do
|
6
6
|
param :organization_id
|
7
7
|
param :path
|
8
|
-
param :
|
8
|
+
param :export_id
|
9
9
|
end
|
10
10
|
|
11
11
|
def run
|
12
12
|
organization = ::Organization.find(input[:organization_id])
|
13
|
-
output[:response] = organization.redhat_provider.
|
13
|
+
output[:response] = organization.redhat_provider.retrieve_owner_upstream_export(input[:upstream], input[:path], input[:export_id])
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Actions
|
2
|
+
module Candlepin
|
3
|
+
module Owner
|
4
|
+
class StartUpstreamExport < Candlepin::UpstreamAbstractAsyncTask
|
5
|
+
input_format do
|
6
|
+
param :organization_id
|
7
|
+
param :upstream
|
8
|
+
end
|
9
|
+
|
10
|
+
def invoke_external_task
|
11
|
+
organization = ::Organization.find(input[:organization_id])
|
12
|
+
output[:response] = organization.redhat_provider.start_owner_upstream_export(input[:upstream])
|
13
|
+
end
|
14
|
+
|
15
|
+
def humanized_output
|
16
|
+
result_data = output[:task]&.[]('resultData')
|
17
|
+
return '' if result_data&.[]('status').blank?
|
18
|
+
"Upstream Candlepin job status: #{result_data['status']}\n
|
19
|
+
Message: #{result_data['statusMessage']}"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Actions
|
2
|
+
module Candlepin
|
3
|
+
class UpstreamAbstractAsyncTask < AbstractAsyncTask
|
4
|
+
input_format do
|
5
|
+
param :upstream
|
6
|
+
end
|
7
|
+
|
8
|
+
def done?
|
9
|
+
check_for_errors!(external_task)
|
10
|
+
!::Katello::Resources::Candlepin::UpstreamJob.not_finished?(external_task)
|
11
|
+
end
|
12
|
+
|
13
|
+
def candlepin
|
14
|
+
_("Upstream Candlepin")
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def poll_external_task
|
20
|
+
::Katello::Resources::Candlepin::UpstreamJob.get(external_task[:id], input[:upstream])
|
21
|
+
end
|
22
|
+
|
23
|
+
def check_for_errors!(task)
|
24
|
+
if task[:state] == 'FAILED'
|
25
|
+
fail ::Katello::Errors::UpstreamCandlepinError, task[:resultData]
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -14,18 +14,28 @@ module Actions
|
|
14
14
|
upstream = details['upstreamConsumer'].blank? ? {} : details['upstreamConsumer']
|
15
15
|
|
16
16
|
sequence do
|
17
|
+
plan_self(
|
18
|
+
:organization_id => organization.id,
|
19
|
+
:organization_name => organization.name
|
20
|
+
)
|
17
21
|
upstream_update = plan_action(Candlepin::Owner::UpstreamUpdate,
|
18
22
|
:organization_id => organization.id,
|
19
23
|
:upstream => upstream)
|
20
|
-
export_action = plan_action(Candlepin::Owner::
|
24
|
+
export_action = plan_action(Candlepin::Owner::StartUpstreamExport,
|
21
25
|
:organization_id => organization.id,
|
22
26
|
:upstream => upstream,
|
23
27
|
:path => path,
|
24
28
|
:dependency => upstream_update.output)
|
29
|
+
retrieved_export = plan_action(Candlepin::Owner::RetrieveUpstreamExport,
|
30
|
+
:export_id => export_action.output[:task]['resultData']['exportId'],
|
31
|
+
:organization_id => organization.id,
|
32
|
+
:upstream => upstream,
|
33
|
+
:path => path,
|
34
|
+
:dependency => export_action.output)
|
25
35
|
owner_import = plan_action(Candlepin::Owner::Import,
|
26
36
|
:label => organization.label,
|
27
37
|
:path => path,
|
28
|
-
:dependency =>
|
38
|
+
:dependency => retrieved_export.output)
|
29
39
|
import_products = plan_action(Candlepin::Owner::ImportProducts,
|
30
40
|
:organization_id => organization.id,
|
31
41
|
:dependency => owner_import.output)
|
@@ -34,11 +44,6 @@ module Actions
|
|
34
44
|
if manifest_update
|
35
45
|
plan_refresh_repos(import_products, organization)
|
36
46
|
end
|
37
|
-
|
38
|
-
plan_self(
|
39
|
-
:organization_id => organization.id,
|
40
|
-
:organization_name => organization.name
|
41
|
-
)
|
42
47
|
end
|
43
48
|
end
|
44
49
|
|
@@ -18,7 +18,12 @@ module Actions
|
|
18
18
|
def propagate_candlepin_errors
|
19
19
|
yield
|
20
20
|
rescue RestClient::ExceptionWithResponse => e
|
21
|
-
|
21
|
+
error_class = if e.response.request.url.include?('/candlepin')
|
22
|
+
::Katello::Errors::CandlepinError
|
23
|
+
else
|
24
|
+
::Katello::Errors::UpstreamCandlepinError
|
25
|
+
end
|
26
|
+
raise(error_class.from_exception(e) || e)
|
22
27
|
end
|
23
28
|
end
|
24
29
|
end
|
@@ -11,6 +11,7 @@ module Actions
|
|
11
11
|
if proxy.pulp_mirror?
|
12
12
|
plan_action(Actions::Pulp3::OrphanCleanup::RemoveUnneededRepos, proxy)
|
13
13
|
plan_action(Actions::Pulp3::OrphanCleanup::DeleteOrphanDistributions, proxy)
|
14
|
+
plan_action(Actions::Pulp3::OrphanCleanup::DeleteOrphanAlternateContentSources, proxy)
|
14
15
|
plan_action(Actions::Pulp3::OrphanCleanup::DeleteOrphanRemotes, proxy)
|
15
16
|
end
|
16
17
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Actions
|
2
|
+
module Pulp3
|
3
|
+
module OrphanCleanup
|
4
|
+
class DeleteOrphanAlternateContentSources < Pulp3::AbstractAsyncTask
|
5
|
+
def plan(smart_proxy)
|
6
|
+
plan_self(:smart_proxy_id => smart_proxy.id)
|
7
|
+
end
|
8
|
+
|
9
|
+
def invoke_external_task
|
10
|
+
smart_proxy_service = ::Katello::Pulp3::SmartProxyRepository.instance_for_type(smart_proxy)
|
11
|
+
smart_proxy_service.delete_orphan_alternate_content_sources
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/app/lib/katello/errors.rb
CHANGED
@@ -40,7 +40,7 @@ module Katello
|
|
40
40
|
raise ::Katello::Errors::UpstreamEntitlementGone
|
41
41
|
end
|
42
42
|
|
43
|
-
def
|
43
|
+
def get_export(url, client_cert, client_key, ca_file)
|
44
44
|
logger.debug "Sending GET request to upstream Candlepin: #{url}"
|
45
45
|
return resource(url, client_cert, client_key, ca_file).get
|
46
46
|
rescue RestClient::Exception => e
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Katello
|
2
|
+
module Resources
|
3
|
+
module Candlepin
|
4
|
+
class UpstreamJob < UpstreamCandlepinResource
|
5
|
+
class << self
|
6
|
+
NOT_FINISHED_STATES = %w(CREATED WAITING PENDING RUNNING).freeze unless defined? NOT_FINISHED_STATES
|
7
|
+
API_URL = 'https://subscription.rhsm.redhat.com/subscription'.freeze
|
8
|
+
|
9
|
+
def not_finished?(job)
|
10
|
+
NOT_FINISHED_STATES.include?(job[:state])
|
11
|
+
end
|
12
|
+
|
13
|
+
def get(id, upstream)
|
14
|
+
url = API_URL
|
15
|
+
response = Resources::Candlepin::UpstreamConsumer.get_export("#{url}#{path(id)}", upstream['idCert']['cert'],
|
16
|
+
upstream['idCert']['key'], nil)
|
17
|
+
job = JSON.parse(response)
|
18
|
+
job.with_indifferent_access
|
19
|
+
end
|
20
|
+
|
21
|
+
def path(id = nil)
|
22
|
+
"/jobs/#{id}"
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -34,10 +34,10 @@ module Katello
|
|
34
34
|
# additional_included_errata and inclusion filters don't work together (since it only applies when excluding)
|
35
35
|
if self.inclusion?
|
36
36
|
errata_pulp_ids = errata_package_pulp_ids_from_errata_ids(repo, errata_ids, [])
|
37
|
-
errata_pulp_ids += errata_module_stream_pulp_ids_from_errata_ids(errata_ids, [])
|
37
|
+
errata_pulp_ids += errata_module_stream_pulp_ids_from_errata_ids(repo, errata_ids, [])
|
38
38
|
else
|
39
39
|
errata_pulp_ids = errata_package_pulp_ids_from_errata_ids(repo, errata_ids, additional_included_errata)
|
40
|
-
errata_pulp_ids += errata_module_stream_pulp_ids_from_errata_ids(errata_ids, additional_included_errata)
|
40
|
+
errata_pulp_ids += errata_module_stream_pulp_ids_from_errata_ids(repo, errata_ids, additional_included_errata)
|
41
41
|
end
|
42
42
|
else
|
43
43
|
clauses = []
|
@@ -74,10 +74,11 @@ module Katello
|
|
74
74
|
rpms_by_filename(repo, package_filenames).pluck(:pulp_id)
|
75
75
|
end
|
76
76
|
|
77
|
-
def errata_module_stream_pulp_ids_from_errata_ids(errata_ids, additional_included_errata)
|
77
|
+
def errata_module_stream_pulp_ids_from_errata_ids(repo, errata_ids, additional_included_errata)
|
78
78
|
module_streams = Katello::Erratum.where(:errata_id => errata_ids).map(&:module_streams).compact.flatten -
|
79
79
|
Katello::Erratum.where(:errata_id => additional_included_errata.pluck(:errata_id)).map(&:module_streams).compact.flatten
|
80
|
-
|
80
|
+
ModuleStream.joins(:repository_module_streams).
|
81
|
+
where(:id => module_streams.pluck(:id), "#{RepositoryModuleStream.table_name}.repository_id" => repo.id).pluck(:pulp_id)
|
81
82
|
end
|
82
83
|
|
83
84
|
def errata_package_pulp_ids_from_errata_ids(repo, errata_ids, additional_included_errata)
|
@@ -66,11 +66,6 @@ module Katello
|
|
66
66
|
# Default to Red Hat
|
67
67
|
url = upstream['apiUrl'] || API_URL
|
68
68
|
|
69
|
-
# TODO: wait until ca_path is supported
|
70
|
-
# https://github.com/L2G/rest-client-fork/pull/8
|
71
|
-
#ca_file = '/etc/candlepin/certs/upstream/subscription.rhn.stage.redhat.com.crt'
|
72
|
-
ca_file = nil
|
73
|
-
|
74
69
|
params = {}
|
75
70
|
params[:capabilities] = Resources::Candlepin::CandlepinPing.ping['managerCapabilities'].inject([]) do |result, element|
|
76
71
|
result << {'name' => element}
|
@@ -80,26 +75,25 @@ module Katello
|
|
80
75
|
upstream['idCert']['key'], ca_file, params)
|
81
76
|
end
|
82
77
|
|
83
|
-
def
|
84
|
-
|
85
|
-
Rails.logger.error "Upstream identity certificate not available"
|
86
|
-
fail _("Upstream identity certificate not available")
|
87
|
-
end
|
88
|
-
|
89
|
-
# Default to Red Hat
|
78
|
+
def start_owner_upstream_export(upstream)
|
79
|
+
validate_upstream_identity_cert!(upstream)
|
90
80
|
url = upstream['apiUrl'] || API_URL
|
91
81
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
82
|
+
response = Resources::Candlepin::UpstreamConsumer.get_export("#{url}#{upstream['uuid']}/export/async", upstream['idCert']['cert'],
|
83
|
+
upstream['idCert']['key'], ca_file)
|
84
|
+
JSON.parse(response)
|
85
|
+
end
|
96
86
|
|
97
|
-
|
87
|
+
def retrieve_owner_upstream_export(upstream, zip_file_path, export_id)
|
88
|
+
validate_upstream_identity_cert!(upstream)
|
89
|
+
url = upstream['apiUrl'] || API_URL
|
90
|
+
|
91
|
+
data = Resources::Candlepin::UpstreamConsumer.get_export("#{url}#{upstream['uuid']}/export/#{export_id}", upstream['idCert']['cert'],
|
98
92
|
upstream['idCert']['key'], ca_file)
|
99
93
|
|
100
94
|
File.write(zip_file_path, data, mode: 'wb')
|
101
95
|
|
102
|
-
|
96
|
+
true
|
103
97
|
end
|
104
98
|
|
105
99
|
def del_owner_import
|
@@ -168,6 +162,22 @@ module Katello
|
|
168
162
|
redhat_provider? ? candlepin_ping['rulesVersion'] : ''
|
169
163
|
end
|
170
164
|
|
165
|
+
private
|
166
|
+
|
167
|
+
def validate_upstream_identity_cert!(upstream)
|
168
|
+
if !upstream['idCert'] || !upstream['idCert']['cert'] || !upstream['idCert']['key']
|
169
|
+
Rails.logger.error "Upstream identity certificate not available"
|
170
|
+
fail _("Upstream identity certificate not available")
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
def ca_file
|
175
|
+
# TODO: wait until ca_path is supported
|
176
|
+
# https://github.com/L2G/rest-client-fork/pull/8
|
177
|
+
# ca_file = '/etc/candlepin/certs/upstream/subscription.rhn.stage.redhat.com.crt'
|
178
|
+
nil
|
179
|
+
end
|
180
|
+
|
171
181
|
protected
|
172
182
|
|
173
183
|
def candlepin_ping
|
@@ -16,7 +16,8 @@ module Katello
|
|
16
16
|
|
17
17
|
def self.content_unit_list(page_opts)
|
18
18
|
page_opts[:media_type] = ['application/vnd.docker.distribution.manifest.v1+json',
|
19
|
-
'application/vnd.docker.distribution.manifest.v2+json'
|
19
|
+
'application/vnd.docker.distribution.manifest.v2+json',
|
20
|
+
'application/vnd.oci.image.manifest.v1+json']
|
20
21
|
self.content_api.list(page_opts)
|
21
22
|
end
|
22
23
|
|
@@ -14,7 +14,8 @@ module Katello
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def self.content_unit_list(page_opts)
|
17
|
-
page_opts[:media_type] = [
|
17
|
+
page_opts[:media_type] = ['application/vnd.docker.distribution.manifest.list.v2+json',
|
18
|
+
'application/vnd.oci.image.index.v1+json']
|
18
19
|
self.content_api.list(page_opts)
|
19
20
|
end
|
20
21
|
|
@@ -73,6 +73,27 @@ module Katello
|
|
73
73
|
distribution.try(:repository_version).nil?
|
74
74
|
end
|
75
75
|
|
76
|
+
def delete_orphan_alternate_content_sources
|
77
|
+
tasks = []
|
78
|
+
known_acs_hrefs = []
|
79
|
+
known_acss = smart_proxy.smart_proxy_alternate_content_sources
|
80
|
+
known_acs_hrefs = known_acss.pluck(:alternate_content_source_href) if known_acss.present?
|
81
|
+
|
82
|
+
file_acs_api = ::Katello::Pulp3::Repository.api(smart_proxy, 'file').alternate_content_source_api
|
83
|
+
yum_acs_api = ::Katello::Pulp3::Repository.api(smart_proxy, 'yum').alternate_content_source_api
|
84
|
+
|
85
|
+
orphan_file_acs_hrefs = file_acs_api.list.results.map(&:pulp_href) - known_acs_hrefs
|
86
|
+
orphan_yum_acs_hrefs = yum_acs_api.list.results.map(&:pulp_href) - known_acs_hrefs
|
87
|
+
|
88
|
+
orphan_file_acs_hrefs.each do |orphan_file_acs_href|
|
89
|
+
tasks << file_acs_api.delete(orphan_file_acs_href)
|
90
|
+
end
|
91
|
+
|
92
|
+
orphan_yum_acs_hrefs.each do |orphan_yum_acs_href|
|
93
|
+
tasks << yum_acs_api.delete(orphan_yum_acs_href)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
76
97
|
def delete_orphan_remotes
|
77
98
|
tasks = []
|
78
99
|
repo_names = Katello::Repository.pluck(:pulp_id)
|
data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot
CHANGED
@@ -3925,7 +3925,7 @@ msgid "System Purpose"
|
|
3925
3925
|
msgstr ""
|
3926
3926
|
|
3927
3927
|
#: app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html
|
3928
|
-
msgid "System
|
3928
|
+
msgid "System purpose enables you to set the system's intended use on your network and improves reporting accuracy in the Subscriptions service of the Red Hat Hybrid Cloud Console."
|
3929
3929
|
msgstr ""
|
3930
3930
|
|
3931
3931
|
#: app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-info.html
|
@@ -4146,7 +4146,7 @@ msgid "This organization has Simple Content Access enabled. Hosts are not requi
|
|
4146
4146
|
msgstr ""
|
4147
4147
|
|
4148
4148
|
#: app/assets/javascripts/bastion_katello/subscriptions/views/content-access-mode-banner.html
|
4149
|
-
msgid "This organization is not using <a target=\"_blank\" href=\"https://access.redhat.com/articles/simple-content-access\">Simple Content Access.</a>
|
4149
|
+
msgid "This organization is not using <a target=\"_blank\" href=\"https://access.redhat.com/articles/simple-content-access\">Simple Content Access.</a> Entitlement-based subscription management is deprecated and will be removed in a future version."
|
4150
4150
|
msgstr ""
|
4151
4151
|
|
4152
4152
|
#: app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html
|
@@ -34,7 +34,8 @@ Katello::RepositoryTypeManager.register(::Katello::Repository::DOCKER_TYPE) do
|
|
34
34
|
content_type Katello::DockerTag,
|
35
35
|
:priority => 3,
|
36
36
|
:pulp3_service_class => ::Katello::Pulp3::DockerTag,
|
37
|
-
:primary_content => true
|
37
|
+
:primary_content => true,
|
38
|
+
:mutable => true
|
38
39
|
content_type Katello::DockerBlob,
|
39
40
|
:priority => 4,
|
40
41
|
:pulp3_service_class => ::Katello::Pulp3::DockerBlob,
|
data/lib/katello/version.rb
CHANGED
data/locale/action_names.rb
CHANGED
@@ -1,84 +1,84 @@
|
|
1
1
|
# Autogenerated!
|
2
|
+
_("Action with sub plans")
|
2
3
|
_("Import facts")
|
3
4
|
_("Import Puppet classes")
|
4
|
-
_("
|
5
|
+
_("Abstract async task")
|
6
|
+
_("Combined Profile Update")
|
5
7
|
_("Create")
|
6
8
|
_("Delete Activation Key")
|
9
|
+
_("Remote action:")
|
7
10
|
_("Update")
|
8
|
-
_("Abstract async task")
|
9
|
-
_("Update CDN Configuration")
|
10
|
-
_("Delete")
|
11
|
-
_("Errata mail")
|
12
|
-
_("Incremental Update of Content View Version(s) ")
|
13
11
|
_("Agent action")
|
14
|
-
_("Create Alternate Content Source")
|
15
12
|
_("Destroy Alternate Content Source")
|
16
13
|
_("Refresh Alternate Content Source")
|
17
|
-
_("
|
18
|
-
_("Generate host applicability")
|
14
|
+
_("Create Alternate Content Source")
|
19
15
|
_("Bulk generate applicability for hosts")
|
20
16
|
_("Generate repository applicability")
|
17
|
+
_("Update Alternate Content Source")
|
18
|
+
_("Generate host applicability")
|
19
|
+
_("Update CDN Configuration")
|
21
20
|
_("Synchronize smart proxy")
|
22
21
|
_("Sync capsule")
|
23
|
-
_("
|
24
|
-
_("
|
25
|
-
_("
|
26
|
-
_("
|
27
|
-
_("Remove from Environment")
|
28
|
-
_("Remove Version")
|
22
|
+
_("Syncable export")
|
23
|
+
_("Import")
|
24
|
+
_("Export Repository")
|
25
|
+
_("Export Library")
|
29
26
|
_("Export")
|
30
|
-
_("
|
31
|
-
_("Import Default Content View")
|
32
|
-
_("Import Repository")
|
33
|
-
_("Incremental Update")
|
34
|
-
_("Republish Version Repositories")
|
35
|
-
_("Delete Lifecycle Environment")
|
36
|
-
_("Publish Lifecycle Environment Repositories")
|
37
|
-
_("Attach subscriptions")
|
38
|
-
_("Auto attach subscriptions")
|
39
|
-
_("Destroy Content Host")
|
40
|
-
_("Install Applicable Errata")
|
41
|
-
_("Hypervisors")
|
42
|
-
_("Hypervisors update")
|
43
|
-
_("Remove subscriptions")
|
44
|
-
_("Update Content Overrides")
|
45
|
-
_("Update for host")
|
46
|
-
_("Update release version for host")
|
47
|
-
_("Updating System Purpose for host")
|
48
|
-
_("Package Profile Update")
|
49
|
-
_("Combined Profile Update")
|
50
|
-
_("Destroy")
|
51
|
-
_("Product Create")
|
52
|
-
_("Delete Product")
|
53
|
-
_("Reindex subscriptions")
|
54
|
-
_("Update http proxy")
|
55
|
-
_("Delete Package Group")
|
56
|
-
_("Discover")
|
57
|
-
_("Fetch pxe files")
|
58
|
-
_("Filtered index content")
|
59
|
-
_("Upload into")
|
60
|
-
_("Index content")
|
61
|
-
_("Index errata")
|
62
|
-
_("Index module streams")
|
63
|
-
_("Index package groups")
|
64
|
-
_("Instance update")
|
65
|
-
_("Remove Content")
|
66
|
-
_("Synchronize")
|
67
|
-
_("Update content urls")
|
68
|
-
_("Update http proxy details")
|
69
|
-
_("Update redhat repository")
|
70
|
-
_("Create Package Group")
|
71
|
-
_("Verify checksum")
|
72
|
-
_("Disable")
|
73
|
-
_("Enable")
|
74
|
-
_("Run Sync Plan:")
|
75
|
-
_("Abstract")
|
76
|
-
_("Create Export History")
|
27
|
+
_("Copy version units to library")
|
77
28
|
_("Create Import History")
|
78
29
|
_("Create Syncable Export History")
|
79
|
-
_("
|
80
|
-
_("
|
81
|
-
_("
|
82
|
-
_("
|
83
|
-
_("
|
84
|
-
_("
|
30
|
+
_("Create Export History")
|
31
|
+
_("Abstract")
|
32
|
+
_("Disable")
|
33
|
+
_("Run Sync Plan:")
|
34
|
+
_("Enable")
|
35
|
+
_("Verify checksum")
|
36
|
+
_("Create Package Group")
|
37
|
+
_("Upload into")
|
38
|
+
_("Update redhat repository")
|
39
|
+
_("Update http proxy details")
|
40
|
+
_("Update content urls")
|
41
|
+
_("Synchronize")
|
42
|
+
_("Remove Content")
|
43
|
+
_("Instance update")
|
44
|
+
_("Index package groups")
|
45
|
+
_("Index module streams")
|
46
|
+
_("Index errata")
|
47
|
+
_("Index content")
|
48
|
+
_("Filtered index content")
|
49
|
+
_("Fetch pxe files")
|
50
|
+
_("Errata mail")
|
51
|
+
_("Discover")
|
52
|
+
_("Delete Package Group")
|
53
|
+
_("Delete")
|
54
|
+
_("Attach subscriptions")
|
55
|
+
_("Publish Lifecycle Environment Repositories")
|
56
|
+
_("Update http proxy")
|
57
|
+
_("Reindex subscriptions")
|
58
|
+
_("Delete Product")
|
59
|
+
_("Product Create")
|
60
|
+
_("Destroy")
|
61
|
+
_("Package Profile Update")
|
62
|
+
_("Updating System Purpose for host")
|
63
|
+
_("Update release version for host")
|
64
|
+
_("Update for host")
|
65
|
+
_("Update Content Overrides")
|
66
|
+
_("Remove subscriptions")
|
67
|
+
_("Hypervisors update")
|
68
|
+
_("Hypervisors")
|
69
|
+
_("Install Applicable Errata")
|
70
|
+
_("Destroy Content Host")
|
71
|
+
_("Auto attach subscriptions")
|
72
|
+
_("Delete Lifecycle Environment")
|
73
|
+
_("Republish Version Repositories")
|
74
|
+
_("Incremental Update")
|
75
|
+
_("Import Repository")
|
76
|
+
_("Import Default Content View")
|
77
|
+
_("Import Content View Version")
|
78
|
+
_("Remove Version")
|
79
|
+
_("Remove from Environment")
|
80
|
+
_("Remove Versions and Associations")
|
81
|
+
_("Publish")
|
82
|
+
_("Promotion to Environment")
|
83
|
+
_("Promote")
|
84
|
+
_("Incremental Update of Content View Version(s) ")
|