Chef-solo provisioner with Packer wierdness


#1

Hello,

I’ve successfully run the apt cookbook with a wrapper cookbook using Test Kitchen(chef_zero provisioner)

---
driver:
  name: vagrant

provisioner:
  name: chef_zero

platforms:
  - name: ubuntu-14.04

suites:
  - name: default
    run_list:
      - recipe[myfonts-base::default]
    attributes:

/Users/ellisonm/chef-repo/cookbooks/myfonts-php = wrapper cookbook
/Users/ellisonm/.berkshelf/cookbooks/apt-2.9.2 = apt cookbook

When I try to run the same in Packer, I get the following error

2015/12/08 13:26:59 ui: amazon-ebs: File files/default/15update-stamp does not exist for cookbook apt

  • amazon-ebs: File files/default/15update-stamp does not exist for cookbook apt*

Here is my packer setup

{
  "builders": [
    {
      "access_key": "{{user `aws_access_key`}}",
      "ami_name": "packer-php {{timestamp}}",
      "associate_public_ip_address": "true",
      "instance_type": "m3.medium",
      "region": "us-east-1",
      "secret_key": "{{user `aws_secret_key`}}",
      "security_group_id": "sg-xxxxxxxxx",
      "source_ami": "ami-xxxxxxxx",
      "ssh_timeout": "5m",
      "ssh_username": "ubuntu",
      "subnet_id": "subnet-xxxxxxxxx",
      "type": "amazon-ebs",
      "vpc_id": "vpc-xxxxxxxx"
    }
  ],
  "post-processors": null,
  "provisioners": [
    {
      "cookbook_paths": [
        "/Users/ellisonm/chef-repo/cookbooks"
      ],
      "run_list": [
        "recipe[myfonts-base::default]"
      ],
      "type": "chef-solo"
    }
  ]
}

I believe the problem is somehow related to the run_list, but I’ve tried adding both cookbook paths like this

      "cookbook_paths": [
        "/Users/ellisonm/chef-repo/cookbooks",
        "/Users/ellisonm/.berkshelf/cookbooks"
      ],

and get the same error.

Does anyone have any suggestions to troubleshoot this?