Sha256: f60e7b0e827348cbd73ccfa4cd2d760ed5c172b224515a290d553b75289bb5a5

Contents?: true

Size: 499 Bytes

Versions: 2

Compression:

Stored size: 499 Bytes

Contents

module KnifeDraw
  class ChefServerSource
    def nodes(environment = nil)
      if environment
        Chef::Node.list_by_environment environment, true
      else
        Chef::Node.list true
      end
    end

    def roles
      Chef::Role.list true
    end

    def roles_for_node(node)
      node.roles
    end

    def runlist_for_role(role_name)
      role_details[role_name].run_list
    end

    private

    def role_details
      @role_details ||= Chef::Role.list(true)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
knife-draw-1.0.0 lib/knife_draw/chef_server_source.rb
knife-draw-0.9.0 lib/knife_draw/chef_server_source.rb