katello 3.4.4 → 3.4.5
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 -1
- data/app/controllers/katello/api/v2/host_collections_controller.rb +1 -1
- data/app/controllers/katello/concerns/api/v2/content_overrides_controller.rb +1 -1
- data/app/helpers/katello/concerns/dashboard_helper_extensions.rb +30 -0
- data/app/lib/actions/candlepin/owner/import_products.rb +3 -1
- data/app/lib/actions/katello/capsule_content/sync.rb +2 -1
- data/app/lib/actions/katello/host/hypervisors_update.rb +3 -1
- data/app/lib/actions/katello/host/register.rb +15 -8
- data/app/lib/actions/katello/organization/create.rb +2 -2
- data/app/lib/actions/katello/organization/manifest_refresh.rb +2 -1
- data/app/models/katello/glue/candlepin/pool.rb +6 -1
- data/app/models/katello/rhsm_fact_parser.rb +2 -1
- data/app/views/dashboard/_subscription_widget.html.erb +34 -12
- data/db/migrate/20161014133811_move_content_view_version_description_to_histories.rb +11 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-associations.controller.js +6 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections-table.html +1 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/views/select-action-dropdown.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-subscriptions-modal.controller.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filters.html +1 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-environments.html +1 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-content-hosts.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-repositories.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-content-views.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-repositories.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/views/gpg-keys.html +1 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-hosts.controller.js +5 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-hosts.controller.js +6 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-add-hosts.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-hosts-list.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/views/host-collections.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/ostree-branch-repositories.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/views/package-repositories.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +8 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories.html +1 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-create.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html +1 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-module-content-views.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-module-repositories.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscriptions.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products.html +1 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/views/sync-plans.html +1 -3
- data/lib/katello/engine.rb +4 -0
- data/lib/katello/permission_creator.rb +361 -0
- data/lib/katello/permissions/user_permissions.rb +0 -8
- data/lib/katello/plugin.rb +6 -1
- data/lib/katello/tasks/upgrades/3.4/remove_unused_products.rake +28 -0
- data/lib/katello/version.rb +1 -1
- metadata +5 -11
- data/lib/katello/permissions/activation_key_permissions.rb +0 -28
- data/lib/katello/permissions/capsule_content_permissions.rb +0 -17
- data/lib/katello/permissions/content_view_permissions.rb +0 -82
- data/lib/katello/permissions/gpg_key_permissions.rb +0 -24
- data/lib/katello/permissions/host_collections_permissions.rb +0 -24
- data/lib/katello/permissions/lifecycle_environment_permissions.rb +0 -29
- data/lib/katello/permissions/product_permissions.rb +0 -80
- data/lib/katello/permissions/subscription_permissions.rb +0 -33
- data/lib/katello/permissions/sync_plan_permissions.rb +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6decdc9453fd01ddb91c38c97e6404c2f34cc783
|
4
|
+
data.tar.gz: 73716c2989e80487d5adbe8cf9cf638296ab924f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7b47b7ced813970a5a2b46d993c076f10e4ea82be0952b9f39be28f1146f3b1b3f7c3088ee611451374a3f3f2f84b8267a42c2d01596111c89e715afdb569187
|
7
|
+
data.tar.gz: 01775bd60e7f80c929ad14c2328482d9ecd38f30224b0411c9b3f425a7d9b81ea41529105a9a644da68d212d3d7b3fe807c29bbf788f6b1ffa9e414ebd5505c3
|
@@ -88,7 +88,7 @@ module Katello
|
|
88
88
|
|
89
89
|
scoped_search_results(query, sub_total, total, page, per_page)
|
90
90
|
rescue ScopedSearch::QueryNotSupported => error
|
91
|
-
return scoped_search_results(
|
91
|
+
return scoped_search_results([], sub_total, total, page, per_page, error.message)
|
92
92
|
end
|
93
93
|
|
94
94
|
protected
|
@@ -34,7 +34,7 @@ module Katello
|
|
34
34
|
param :available_for, String, :required => false,
|
35
35
|
:desc => N_("Interpret specified object to return only Host Collections that can be associated with specified object. The value 'host' is supported.")
|
36
36
|
def index
|
37
|
-
respond(:collection => scoped_search(index_relation.uniq
|
37
|
+
respond(:collection => scoped_search(index_relation.uniq!, :name, :asc))
|
38
38
|
end
|
39
39
|
|
40
40
|
def index_relation
|
@@ -7,7 +7,7 @@ module Katello
|
|
7
7
|
def validate_content_overrides_enabled(content_params, overriden_object = nil)
|
8
8
|
name = content_params[:name] || "enabled"
|
9
9
|
compare_value = content_params[:value].to_s.downcase
|
10
|
-
remove = content_params.key?(:remove) ? Foreman::Cast.to_bool(content_params[:remove]) : nil
|
10
|
+
remove = content_params.key?(:remove) ? ::Foreman::Cast.to_bool(content_params[:remove]) : nil
|
11
11
|
content_label = content_params[:content_label]
|
12
12
|
|
13
13
|
if !remove && name == "enabled" &&
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Katello
|
2
|
+
module Concerns
|
3
|
+
module DashboardHelperExtensions
|
4
|
+
def total_host_count
|
5
|
+
total_host_count = ::Host::Managed.authorized('view_hosts', ::Host::Managed).where(:organization => Organization.current).size
|
6
|
+
return total_host_count || 0
|
7
|
+
end
|
8
|
+
|
9
|
+
def partial_consumer_count
|
10
|
+
partial_consumer_count = ::Host::Managed.authorized('view_hosts', ::Host::Managed).where(:organization => Organization.current).search_for("subscription_status = partial").size
|
11
|
+
return partial_consumer_count || 0
|
12
|
+
end
|
13
|
+
|
14
|
+
def valid_consumer_count
|
15
|
+
valid_consumer_count = ::Host::Managed.authorized('view_hosts', ::Host::Managed).where(:organization => Organization.current).search_for("subscription_status = valid").size
|
16
|
+
return valid_consumer_count || 0
|
17
|
+
end
|
18
|
+
|
19
|
+
def invalid_consumer_count
|
20
|
+
invalid_consumer_count = ::Host::Managed.authorized('view_hosts', ::Host::Managed).where(:organization => Organization.current).search_for("subscription_status = invalid").size
|
21
|
+
return invalid_consumer_count || 0
|
22
|
+
end
|
23
|
+
|
24
|
+
def unknown_consumer_count
|
25
|
+
unknown_consumer_count = ::Host::Managed.authorized('view_hosts', ::Host::Managed).where(:organization => Organization.current).search_for("subscription_status = unknown").size
|
26
|
+
return unknown_consumer_count || 0
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -51,7 +51,8 @@ module Actions
|
|
51
51
|
concurrence do
|
52
52
|
repository_ids.each do |repo_id|
|
53
53
|
sequence do
|
54
|
-
repo = ::Katello::Repository.find_by(pulp_id: repo_id)
|
54
|
+
repo = ::Katello::Repository.find_by(pulp_id: repo_id) ||
|
55
|
+
::Katello::ContentViewPuppetEnvironment.find_by(pulp_id: repo_id)
|
55
56
|
if repo && ['yum', 'puppet'].exclude?(repo.content_type)
|
56
57
|
# we unassociate units in non-yum/puppet repos in order to avoid version conflicts
|
57
58
|
# during publish. (i.e. two versions of a unit in the same repo)
|
@@ -16,7 +16,9 @@ module Actions
|
|
16
16
|
hypervisors = input[:hypervisors]
|
17
17
|
|
18
18
|
if hypervisors
|
19
|
-
|
19
|
+
User.as_anonymous_admin do
|
20
|
+
hypervisors.each { |hypervisor| update_or_create_hypervisor(hypervisor) }
|
21
|
+
end
|
20
22
|
end
|
21
23
|
end
|
22
24
|
|
@@ -16,7 +16,6 @@ module Actions
|
|
16
16
|
content_view_environment ||= lookup_content_view_environment(activation_keys)
|
17
17
|
set_host_collections(host, activation_keys)
|
18
18
|
end
|
19
|
-
|
20
19
|
fail _('Content View and Environment not set for registration.') if content_view_environment.nil?
|
21
20
|
|
22
21
|
host.save!
|
@@ -33,6 +32,13 @@ module Actions
|
|
33
32
|
plan_self(uuid: cp_create.output[:response][:uuid], host_id: host.id, hostname: host.name,
|
34
33
|
user_id: User.current.id, :facts => consumer_params[:facts])
|
35
34
|
plan_action(Pulp::Consumer::Create, uuid: cp_create.output[:response][:uuid], name: host.name)
|
35
|
+
|
36
|
+
begin
|
37
|
+
set_content_and_subscription_uuids(host, cp_create.input[:response][:uuid])
|
38
|
+
rescue => e
|
39
|
+
::Katello::Resources::Candlepin::Consumer.destroy(cp_create.input[:response][:uuid])
|
40
|
+
raise e
|
41
|
+
end
|
36
42
|
end
|
37
43
|
end
|
38
44
|
|
@@ -57,13 +63,6 @@ module Actions
|
|
57
63
|
def finalize
|
58
64
|
User.as_anonymous_admin do
|
59
65
|
host = ::Host.find(input[:host_id])
|
60
|
-
host.content_facet.uuid = input[:uuid]
|
61
|
-
host.subscription_facet.uuid = input[:uuid]
|
62
|
-
|
63
|
-
user = ::User.find(input[:user_id])
|
64
|
-
host.subscription_facet.user = user unless user.nil? || user.hidden?
|
65
|
-
|
66
|
-
host.content_facet.save!
|
67
66
|
host.subscription_facet.update_from_consumer_attributes(host.subscription_facet.candlepin_consumer.
|
68
67
|
consumer_attributes.except(:installedProducts, :guestIds, :facts))
|
69
68
|
host.subscription_facet.save!
|
@@ -119,6 +118,14 @@ module Actions
|
|
119
118
|
subscription_facet.activation_keys = activation_keys
|
120
119
|
subscription_facet
|
121
120
|
end
|
121
|
+
|
122
|
+
def set_content_and_subscription_uuids(host, uuid)
|
123
|
+
host.content_facet.uuid = uuid
|
124
|
+
host.subscription_facet.uuid = uuid
|
125
|
+
host.subscription_facet.user = User.current unless User.current.nil? || User.current.hidden?
|
126
|
+
host.content_facet.save!
|
127
|
+
host.subscription_facet.save!
|
128
|
+
end
|
122
129
|
end
|
123
130
|
end
|
124
131
|
end
|
@@ -5,8 +5,8 @@ module Actions
|
|
5
5
|
def plan(organization)
|
6
6
|
organization.setup_label_from_name
|
7
7
|
organization.create_library
|
8
|
-
organization.create_anonymous_provider
|
9
|
-
organization.create_redhat_provider
|
8
|
+
organization.create_anonymous_provider unless organization.anonymous_provider
|
9
|
+
organization.create_redhat_provider unless organization.redhat_provider
|
10
10
|
cp_create = nil
|
11
11
|
|
12
12
|
organization.save!
|
@@ -31,7 +31,8 @@ module Actions
|
|
31
31
|
import_products = plan_action(Candlepin::Owner::ImportProducts, :organization_id => organization.id, :dependency => owner_import.output)
|
32
32
|
|
33
33
|
if manifest_update && SETTINGS[:katello][:use_pulp]
|
34
|
-
|
34
|
+
repositories = ::Katello::Repository.in_default_view.where(:product_id => ::Katello::Product.redhat.in_org(organization))
|
35
|
+
repositories.each do |repo|
|
35
36
|
plan_action(Katello::Repository::RefreshRepository, repo, :dependency => import_products.output)
|
36
37
|
end
|
37
38
|
end
|
@@ -93,6 +93,7 @@ module Katello
|
|
93
93
|
subscription
|
94
94
|
end
|
95
95
|
|
96
|
+
# rubocop:disable MethodLength
|
96
97
|
def import_data
|
97
98
|
pool_attributes = {}.with_indifferent_access
|
98
99
|
pool_json = self.backend_data
|
@@ -126,7 +127,11 @@ module Katello
|
|
126
127
|
pool_attributes[:unmapped_guest] = true
|
127
128
|
end
|
128
129
|
|
129
|
-
|
130
|
+
if subscription.try(:redhat?)
|
131
|
+
pool_attributes[:virt_who] = pool_attributes['virt_limit'] != "0" && pool_attributes['virt_limit'].present?
|
132
|
+
else
|
133
|
+
pool_attributes[:virt_who] = false
|
134
|
+
end
|
130
135
|
|
131
136
|
exceptions = pool_attributes.keys.map(&:to_sym) - self.attribute_names.map(&:to_sym)
|
132
137
|
self.update_attributes(pool_attributes.except!(*exceptions))
|
@@ -1,8 +1,9 @@
|
|
1
1
|
module Katello
|
2
2
|
class RhsmFactParser < ::FactParser
|
3
3
|
def architecture
|
4
|
-
name = facts['lscpu.architecture']
|
4
|
+
name = facts['lscpu.architecture'] || facts['uname.machine']
|
5
5
|
name = "x86_64" if name == "amd64"
|
6
|
+
name = "i386" if name == "i686"
|
6
7
|
Architecture.where(:name => name).first_or_create unless name.blank?
|
7
8
|
end
|
8
9
|
|
@@ -5,12 +5,14 @@
|
|
5
5
|
<% unless Organization.current.present? %>
|
6
6
|
<p class="ca"><%= _("Please select an organization to view subscription status.") %></p>
|
7
7
|
<% else %>
|
8
|
-
<%
|
9
|
-
<%
|
10
|
-
<%
|
11
|
-
<%
|
12
|
-
<%
|
13
|
-
<%
|
8
|
+
<% total_count = total_host_count() %>
|
9
|
+
<% partial_consumer_count = partial_consumer_count() %>
|
10
|
+
<% valid_consumer_count = valid_consumer_count()%>
|
11
|
+
<% invalid_consumer_count = invalid_consumer_count()%>
|
12
|
+
<% unknown_consumer_count = unknown_consumer_count() %>
|
13
|
+
<% unregistered_consumer_count = total_count-partial_consumer_count-valid_consumer_count-invalid_consumer_count%>
|
14
|
+
<% subscription_status_url = '/content_hosts?search='%>
|
15
|
+
<% registered_subscription_url = subscription_status_url + ERB::Util.url_encode('subscription_status = ') %>
|
14
16
|
|
15
17
|
<table class="table table-fixed table-striped table-bordered">
|
16
18
|
<thead>
|
@@ -22,32 +24,52 @@
|
|
22
24
|
<tbody>
|
23
25
|
<tr>
|
24
26
|
<td>
|
25
|
-
<%= link_to("#{
|
27
|
+
<%= link_to("#{registered_subscription_url}" + 'invalid') do %>
|
26
28
|
<i class="label label-danger" style="margin-right: 6px"> </i><%= _("Invalid") %>
|
27
29
|
<% end %>
|
28
30
|
</td>
|
29
31
|
<td style="text-align:right">
|
30
|
-
<%= link_to( "#{invalid_consumer_count}", "#{
|
32
|
+
<%= link_to( "#{invalid_consumer_count}", "#{registered_subscription_url}" + 'invalid')%>
|
31
33
|
</td>
|
32
34
|
</tr>
|
33
35
|
<tr>
|
34
36
|
<td>
|
35
|
-
<%= link_to("#{
|
37
|
+
<%= link_to("#{registered_subscription_url}" + 'partial') do %>
|
36
38
|
<i class="label label-warning" style="margin-right: 6px"> </i><%= _("Partial") %>
|
37
39
|
<% end %>
|
38
40
|
</td>
|
39
41
|
<td style="text-align:right">
|
40
|
-
<%= link_to( "#{partial_consumer_count}", "#{
|
42
|
+
<%= link_to( "#{partial_consumer_count}", "#{registered_subscription_url}" + 'partial')%>
|
41
43
|
</td>
|
42
44
|
</tr>
|
43
45
|
<tr>
|
44
46
|
<td>
|
45
|
-
<%= link_to("#{
|
47
|
+
<%= link_to("#{registered_subscription_url}" + 'valid') do %>
|
46
48
|
<i class="label label-success" style="margin-right: 6px"> </i><%= _("Valid") %>
|
47
49
|
<% end %>
|
48
50
|
</td>
|
49
51
|
<td style="text-align:right">
|
50
|
-
<%= link_to( "#{valid_consumer_count}", "#{
|
52
|
+
<%= link_to( "#{valid_consumer_count}", "#{registered_subscription_url}" + 'valid')%>
|
53
|
+
</td>
|
54
|
+
</tr>
|
55
|
+
<tr>
|
56
|
+
<td>
|
57
|
+
<%= link_to("#{registered_subscription_url}" + 'unknown') do %>
|
58
|
+
<i class="label label-warning" style="margin-right: 6px"> </i><%= _("Unknown") %>
|
59
|
+
<% end %>
|
60
|
+
</td>
|
61
|
+
<td style="text-align:right">
|
62
|
+
<%= link_to( "#{unknown_consumer_count}", "#{registered_subscription_url}" + 'unknown')%>
|
63
|
+
</td>
|
64
|
+
</tr>
|
65
|
+
<tr>
|
66
|
+
<td>
|
67
|
+
<%= link_to("#{subscription_status_url}" + 'null? subscription_uuid') do %>
|
68
|
+
<i class="label label-danger" style="margin-right: 6px"> </i><%= _("Unregistered") %>
|
69
|
+
<% end %>
|
70
|
+
</td>
|
71
|
+
<td style="text-align:right">
|
72
|
+
<%= link_to( "#{unregistered_consumer_count}", "#{subscription_status_url}" + 'null? subscription_uuid')%>
|
51
73
|
</td>
|
52
74
|
</tr>
|
53
75
|
<tr>
|
@@ -1,12 +1,13 @@
|
|
1
1
|
class MoveContentViewVersionDescriptionToHistories < ActiveRecord::Migration
|
2
|
-
class
|
3
|
-
|
2
|
+
class FakeContentViewVersion < ActiveRecord::Base
|
3
|
+
self.table_name = 'katello_content_view_versions'
|
4
|
+
has_many :history, :class_name => "CVHistory", :inverse_of => :content_view_version,
|
4
5
|
:dependent => :destroy, :foreign_key => :katello_content_view_version_id
|
5
6
|
end
|
6
7
|
|
7
|
-
class
|
8
|
+
class CVHistory < ActiveRecord::Base
|
8
9
|
self.table_name = 'katello_content_view_histories'
|
9
|
-
belongs_to :content_view_version, :class_name => "
|
10
|
+
belongs_to :content_view_version, :class_name => "FakeContentViewVersion", :foreign_key => :katello_content_view_version_id, :inverse_of => :history
|
10
11
|
SUCCESSFUL = 'successful'.freeze
|
11
12
|
scope :successful, -> { where(:status => SUCCESSFUL) }
|
12
13
|
|
@@ -19,14 +20,14 @@ class MoveContentViewVersionDescriptionToHistories < ActiveRecord::Migration
|
|
19
20
|
end
|
20
21
|
|
21
22
|
def up
|
22
|
-
|
23
|
+
FakeContentViewVersion.find_each do |version|
|
23
24
|
publish_history = version.history.publish.successful.first
|
24
25
|
unless publish_history
|
25
|
-
publish_history =
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
26
|
+
publish_history = CVHistory.create!(action: CVHistory.actions[:publish],
|
27
|
+
katello_content_view_version_id: version.id,
|
28
|
+
status: 'successful',
|
29
|
+
user: ''
|
30
|
+
)
|
30
31
|
end
|
31
32
|
|
32
33
|
publish_history.update_attributes!(notes: version[:description])
|
@@ -16,7 +16,7 @@
|
|
16
16
|
angular.module('Bastion.activation-keys').controller('ActivationKeyAssociationsController',
|
17
17
|
['$scope', '$location', 'translate', 'Nutupane', 'ActivationKey', 'ContentHostsHelper', 'CurrentOrganization', 'Host',
|
18
18
|
function ($scope, $location, translate, Nutupane, ActivationKey, ContentHostsHelper, CurrentOrganization, Host) {
|
19
|
-
var contentHostsNutupane, params = {
|
19
|
+
var contentHostsNutupane, nutupaneParams, params = {
|
20
20
|
'organization_id': CurrentOrganization,
|
21
21
|
'search': $location.search().search || "",
|
22
22
|
'page': 1,
|
@@ -25,7 +25,11 @@ angular.module('Bastion.activation-keys').controller('ActivationKeyAssociationsC
|
|
25
25
|
'paged': true
|
26
26
|
};
|
27
27
|
|
28
|
-
|
28
|
+
nutupaneParams = {
|
29
|
+
'disableAutoLoad': true
|
30
|
+
};
|
31
|
+
|
32
|
+
contentHostsNutupane = new Nutupane(Host, params, undefined, nutupaneParams);
|
29
33
|
$scope.controllerName = 'hosts';
|
30
34
|
contentHostsNutupane.searchTransform = function (term) {
|
31
35
|
var searchQuery, addition = "activation_key_id=" + $scope.$stateParams.activationKeyId;
|
@@ -29,8 +29,7 @@
|
|
29
29
|
</div>
|
30
30
|
|
31
31
|
<div data-block="table">
|
32
|
-
<table ng-
|
33
|
-
ng-class="{'table-mask': table.working}" class="table table-bordered table-striped">
|
32
|
+
<table ng-class="{'table-mask': table.working}" class="table table-bordered table-striped">
|
34
33
|
<thead>
|
35
34
|
<tr bst-table-head row-select="hostCollection">
|
36
35
|
<th bst-table-column="name" translate>Name</th>
|
@@ -3,8 +3,8 @@
|
|
3
3
|
<span translate>Select Action</span>
|
4
4
|
</button>
|
5
5
|
|
6
|
-
<button type="button" class="btn btn-default"
|
6
|
+
<button type="button" class="btn btn-default" ng-click="toggleDropdown($event)">
|
7
7
|
<span class="caret"></span>
|
8
8
|
<span class="sr-only" translate>Toggle Dropdown</span>
|
9
9
|
</button>
|
10
|
-
</div>
|
10
|
+
</div>
|
@@ -21,7 +21,6 @@ angular.module('Bastion.content-hosts').controller('ContentHostsBulkSubscription
|
|
21
21
|
function ($scope, $location, $uibModalInstance, Nutupane, CurrentOrganization, HostBulkAction, Subscription, SubscriptionsHelper, GlobalNotification, hostIds) {
|
22
22
|
var success, error, params = {
|
23
23
|
'organization_id': CurrentOrganization,
|
24
|
-
'search': $location.search().search || "",
|
25
24
|
'sort_order': 'ASC',
|
26
25
|
'available_for': 'host',
|
27
26
|
'host_id': $scope.$stateParams.hostId
|
@@ -61,9 +61,7 @@
|
|
61
61
|
</span>
|
62
62
|
|
63
63
|
<div data-block="table">
|
64
|
-
<table class="table table-striped table-bordered"
|
65
|
-
ng-class="{'table-mask': table.working}"
|
66
|
-
ng-show="table.rows.length > 0">
|
64
|
+
<table class="table table-striped table-bordered" ng-class="{'table-mask': table.working}">
|
67
65
|
<thead>
|
68
66
|
<tr bst-table-head row-select>
|
69
67
|
<th bst-table-column="type" translate>Type</th>
|
@@ -53,9 +53,7 @@
|
|
53
53
|
</span>
|
54
54
|
|
55
55
|
<div data-block="table">
|
56
|
-
<table class="table table-striped table-bordered"
|
57
|
-
ng-class="{'table-mask': table.working}"
|
58
|
-
ng-show="table.rows.length > 0">
|
56
|
+
<table class="table table-striped table-bordered" ng-class="{'table-mask': table.working}">
|
59
57
|
<thead>
|
60
58
|
<tr bst-table-head row-select>
|
61
59
|
<th bst-table-column="name" sortable><span translate>Name</span></th>
|
@@ -29,8 +29,7 @@
|
|
29
29
|
</span>
|
30
30
|
|
31
31
|
<div data-block="table">
|
32
|
-
<table class="table table-striped table-bordered" ng-
|
33
|
-
ng-class="{'table-mask': table.working}">
|
32
|
+
<table class="table table-striped table-bordered" ng-class="{'table-mask': table.working}">
|
34
33
|
|
35
34
|
<thead>
|
36
35
|
<tr bst-table-head row-select>
|
@@ -16,10 +16,7 @@
|
|
16
16
|
</span>
|
17
17
|
|
18
18
|
<div data-block="table">
|
19
|
-
<table bst-table="table"
|
20
|
-
class="table table-striped table-bordered"
|
21
|
-
ng-class="{'table-mask': table.working}"
|
22
|
-
ng-show="table.rows.length > 0">
|
19
|
+
<table bst-table="table" class="table table-striped table-bordered" ng-class="{'table-mask': table.working}">
|
23
20
|
<thead>
|
24
21
|
<tr bst-table-head>
|
25
22
|
<th bst-table-column="environment" translate>Environment</th>
|
@@ -46,9 +46,7 @@
|
|
46
46
|
<span translate>The Content View or Lifecycle Environment needs to be updated in order to make errata available to these hosts.</span>
|
47
47
|
</p>
|
48
48
|
|
49
|
-
<table class="table table-striped table-bordered"
|
50
|
-
ng-class="{'table-mask': table.working}"
|
51
|
-
ng-show="table.rows.length > 0">
|
49
|
+
<table class="table table-striped table-bordered" ng-class="{'table-mask': table.working}">
|
52
50
|
<thead>
|
53
51
|
<tr bst-table-head row-select>
|
54
52
|
<th bst-table-column="name"><span translate>Name</span></th>
|