katello 3.17.0.rc2.2 → 3.17.0
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/v2/content_view_versions_controller.rb +9 -1
- data/app/controllers/katello/api/v2/host_tracer_controller.rb +16 -36
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +12 -1
- data/app/controllers/katello/concerns/organizations_controller_extensions.rb +23 -0
- data/app/lib/actions/katello/content_view/promote.rb +2 -2
- data/app/lib/actions/katello/content_view/promote_to_environment.rb +12 -3
- data/app/lib/actions/katello/content_view/publish.rb +18 -2
- data/app/lib/actions/katello/content_view_version/import.rb +36 -0
- data/app/lib/actions/katello/content_view_version/incremental_update.rb +1 -1
- data/app/lib/actions/katello/organization/create.rb +1 -1
- data/app/lib/actions/katello/organization/simple_content_access/disable.rb +8 -0
- data/app/lib/actions/katello/organization/simple_content_access/enable.rb +8 -0
- data/app/lib/actions/katello/organization/simple_content_access/toggle.rb +16 -2
- data/app/lib/actions/katello/repository/multi_clone_contents.rb +8 -6
- data/app/lib/actions/pulp3/abstract_async_task.rb +1 -0
- data/app/lib/actions/pulp3/content_view_version/create_importer.rb +20 -0
- data/app/lib/actions/pulp3/content_view_version/destroy_importer.rb +16 -0
- data/app/lib/actions/pulp3/content_view_version/import.rb +21 -0
- data/app/lib/actions/pulp3/orchestration/content_view_version/copy_version_units_to_library.rb +25 -0
- data/app/lib/actions/pulp3/orchestration/content_view_version/export.rb +9 -1
- data/app/lib/actions/pulp3/orchestration/content_view_version/import.rb +41 -0
- data/app/lib/actions/pulp3/repository/copy_content.rb +6 -1
- data/app/lib/actions/pulp3/repository/multi_copy_content.rb +1 -1
- data/app/lib/katello/resources/cdn.rb +3 -2
- data/app/lib/katello/util/cdn_var_substitutor.rb +9 -7
- data/app/models/katello/content_view.rb +6 -0
- data/app/models/katello/content_view_version.rb +10 -1
- data/app/models/katello/glue/pulp/repo.rb +1 -1
- data/app/models/katello/root_repository.rb +5 -1
- data/app/overrides/add_organization_attributes.rb +12 -0
- data/app/services/katello/host_trace_manager.rb +38 -0
- data/app/services/katello/pulp3/content_view_version/export.rb +25 -29
- data/app/services/katello/pulp3/content_view_version/import.rb +87 -0
- data/app/services/katello/pulp3/content_view_version/import_export_common.rb +44 -0
- data/app/services/katello/pulp3/repository/yum.rb +72 -4
- data/app/services/katello/pulp3/task.rb +4 -4
- data/app/services/katello/pulp3/task_group.rb +6 -0
- data/app/services/katello/ui_notifications/subscriptions/sca_disable_error.rb +13 -0
- data/app/services/katello/ui_notifications/subscriptions/sca_disable_success.rb +13 -0
- data/app/services/katello/ui_notifications/subscriptions/sca_enable_error.rb +13 -0
- data/app/services/katello/ui_notifications/subscriptions/sca_enable_success.rb +13 -0
- data/app/views/overrides/organizations/_edit_override.html.erb +10 -1
- data/app/views/overrides/organizations/_index_header_override.html.erb +3 -0
- data/app/views/overrides/organizations/_index_row_override.html.erb +3 -0
- data/config/routes/api/v2.rb +1 -6
- data/config/routes/overrides.rb +4 -0
- data/db/seeds.d/109-katello-notification-blueprints.rb +24 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-associations.controller.js +2 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +4 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-subscriptions.controller.js +2 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-repository-sets.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-traces-modal.controller.js +3 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details-info.controller.js +2 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-repository-sets.controller.js +4 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +2 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-repository-sets.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-bulk-action.factory.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +2 -2
- data/lib/katello/permission_creator.rb +1 -1
- data/lib/katello/permissions/host_permissions.rb +1 -0
- data/lib/katello/tasks/pulp3_post_migration_check.rake +2 -1
- data/lib/katello/tasks/reimport.rake +1 -1
- data/lib/katello/version.rb +1 -1
- data/webpack/index.js +0 -1
- metadata +19 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-traces-resolve.factory.js +0 -18
@@ -0,0 +1,44 @@
|
|
1
|
+
module Katello
|
2
|
+
module Pulp3
|
3
|
+
module ContentViewVersion
|
4
|
+
module ImportExportCommon
|
5
|
+
def generate_name
|
6
|
+
@content_view_version.name.gsub(/\s/, '_')
|
7
|
+
end
|
8
|
+
|
9
|
+
def generate_id
|
10
|
+
"#{@content_view_version.organization.label}_#{generate_name}"
|
11
|
+
end
|
12
|
+
|
13
|
+
def api
|
14
|
+
::Katello::Pulp3::Api::Core.new(@smart_proxy)
|
15
|
+
end
|
16
|
+
|
17
|
+
def fetch_repository_info(version_href)
|
18
|
+
repo_api = ::Katello::Pulp3::Api::Yum.new(@smart_proxy).repositories_api
|
19
|
+
repo_api.read(version_href_to_repository_href(version_href))
|
20
|
+
end
|
21
|
+
|
22
|
+
def repository_hrefs
|
23
|
+
version_hrefs.map { |href| version_href_to_repository_href(href) }.uniq
|
24
|
+
end
|
25
|
+
|
26
|
+
def version_hrefs
|
27
|
+
repositories.pluck(:version_href).compact
|
28
|
+
end
|
29
|
+
|
30
|
+
def repositories
|
31
|
+
if @content_view_version.default?
|
32
|
+
@content_view_version.repositories.yum_type
|
33
|
+
else
|
34
|
+
@content_view_version.archived_repos.yum_type
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def version_href_to_repository_href(version_href)
|
39
|
+
version_href.split("/")[0..-3].join("/") + "/"
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -3,10 +3,13 @@ require 'pulp_rpm_client'
|
|
3
3
|
module Katello
|
4
4
|
module Pulp3
|
5
5
|
class Repository
|
6
|
+
# rubocop:disable Metrics/ClassLength
|
6
7
|
class Yum < ::Katello::Pulp3::Repository
|
7
8
|
include Katello::Util::Errata
|
8
9
|
include Katello::Util::PulpcoreContentFilters
|
9
10
|
|
11
|
+
UNIT_LIMIT = 10_000
|
12
|
+
|
10
13
|
def remote_options
|
11
14
|
url, sles_token = extract_sles_token
|
12
15
|
options = common_remote_options
|
@@ -109,14 +112,71 @@ module Katello
|
|
109
112
|
data.config << config
|
110
113
|
end
|
111
114
|
end
|
112
|
-
|
113
|
-
tasks << api.copy_api.copy_content(data)
|
115
|
+
tasks << copy_content_chunked(data)
|
114
116
|
else
|
115
117
|
tasks << remove_all_content_from_mapping(repo_id_map)
|
116
118
|
end
|
117
119
|
tasks.flatten
|
118
120
|
end
|
119
121
|
|
122
|
+
def copy_api_data_dup(data)
|
123
|
+
data_dup = PulpRpmClient::Copy.new
|
124
|
+
data_dup.dependency_solving = data.dependency_solving
|
125
|
+
data_dup.config = []
|
126
|
+
data.config.each do |repo_config|
|
127
|
+
config_hash = {
|
128
|
+
source_repo_version: repo_config[:source_repo_version],
|
129
|
+
dest_repo: repo_config[:dest_repo],
|
130
|
+
content: []
|
131
|
+
}
|
132
|
+
config_hash[:dest_base_version] = repo_config[:dest_base_version] if repo_config[:dest_base_version]
|
133
|
+
data_dup.config << config_hash
|
134
|
+
end
|
135
|
+
data_dup
|
136
|
+
end
|
137
|
+
|
138
|
+
def copy_content_chunked(data)
|
139
|
+
tasks = []
|
140
|
+
# Don't chunk if there aren't enough content units
|
141
|
+
if data.config.sum { |repo_config| repo_config[:content].size } <= UNIT_LIMIT
|
142
|
+
return api.copy_api.copy_content(data)
|
143
|
+
end
|
144
|
+
|
145
|
+
unit_copy_counter = 0
|
146
|
+
i = 0
|
147
|
+
leftover_units = data.config.first[:content].deep_dup
|
148
|
+
|
149
|
+
# Copy data and clear its content fields
|
150
|
+
data_dup = copy_api_data_dup(data)
|
151
|
+
|
152
|
+
while i < data_dup.config.size
|
153
|
+
# Copy all units within repo or only some?
|
154
|
+
if leftover_units.length < UNIT_LIMIT - unit_copy_counter
|
155
|
+
copy_amount = leftover_units.length
|
156
|
+
else
|
157
|
+
copy_amount = UNIT_LIMIT - unit_copy_counter
|
158
|
+
end
|
159
|
+
|
160
|
+
data_dup.config[i][:content] = leftover_units.pop(copy_amount)
|
161
|
+
unit_copy_counter += copy_amount
|
162
|
+
# Do copy call if limit is reached or if we're under the limit but on the last repo config.
|
163
|
+
if unit_copy_counter >= UNIT_LIMIT || (i == data_dup.config.size - 1 && leftover_units.empty?)
|
164
|
+
tasks << api.copy_api.copy_content(data_dup)
|
165
|
+
unit_copy_counter = 0
|
166
|
+
end
|
167
|
+
|
168
|
+
if leftover_units.empty?
|
169
|
+
# Nothing more to copy -- clear current config's content
|
170
|
+
data_dup.config[i][:content] = []
|
171
|
+
i += 1
|
172
|
+
# Fetch unit list for next data config
|
173
|
+
leftover_units = data.config[i][:content].deep_dup unless i == data_dup.config.size
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
177
|
+
tasks
|
178
|
+
end
|
179
|
+
|
120
180
|
def remove_all_content_from_mapping(repo_id_map)
|
121
181
|
tasks = []
|
122
182
|
repo_id_map.each do |_source_repo_ids, dest_repo_id_map|
|
@@ -148,6 +208,16 @@ module Katello
|
|
148
208
|
tasks
|
149
209
|
end
|
150
210
|
|
211
|
+
def copy_all(source_repository)
|
212
|
+
data = PulpRpmClient::Copy.new
|
213
|
+
data.config = [{
|
214
|
+
source_repo_version: source_repository.version_href,
|
215
|
+
dest_repo: repository_reference.repository_href
|
216
|
+
}]
|
217
|
+
|
218
|
+
[api.copy_api.copy_content(data)]
|
219
|
+
end
|
220
|
+
|
151
221
|
def remove_all_content_from_repo(repo_href)
|
152
222
|
data = PulpRpmClient::RepositoryAddRemoveContent.new(
|
153
223
|
remove_content_units: ['*'])
|
@@ -271,7 +341,6 @@ module Katello
|
|
271
341
|
end
|
272
342
|
|
273
343
|
filters.flatten!.compact!
|
274
|
-
|
275
344
|
whitelist_ids = []
|
276
345
|
blacklist_ids = []
|
277
346
|
filters.each do |filter|
|
@@ -298,7 +367,6 @@ module Katello
|
|
298
367
|
content_unit_hrefs += additional_content_hrefs(source_repository, content_unit_hrefs)
|
299
368
|
end
|
300
369
|
content_unit_hrefs += source_repository.srpms.pluck(:pulp_id)
|
301
|
-
|
302
370
|
dependency_solving = options[:solve_dependencies] || false
|
303
371
|
copy_units(source_repository, content_unit_hrefs.uniq, dependency_solving)
|
304
372
|
end
|
@@ -61,7 +61,7 @@ module Katello
|
|
61
61
|
end
|
62
62
|
|
63
63
|
def task_group_href
|
64
|
-
task_data[:task_group]
|
64
|
+
task_data[:task_group] || task_data[:created_resources].find { |href| href.starts_with?("/pulp/api/v3/task-groups/") }
|
65
65
|
end
|
66
66
|
|
67
67
|
def done?
|
@@ -79,7 +79,7 @@ module Katello
|
|
79
79
|
|
80
80
|
def error
|
81
81
|
if task_data[:state] == CANCELED
|
82
|
-
|
82
|
+
_("Task canceled")
|
83
83
|
elsif task_data[:state] == FAILED
|
84
84
|
if task_data[:error][:description].blank?
|
85
85
|
_("Pulp task error")
|
@@ -90,8 +90,8 @@ module Katello
|
|
90
90
|
end
|
91
91
|
|
92
92
|
def cancel
|
93
|
-
data = PulpcoreClient::
|
94
|
-
tasks_api.tasks_cancel(
|
93
|
+
data = PulpcoreClient::TaskResponse.new(state: 'canceled')
|
94
|
+
tasks_api.tasks_cancel(task_data['pulp_href'], data)
|
95
95
|
#the main task may have completed, so cancel spawned tasks too
|
96
96
|
task_data['spawned_tasks']&.each { |spawned| tasks_api.tasks_cancel(spawned['pulp_href'], data) }
|
97
97
|
end
|
@@ -73,6 +73,12 @@ module Katello
|
|
73
73
|
end
|
74
74
|
|
75
75
|
def cancel
|
76
|
+
tasks_api = ::Katello::Pulp3::Api::Core.new(@smart_proxy).tasks_api
|
77
|
+
tasks_response = tasks_api.list(task_group: task_group_data['pulp_href'])
|
78
|
+
data = PulpcoreClient::TaskResponse.new(state: 'canceled')
|
79
|
+
tasks_response.results.collect do |result|
|
80
|
+
tasks_api.tasks_cancel(result.pulp_href, data)
|
81
|
+
end
|
76
82
|
end
|
77
83
|
end
|
78
84
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Katello
|
2
|
+
module UINotifications
|
3
|
+
module Subscriptions
|
4
|
+
class SCADisableError < UINotifications::TaskNotification
|
5
|
+
private
|
6
|
+
|
7
|
+
def blueprint
|
8
|
+
@blueprint ||= NotificationBlueprint.find_by(name: 'sca_disable_error')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Katello
|
2
|
+
module UINotifications
|
3
|
+
module Subscriptions
|
4
|
+
class SCADisableSuccess < UINotifications::AbstractNotification
|
5
|
+
private
|
6
|
+
|
7
|
+
def blueprint
|
8
|
+
@blueprint ||= NotificationBlueprint.find_by(name: 'sca_disable_success')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Katello
|
2
|
+
module UINotifications
|
3
|
+
module Subscriptions
|
4
|
+
class SCAEnableError < UINotifications::TaskNotification
|
5
|
+
private
|
6
|
+
|
7
|
+
def blueprint
|
8
|
+
@blueprint ||= NotificationBlueprint.find_by(name: 'sca_enable_error')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Katello
|
2
|
+
module UINotifications
|
3
|
+
module Subscriptions
|
4
|
+
class SCAEnableSuccess < UINotifications::AbstractNotification
|
5
|
+
private
|
6
|
+
|
7
|
+
def blueprint
|
8
|
+
@blueprint ||= NotificationBlueprint.find_by(name: 'sca_enable_success')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -15,4 +15,13 @@
|
|
15
15
|
'data-url' => "/katello/api/v2/organizations/#{@taxonomy.id}/download_debug_certificate"
|
16
16
|
end %>
|
17
17
|
|
18
|
-
<%
|
18
|
+
<% if @can_toggle_sca %>
|
19
|
+
<%= field(f, _('Simple Content Access'),
|
20
|
+
:help_inline => _('Toggling Simple Content Access will refresh your manifest.')) do
|
21
|
+
tag1 = hidden_field_tag 'simple_content_access', '0'
|
22
|
+
tag2 = check_box_tag 'simple_content_access', '1', @taxonomy.simple_content_access?
|
23
|
+
tag1 + tag2
|
24
|
+
end %>
|
25
|
+
<% end %>
|
26
|
+
|
27
|
+
<% end %>
|
data/config/routes/api/v2.rb
CHANGED
@@ -124,6 +124,7 @@ Katello::Engine.routes.draw do
|
|
124
124
|
get :export_histories
|
125
125
|
get :auto_complete_search
|
126
126
|
post :incremental_update
|
127
|
+
post :import
|
127
128
|
end
|
128
129
|
end
|
129
130
|
|
@@ -309,12 +310,6 @@ Katello::Engine.routes.draw do
|
|
309
310
|
end
|
310
311
|
end
|
311
312
|
|
312
|
-
api_resources :traces, :only => [], :controller => 'host_tracer' do
|
313
|
-
collection do
|
314
|
-
put :resolve
|
315
|
-
end
|
316
|
-
end
|
317
|
-
|
318
313
|
api_resources :srpms, :only => [:index, :show], :controller => 'srpms' do
|
319
314
|
collection do
|
320
315
|
get :auto_complete_search
|
data/config/routes/overrides.rb
CHANGED
@@ -77,6 +77,7 @@ Foreman::Application.routes.draw do
|
|
77
77
|
match '/bulk/environment_content_view' => 'hosts_bulk_actions#environment_content_view', :via => :put
|
78
78
|
match '/bulk/release_version' => 'hosts_bulk_actions#release_version', :via => :put
|
79
79
|
match '/bulk/traces' => 'hosts_bulk_actions#traces', :via => :post
|
80
|
+
match '/bulk/resolve_traces' => 'hosts_bulk_actions#resolve_traces', :via => :put
|
80
81
|
match '/bulk/available_incremental_updates' => 'hosts_bulk_actions#available_incremental_updates', :via => :post
|
81
82
|
match '/bulk/module_streams' => 'hosts_bulk_actions#module_streams', :via => :post
|
82
83
|
match '/subscriptions/' => 'host_subscriptions#create', :via => :post
|
@@ -114,6 +115,9 @@ Foreman::Application.routes.draw do
|
|
114
115
|
end
|
115
116
|
|
116
117
|
resources :traces, :only => [:index], :controller => :host_tracer do
|
118
|
+
collection do
|
119
|
+
put :resolve
|
120
|
+
end
|
117
121
|
end
|
118
122
|
end
|
119
123
|
end
|
@@ -60,6 +60,30 @@ blueprints = [
|
|
60
60
|
name: 'manifest_delete_error',
|
61
61
|
message: N_('Deleting manifest in \'%{subject}\' failed.'),
|
62
62
|
level: 'error'
|
63
|
+
},
|
64
|
+
{
|
65
|
+
group: N_('Subscriptions'),
|
66
|
+
name: 'sca_enable_success',
|
67
|
+
message: N_('Simple Content Access has been enabled for \'%{subject}\'.'),
|
68
|
+
level: 'info'
|
69
|
+
},
|
70
|
+
{
|
71
|
+
group: N_('Subscriptions'),
|
72
|
+
name: 'sca_enable_error',
|
73
|
+
message: N_('Enabling Simple Content Access failed for \'%{subject}\'.'),
|
74
|
+
level: 'error'
|
75
|
+
},
|
76
|
+
{
|
77
|
+
group: N_('Subscriptions'),
|
78
|
+
name: 'sca_disable_success',
|
79
|
+
message: N_('Simple Content Access has been disabled for \'%{subject}\'.'),
|
80
|
+
level: 'info'
|
81
|
+
},
|
82
|
+
{
|
83
|
+
group: N_('Subscriptions'),
|
84
|
+
name: 'sca_disable_error',
|
85
|
+
message: N_('Disabling Simple Content Access failed for \'%{subject}\'.'),
|
86
|
+
level: 'error'
|
63
87
|
}
|
64
88
|
]
|
65
89
|
|
@@ -9,14 +9,13 @@
|
|
9
9
|
* @requires ActivationKey
|
10
10
|
* @requires ContentHostsHelper
|
11
11
|
* @requires CurrentOrganization
|
12
|
-
* @requires simpleContentAccessEnabled
|
13
12
|
*
|
14
13
|
* @description
|
15
14
|
* Provides the functionality for activation key associations.
|
16
15
|
*/
|
17
16
|
angular.module('Bastion.activation-keys').controller('ActivationKeyAssociationsController',
|
18
|
-
['$scope', '$location', 'translate', 'Nutupane', 'ActivationKey', 'ContentHostsHelper', 'CurrentOrganization', 'Host',
|
19
|
-
function ($scope, $location, translate, Nutupane, ActivationKey, ContentHostsHelper, CurrentOrganization, Host
|
17
|
+
['$scope', '$location', 'translate', 'Nutupane', 'ActivationKey', 'ContentHostsHelper', 'CurrentOrganization', 'Host',
|
18
|
+
function ($scope, $location, translate, Nutupane, ActivationKey, ContentHostsHelper, CurrentOrganization, Host) {
|
20
19
|
var contentHostsNutupane, nutupaneParams, params = {
|
21
20
|
'organization_id': CurrentOrganization,
|
22
21
|
'search': $location.search().search || "",
|
@@ -60,7 +59,5 @@ angular.module('Bastion.activation-keys').controller('ActivationKeyAssociationsC
|
|
60
59
|
$scope.getHostStatusIcon = ContentHostsHelper.getHostStatusIcon;
|
61
60
|
|
62
61
|
$scope.memory = ContentHostsHelper.memory;
|
63
|
-
|
64
|
-
$scope.simpleContentAccessEnabled = simpleContentAccessEnabled;
|
65
62
|
}]
|
66
63
|
);
|
@@ -20,7 +20,8 @@ angular.module('Bastion.activation-keys').controller('ActivationKeyRepositorySet
|
|
20
20
|
|
21
21
|
params = {
|
22
22
|
id: $scope.$stateParams.activationKeyId,
|
23
|
-
'organization_id': CurrentOrganization
|
23
|
+
'organization_id': CurrentOrganization,
|
24
|
+
'content_access_mode_all': $scope.simpleContentAccessEnabled
|
24
25
|
};
|
25
26
|
|
26
27
|
$scope.controllerName = 'katello_products';
|
@@ -28,12 +29,12 @@ angular.module('Bastion.activation-keys').controller('ActivationKeyRepositorySet
|
|
28
29
|
$scope.table = $scope.nutupane.table;
|
29
30
|
|
30
31
|
$scope.contentAccessModes = {
|
31
|
-
contentAccessModeAll:
|
32
|
+
contentAccessModeAll: $scope.simpleContentAccessEnabled,
|
32
33
|
contentAccessModeEnv: false
|
33
34
|
};
|
34
35
|
$scope.toggleFilters = function () {
|
35
36
|
$scope.nutupane.table.params['content_access_mode_env'] = $scope.contentAccessModes.contentAccessModeEnv;
|
36
|
-
$scope.nutupane.table.params['content_access_mode_all'] = $scope.contentAccessModes.contentAccessModeAll;
|
37
|
+
$scope.nutupane.table.params['content_access_mode_all'] = $scope.contentAccessModes.contentAccessModeAll || $scope.simpleContentAccessEnabled;
|
37
38
|
$scope.nutupane.refresh();
|
38
39
|
};
|
39
40
|
|
@@ -9,14 +9,13 @@
|
|
9
9
|
* @requires ActivationKey
|
10
10
|
* @requires SubscriptionsHelper
|
11
11
|
* @requires Notification
|
12
|
-
* @requires simpleContentAccessEnabled
|
13
12
|
*
|
14
13
|
* @description
|
15
14
|
* Provides the functionality for the activation key subscriptions details action pane.
|
16
15
|
*/
|
17
16
|
angular.module('Bastion.activation-keys').controller('ActivationKeySubscriptionsController',
|
18
|
-
['$scope', '$location', 'translate', 'Nutupane', 'ActivationKey', 'Subscription', 'SubscriptionsHelper', 'Notification',
|
19
|
-
function ($scope, $location, translate, Nutupane, ActivationKey, Subscription, SubscriptionsHelper, Notification
|
17
|
+
['$scope', '$location', 'translate', 'Nutupane', 'ActivationKey', 'Subscription', 'SubscriptionsHelper', 'Notification',
|
18
|
+
function ($scope, $location, translate, Nutupane, ActivationKey, Subscription, SubscriptionsHelper, Notification) {
|
20
19
|
var params;
|
21
20
|
|
22
21
|
params = {
|
@@ -33,7 +32,6 @@ angular.module('Bastion.activation-keys').controller('ActivationKeySubscriptions
|
|
33
32
|
$scope.contentNutupane.setSearchKey('subscriptionSearch');
|
34
33
|
$scope.isRemoving = false;
|
35
34
|
$scope.contextAdd = false;
|
36
|
-
$scope.simpleContentAccessEnabled = simpleContentAccessEnabled;
|
37
35
|
|
38
36
|
$scope.groupedSubscriptions = {};
|
39
37
|
$scope.$watch('table.rows', function (rows) {
|
@@ -17,7 +17,7 @@
|
|
17
17
|
</div>
|
18
18
|
|
19
19
|
<div data-block="filters">
|
20
|
-
<label class="checkbox-inline" title="{{ 'Show all Repository Sets in Organization' | translate }}">
|
20
|
+
<label class="checkbox-inline" title="{{ 'Show all Repository Sets in Organization' | translate }}" ng-if="!simpleContentAccessEnabled">
|
21
21
|
<input type="checkbox" ng-model="contentAccessModes.contentAccessModeAll" ng-change="toggleFilters()"/>
|
22
22
|
<span translate>Show All</span>
|
23
23
|
</label>
|