katello 3.17.0.rc2.1 → 3.17.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/v2/api_controller.rb +1 -2
- 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/applicability/hosts/bulk_generate.rb +6 -2
- data/app/lib/actions/katello/capsule_content/sync_capsule.rb +6 -2
- 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/host/hypervisors_update.rb +18 -0
- 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/delete_repository_references.rb +1 -1
- 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/delete.rb +1 -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/concerns/redhat_extensions.rb +2 -2
- data/app/models/katello/concerns/smart_proxy_extensions.rb +3 -1
- 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/applicability/applicable_content_helper.rb +12 -1
- 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/erratum.rb +2 -1
- data/app/services/katello/pulp3/repository.rb +8 -4
- data/app/services/katello/pulp3/repository/yum.rb +71 -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/migrate/20150930183738_migrate_content_hosts.rb +1 -1
- data/db/migrate/20200514092553_move_katello_fields_from_hostgroups.katello.rb +5 -2
- 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/common/views/katello-agent-notice.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/content-hosts/views/register-client.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/i18n/bastion_katello.pot +1 -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_content_switchover.rake +3 -1
- data/lib/katello/tasks/pulp3_post_migration_check.rake +2 -1
- data/lib/katello/tasks/reimport.rake +1 -1
- data/lib/katello/tasks/reports.rake +4 -1
- data/lib/katello/version.rb +1 -1
- data/webpack/index.js +0 -1
- metadata +34 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-traces-resolve.factory.js +0 -18
@@ -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
|
@@ -329,7 +329,7 @@ class MigrateContentHosts < ActiveRecord::Migration[4.2]
|
|
329
329
|
# rubocop:disable Metrics/MethodLength
|
330
330
|
# rubocop:disable Metrics/AbcSize
|
331
331
|
def up
|
332
|
-
|
332
|
+
unless User.unscoped.where(:login => User::ANONYMOUS_API_ADMIN).exists?
|
333
333
|
logger.warn("Foreman anonymous admin does not exist, skipping content host migration.")
|
334
334
|
return
|
335
335
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
class MoveKatelloFieldsFromHostgroups < ActiveRecord::Migration[6.0]
|
2
2
|
def up
|
3
|
-
if User.where(login: User::ANONYMOUS_ADMIN).exists?
|
3
|
+
if User.unscoped.where(login: User::ANONYMOUS_ADMIN).exists?
|
4
4
|
User.as_anonymous_admin do
|
5
5
|
copy_data_from_hostgroup
|
6
6
|
end
|
@@ -46,7 +46,10 @@ class MoveKatelloFieldsFromHostgroups < ActiveRecord::Migration[6.0]
|
|
46
46
|
content_facet.kickstart_repository_id = kickstart_repository_id
|
47
47
|
content_facet.content_view_id = content_view_id
|
48
48
|
content_facet.lifecycle_environment_id = lifecycle_environment_id
|
49
|
-
content_facet.save
|
49
|
+
unless content_facet.save
|
50
|
+
Rails.logger.warn("Unable to save content facet hostgroup for #{content_facet.inspect} ")
|
51
|
+
Rails.logger.warn(content_facet.errors.full_messages.join("\n"))
|
52
|
+
end
|
50
53
|
end
|
51
54
|
end
|
52
55
|
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>
|
@@ -9,7 +9,6 @@
|
|
9
9
|
* @requires Nutupane
|
10
10
|
* @requires BastionConfig
|
11
11
|
* @requires hostIds
|
12
|
-
* @requires HostTracesResolve
|
13
12
|
* @required ContentHostsHelper
|
14
13
|
* @requires translate
|
15
14
|
*
|
@@ -18,8 +17,8 @@
|
|
18
17
|
*/
|
19
18
|
/*jshint camelcase:false*/
|
20
19
|
angular.module('Bastion.content-hosts').controller('ContentHostsBulkTracesController',
|
21
|
-
['$scope', '$uibModalInstance', 'HostBulkAction', 'Notification', 'Nutupane', 'BastionConfig', 'hostIds', '
|
22
|
-
function ($scope, $uibModalInstance, HostBulkAction, Notification, Nutupane, BastionConfig, hostIds,
|
20
|
+
['$scope', '$uibModalInstance', 'HostBulkAction', 'Notification', 'Nutupane', 'BastionConfig', 'hostIds', 'ContentHostsHelper', 'translate',
|
21
|
+
function ($scope, $uibModalInstance, HostBulkAction, Notification, Nutupane, BastionConfig, hostIds, ContentHostsHelper, translate) {
|
23
22
|
|
24
23
|
var tracesNutupane = new Nutupane(HostBulkAction, hostIds, 'traces');
|
25
24
|
tracesNutupane.enableSelectAllResults();
|
@@ -46,7 +45,7 @@ angular.module('Bastion.content-hosts').controller('ContentHostsBulkTracesContro
|
|
46
45
|
});
|
47
46
|
};
|
48
47
|
/* eslint-disable camelcase */
|
49
|
-
|
48
|
+
HostBulkAction.resolveTraces({trace_ids: traceids}, onSuccess, onFailure);
|
50
49
|
/* eslint-enable camelcase */
|
51
50
|
};
|
52
51
|
|
@@ -10,14 +10,13 @@
|
|
10
10
|
* @requires Organization
|
11
11
|
* @requires CurrentOrganization
|
12
12
|
* @requires CurrentHostsHelper
|
13
|
-
* @requires simpleContentAccessEnabled
|
14
13
|
*
|
15
14
|
* @description
|
16
15
|
* Provides the functionality for the content host details action pane.
|
17
16
|
*/
|
18
17
|
angular.module('Bastion.content-hosts').controller('ContentHostDetailsInfoController',
|
19
|
-
['$scope', '$q', 'translate', 'HostSubscription', 'ContentView', 'Organization', 'CurrentOrganization', 'ContentHostsHelper',
|
20
|
-
function ($scope, $q, translate, HostSubscription, ContentView, Organization, CurrentOrganization, ContentHostsHelper
|
18
|
+
['$scope', '$q', 'translate', 'HostSubscription', 'ContentView', 'Organization', 'CurrentOrganization', 'ContentHostsHelper',
|
19
|
+
function ($scope, $q, translate, HostSubscription, ContentView, Organization, CurrentOrganization, ContentHostsHelper) {
|
21
20
|
function doubleColonNotationToObject(dotString) {
|
22
21
|
var doubleColonObject = {}, tempObject, parts, part, key, property;
|
23
22
|
for (property in dotString) {
|
@@ -46,7 +45,6 @@ angular.module('Bastion.content-hosts').controller('ContentHostDetailsInfoContro
|
|
46
45
|
$scope.showCVAlert = false;
|
47
46
|
$scope.editContentView = false;
|
48
47
|
$scope.disableEnvironmentSelection = false;
|
49
|
-
$scope.simpleContentAccessEnabled = simpleContentAccessEnabled;
|
50
48
|
$scope.environments = [];
|
51
49
|
|
52
50
|
$scope.environments = Organization.readableEnvironments({id: CurrentOrganization});
|
@@ -23,7 +23,8 @@ angular.module('Bastion.content-hosts').controller('ContentHostRepositorySetsCon
|
|
23
23
|
'organization_id': CurrentOrganization,
|
24
24
|
enabled: true,
|
25
25
|
'full_result': true,
|
26
|
-
'include_available_content': true
|
26
|
+
'include_available_content': true,
|
27
|
+
'content_access_mode_all': $scope.simpleContentAccessEnabled
|
27
28
|
};
|
28
29
|
|
29
30
|
$scope.controllerName = 'katello_products';
|
@@ -31,11 +32,11 @@ angular.module('Bastion.content-hosts').controller('ContentHostRepositorySetsCon
|
|
31
32
|
$scope.table = $scope.nutupane.table;
|
32
33
|
|
33
34
|
$scope.contentAccessModes = {
|
34
|
-
contentAccessModeAll:
|
35
|
+
contentAccessModeAll: $scope.simpleContentAccessEnabled,
|
35
36
|
contentAccessModeEnv: false
|
36
37
|
};
|
37
38
|
$scope.toggleFilters = function () {
|
38
|
-
$scope.nutupane.table.params['content_access_mode_all'] = $scope.contentAccessModes.contentAccessModeAll;
|
39
|
+
$scope.nutupane.table.params['content_access_mode_all'] = $scope.contentAccessModes.contentAccessModeAll || $scope.simpleContentAccessEnabled;
|
39
40
|
$scope.nutupane.table.params['content_access_mode_env'] = $scope.contentAccessModes.contentAccessModeEnv;
|
40
41
|
$scope.nutupane.refresh();
|
41
42
|
};
|
@@ -8,14 +8,13 @@
|
|
8
8
|
* @requires Subscription
|
9
9
|
* @requires SubscriptionsHelper
|
10
10
|
* @requires Notification
|
11
|
-
* @requires simpleContentAccessEnabled
|
12
11
|
*
|
13
12
|
* @description
|
14
13
|
* Provides the functionality for the content host details action pane.
|
15
14
|
*/
|
16
15
|
angular.module('Bastion.content-hosts').controller('ContentHostSubscriptionsController',
|
17
|
-
['$scope', '$location', 'translate', 'Nutupane', 'CurrentOrganization', 'Subscription', 'Host', 'HostSubscription', 'SubscriptionsHelper', 'Notification',
|
18
|
-
function ($scope, $location, translate, Nutupane, CurrentOrganization, Subscription, Host, HostSubscription, SubscriptionsHelper, Notification
|
16
|
+
['$scope', '$location', 'translate', 'Nutupane', 'CurrentOrganization', 'Subscription', 'Host', 'HostSubscription', 'SubscriptionsHelper', 'Notification',
|
17
|
+
function ($scope, $location, translate, Nutupane, CurrentOrganization, Subscription, Host, HostSubscription, SubscriptionsHelper, Notification) {
|
19
18
|
|
20
19
|
var params = {
|
21
20
|
'organization_id': CurrentOrganization,
|
@@ -31,7 +30,6 @@ angular.module('Bastion.content-hosts').controller('ContentHostSubscriptionsCont
|
|
31
30
|
$scope.nutupane.primaryOnly = true;
|
32
31
|
$scope.isRemoving = false;
|
33
32
|
$scope.contextAdd = false;
|
34
|
-
$scope.simpleContentAccessEnabled = simpleContentAccessEnabled;
|
35
33
|
$scope.groupedSubscriptions = {};
|
36
34
|
$scope.$watch('table.rows', function (rows) {
|
37
35
|
$scope.groupedSubscriptions = SubscriptionsHelper.groupByProductName(rows);
|
@@ -22,7 +22,7 @@
|
|
22
22
|
</div>
|
23
23
|
|
24
24
|
<div data-block="filters">
|
25
|
-
<label class="checkbox-inline" title="{{ 'Show all Repository Sets in Organization' | translate }}">
|
25
|
+
<label class="checkbox-inline" title="{{ 'Show all Repository Sets in Organization' | translate }}" ng-if="!simpleContentAccessEnabled">
|
26
26
|
<input type="checkbox" ng-model="contentAccessModes.contentAccessModeAll" ng-change="toggleFilters()"/>
|
27
27
|
<span translate>Show All</span>
|
28
28
|
</label>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
<section>
|
13
13
|
<p bst-alert="warning" >
|
14
14
|
<span translate>
|
15
|
-
Katello-agent is deprecated and will be removed in
|
15
|
+
Katello-agent is deprecated and will be removed in a future release.
|
16
16
|
</span>
|
17
17
|
</p>
|
18
18
|
</section>
|
@@ -26,7 +26,8 @@ angular.module('Bastion.hosts').factory('HostBulkAction',
|
|
26
26
|
releaseVersion: {method: 'PUT', params: {action: 'release_version'}},
|
27
27
|
availableIncrementalUpdates: {method: 'POST', isArray: true, params: {action: 'available_incremental_updates'}},
|
28
28
|
moduleStreams: {method: 'POST', params: {action: 'module_streams'}},
|
29
|
-
traces: {method: 'POST', params: {action: 'traces'}}
|
29
|
+
traces: {method: 'POST', params: {action: 'traces'}},
|
30
|
+
resolveTraces: {method: 'PUT', isArray: true, params: {action: 'resolve_traces'}}
|
30
31
|
});
|
31
32
|
|
32
33
|
}]
|
data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot
CHANGED
@@ -2756,7 +2756,7 @@ msgstr ""
|
|
2756
2756
|
|
2757
2757
|
#: app/assets/javascripts/bastion_katello/common/views/katello-agent-notice.html
|
2758
2758
|
#: app/assets/javascripts/bastion_katello/content-hosts/views/register-client.html
|
2759
|
-
msgid "Katello-agent is deprecated and will be removed in
|
2759
|
+
msgid "Katello-agent is deprecated and will be removed in a future release."
|
2760
2760
|
msgstr ""
|
2761
2761
|
|
2762
2762
|
#: app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html
|
@@ -209,7 +209,7 @@
|
|
209
209
|
<dt translate>Publish via HTTPS</dt>
|
210
210
|
<dd translate>Yes</dd>
|
211
211
|
|
212
|
-
<span ng-hide="repository.content_type === 'ostree'">
|
212
|
+
<span ng-hide="repository.content_type === 'ostree' || repository.content_type === 'docker'">
|
213
213
|
<dt translate>Publish via HTTP</dt>
|
214
214
|
<dd bst-edit-checkbox="repository.unprotected"
|
215
215
|
formatter="booleanToYesNo"
|
@@ -63,7 +63,7 @@
|
|
63
63
|
ng-model="repository.url"
|
64
64
|
type="text"/>
|
65
65
|
<p class="help-block" ng-show="repository.content_type === 'docker'" translate>
|
66
|
-
URL of the registry you want to sync. Example: https://registry-1.docker.io/
|
66
|
+
URL of the registry you want to sync. Example: https://registry-1.docker.io/ or https://quay.io/
|
67
67
|
</p>
|
68
68
|
<p class="help-block" ng-show="repository.content_type === 'ansible_collection'" translate>
|
69
69
|
Content synced depends on the specifity of the URL and/or the optional requirements.yaml specified below <a class="fa fa-question-circle" ng-show="repository.content_type === 'ansible_collection'"
|
@@ -144,7 +144,7 @@
|
|
144
144
|
ng-model="repository.docker_upstream_name"
|
145
145
|
type="text"/>
|
146
146
|
<p class="help-block" translate>
|
147
|
-
Name of the upstream repository you want to sync. Example: 'busybox' or 'fedora/ssh'.
|
147
|
+
Name of the upstream repository you want to sync. Example: 'quay/busybox' or 'fedora/ssh'.
|
148
148
|
</p>
|
149
149
|
|
150
150
|
</div>
|