Sha256: 95bff877f0407934d2f50b1982e0748b7f6986baae758a64d21261fae115b47f

Contents?: true

Size: 594 Bytes

Versions: 5

Compression:

Stored size: 594 Bytes

Contents

module ProxyAPI
  class Puppet < Resource
    def initialize args
      @url  = args[:url] + "/puppet"
      super args
    end

    def environments
      parse(get "environments")
    end

    def environment env
      parse(get "environments/#{env}")
    end

    def classes env
      return if env.blank?
      pcs = parse(get "environments/#{env}/classes")
      Hash[pcs.map { |k| [k.keys.first, Foreman::ImporterPuppetclass.new(k.values.first)] }]
    rescue RestClient::ResourceNotFound
      []
    end

    def run hosts
      parse(post({:nodes => hosts}, "run"))
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
foreman_discovery-1.0.0 test/foreman_app/lib/proxy_api/puppet.rb
foreman_discovery-1.0.0.rc4 test/foreman_app/lib/proxy_api/puppet.rb
foreman_discovery-1.0.0.rc3 test/foreman_app/lib/proxy_api/puppet.rb
foreman_discovery-1.0.0.rc2 test/foreman_app/lib/proxy_api/puppet.rb
foreman_discovery-1.0.0.rc1 test/foreman_app/lib/proxy_api/puppet.rb