diff --git a/provisioner/puppet-masterless/provisioner_test.go b/provisioner/puppet-masterless/provisioner_test.go index f7759fb98..46fcbc11f 100644 --- a/provisioner/puppet-masterless/provisioner_test.go +++ b/provisioner/puppet-masterless/provisioner_test.go @@ -203,6 +203,14 @@ func TestProvisionerPrepare_facterFacts(t *testing.T) { if p.config.Facter == nil { t.Fatalf("err: Default facts are not set in the Puppet provisioner!") } + + if _, ok := p.config.Facter["packer_build_name"]; !ok { + t.Fatalf("err: packer_build_name fact not set in the Puppet provisioner!") + } + + if _, ok := p.config.Facter["packer_builder_type"]; !ok { + t.Fatalf("err: packer_builder_type fact not set in the Puppet provisioner!") + } } func TestProvisionerPrepare_extraArguments(t *testing.T) { diff --git a/provisioner/puppet-server/provisioner_test.go b/provisioner/puppet-server/provisioner_test.go index d83f0df7a..2a4190d7e 100644 --- a/provisioner/puppet-server/provisioner_test.go +++ b/provisioner/puppet-server/provisioner_test.go @@ -26,6 +26,31 @@ func TestProvisioner_Impl(t *testing.T) { } } +func TestProvisionerPrepare_puppetBinDir(t *testing.T) { + config := testConfig() + + delete(config, "puppet_bin_dir") + p := new(Provisioner) + err := p.Prepare(config) + if err != nil { + t.Fatalf("err: %s", err) + } + + // Test with a good one + tf, err := ioutil.TempFile("", "packer") + if err != nil { + t.Fatalf("error tempfile: %s", err) + } + defer os.Remove(tf.Name()) + + config["puppet_bin_dir"] = tf.Name() + p = new(Provisioner) + err = p.Prepare(config) + if err != nil { + t.Fatalf("err: %s", err) + } +} + func TestProvisionerPrepare_clientPrivateKeyPath(t *testing.T) { config := testConfig()