Version: v0.3.9 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Oct 2, 2013 License: MPL-2.0 Imports: 6 Imported by: 0



This package implements a provisioner for Packer that executes Puppet on the remote machine, configured to apply a local manifest versus connecting to a Puppet master.



This section is empty.


This section is empty.


This section is empty.


type Config

type Config struct {
	common.PackerConfig `mapstructure:",squash"`

	// The command used to execute Puppet.
	ExecuteCommand string `mapstructure:"execute_command"`

	// Additional facts to set when executing Puppet
	Facter map[string]string

	// Path to a hiera configuration file to upload and use.
	HieraConfigPath string `mapstructure:"hiera_config_path"`

	// An array of local paths of modules to upload.
	ModulePaths []string `mapstructure:"module_paths"`

	// The main manifest file to apply to kick off the entire thing.
	ManifestFile string `mapstructure:"manifest_file"`

	// If true, `sudo` will NOT be used to execute Puppet.
	PreventSudo bool `mapstructure:"prevent_sudo"`

	// The directory where files will be uploaded. Packer requires write
	// permissions in this directory.
	StagingDir string `mapstructure:"staging_directory"`
	// contains filtered or unexported fields

type ExecuteTemplate

type ExecuteTemplate struct {
	FacterVars         string
	HasHieraConfigPath bool
	HieraConfigPath    string
	ModulePath         string
	ManifestFile       string
	Sudo               bool

type Provisioner

type Provisioner struct {
	// contains filtered or unexported fields

func (*Provisioner) Cancel

func (p *Provisioner) Cancel()

func (*Provisioner) Prepare

func (p *Provisioner) Prepare(raws ...interface{}) error

func (*Provisioner) Provision

func (p *Provisioner) Provision(ui packer.Ui, comm packer.Communicator) error

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL