title: Why doesn't my custom recipes run on AWS OpsWorks?
body: <p>I've created a GitHub repo for my simple custom recipe:</p>
  
  <pre><code>my-cookbook/
  |- recipes/
     |- appsetup.rb
  </code></pre>
  
  <p>I've added the repo to Custom Chef Recipes as <code>https://github.com/my-github-user/my-github-repo.git</code></p>
  
  <p>I've added <code>my-cookbook::appsetup</code> to the Setup "cycle".</p>
  
  <p>I know it's executed, because it fails to load if I mess up the syntax.</p>
  
  <p>This is my appsetup.rb:</p>
  
  <pre><code>node[:deploy].each do |app_name, deploy|
    script "install_composer" do
      interpreter "bash"
      user "root"
      cwd "#{deploy[:deploy_to]}/current"
      code "curl -sS https://getcomposer.org/installer | php &amp;&amp; php composer.phar install --no-dev"
    end
  end
  </code></pre>
  
  <p>When I log into the instance by SSH with the ubuntu user, composer isn't installed.</p>
  
  <p>I've also tried the following to no avail (A nodejs install):</p>
  
  <pre><code>node[:deploy].each do |app_name, deploy|
    execute "installing node" do
      command "add-apt-repository --yes ppa:chris-lea/node.js &amp;&amp; apt-get update &amp;&amp; sudo apt-get install python-software-properties python g++ make nodejs"
    end
  end
  </code></pre>
  
  <p>Node doesn't get installed, and there are no errors in the log. The only references to the cookbook in the log just says:</p>
  
  <pre><code>[2014-03-31T13:26:04+00:00] INFO: OpsWorks Custom Run List: ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
  ...
  2014-03-31T13:26:04+00:00] INFO: New Run List expands to ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
  ...
  [2014-03-31T13:26:05+00:00] DEBUG: Loading Recipe my-cookbook::appsetup via include_recipe
  [2014-03-31T13:26:05+00:00] DEBUG: Found recipe appsetup in cookbook my-cookbook
  </code></pre>
  
  <p>Am I missing some critical step somewhere? The recipe is clearly recognized and loaded, but doesn't seem to be executed.</p>
  
  <p>(The following are fictitious names: my-github-user, my-github-repo, my-cookbook)</p>