My environment is: $ packer -version 1.7.2
While Packer build execution , I get this error. Same works good with Ansible/Shell.
-----------
==> amazon-ebs: Provisioning with Puppet...
amazon-ebs: Creating Puppet staging directory...
amazon-ebs: Creating directory: /tmp/packer-puppet-masterless
amazon-ebs: Uploading manifests...
amazon-ebs: Creating directory: /tmp/packer-puppet-masterless/manifests
amazon-ebs: Uploading manifest file from: file.pp
amazon-ebs: Running Puppet: cd /tmp/packer-puppet-masterless && FACTER_packer_build_name='amazon-ebs' FACTER_packer_builder_type='amazon-ebs' sudo -E puppet apply --detailed-exitcodes /tmp/packer-puppet-masterless/manifests/file.pp
==> amazon-ebs: sudo: puppet: command not found
==> amazon-ebs: Prvisioning step had errors: Running the cleanup provisioner, if present...
==============
Packer Template :
{
"builders": [
{
"ami_name": "packer-linux-aws-demo-{{timestamp}}",
"instance_type": "t3.micro",
"region": "us-west-2",
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
"root-device-type": "ebs"
},
"most_recent": true
},
"ssh_username": "ubuntu",
"type": "amazon-ebs"
}
],
"provisioners": [
{
"type": "puppet-masterless",
"manifest_file": "file.pp"
}
]
}
=========
file.pp
$ cat file.pp
file { "/var/tmp/testfile":
ensure => "present",
owner => "root",
group => "root",
mode => "664",
content => "This is a test file created using puppet.
Puppet is really cool",
}