Sha256: eeec7dd8c0b80c0acce9b3d1951ae9305e848ff79846e3b99cae09007c91f61d
Contents?: true
Size: 1.53 KB
Versions: 3
Compression:
Stored size: 1.53 KB
Contents
module Vagrant module Provisioners class PuppetServerError < Vagrant::Errors::VagrantError error_namespace("vagrant.provisioners.puppet_server") end class PuppetServer < Base register :puppet_server class Config < Vagrant::Config::Base attr_accessor :puppet_server attr_accessor :puppet_node attr_accessor :options def initialize @puppet_server = "puppet" @puppet_node = "puppet_node" @options = [] end end def provision! verify_binary("puppetd") run_puppetd_client end def verify_binary(binary) vm.ssh.execute do |ssh| ssh.shell do |sh| sh.execute("sudo -i which #{binary}", :error_class => PuppetServerError, :_key => :puppetd_not_detected, :binary => binary) end end end def run_puppetd_client options = config.options options = options.join(" ") if options.is_a?(Array) if config.puppet_node cn = config.puppet_node else cn = env.config.vm.box end command = "sudo -i puppetd #{options} --server #{config.puppet_server} --certname #{cn}" env.ui.info I18n.t("vagrant.provisioners.puppet_server.running_puppetd") vm.ssh.execute do |ssh| ssh.exec!(command) do |channel, type, data| ssh.check_exit_status(data, command) if type == :exit_status env.ui.info(data) if type != :exit_status end end end end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
vagrantup-0.7.0 | lib/vagrant/provisioners/puppet_server.rb |
vagrant-0.7.0 | lib/vagrant/provisioners/puppet_server.rb |
vagrant-0.7.0.beta2 | lib/vagrant/provisioners/puppet_server.rb |