Sha256: a38bac9736417a4157ed0103a48080923512d9b8427a46607387ddcd08d10614

Contents?: true

Size: 1.35 KB

Versions: 3

Compression:

Stored size: 1.35 KB

Contents

module ForemanSalt
  module HostsHelperExtensions
    extend ActiveSupport::Concern

    module Overrides
      def show_appropriate_host_buttons(host)
        (super(host) +
         [(link_to_if_authorized(_('Salt ENC'), { :controller => :'foreman_salt/minions', :action => :node, :id => host },
                                 :title => _('Salt external nodes YAML dump'), :class => 'btn btn-default') unless host.salt_master.blank?)]).flatten.compact
      end

      def host_title_actions(host)
        title_actions(
          button_group(
            if host.try(:salt_proxy)
              link_to_if_authorized(_('Run Salt'), { :controller => :'foreman_salt/minions', :action => :run, :id => host },
                                    :title => _('Trigger a state.highstate run on a node'), :class => 'btn btn-primary')
          end
          )
        )
        super(host)
      end

      def overview_fields(host)
        fields = super(host)

        fields.insert(5, [_('Salt Master'), (link_to(host.salt_proxy, hosts_path(:search => "saltmaster = #{host.salt_proxy}")) if host.salt_proxy)])
        fields.insert(6, [_('Salt Environment'), (link_to(host.salt_environment, hosts_path(:search => "salt_environment = #{host.salt_environment}")) if host.salt_environment)])

        fields
      end
    end

    included do
      prepend Overrides
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
foreman_salt-10.2.0 app/helpers/concerns/foreman_salt/hosts_helper_extensions.rb
foreman_salt-10.1.0 app/helpers/concerns/foreman_salt/hosts_helper_extensions.rb
foreman_salt-10.0.0 app/helpers/concerns/foreman_salt/hosts_helper_extensions.rb