Skip to content

Instantly share code, notes, and snippets.

@nbarendt
nbarendt / gist:1249771
Created September 29, 2011 01:33
Simple EC2 user_data script template to bootstrap an instance with chef
#!/bin/bash
# log bash stdout and stderr to several places
exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1
set -x
set -e
export WORKING_DIR=/home/ubuntu
# chef-solo JSON configuration
# put your runlist, variables, etc. in here
@nbarendt
nbarendt / gist:1249754
Created September 29, 2011 01:20
Brute force chef-solo install script
#!/bin/bash
set -x
set -e
echo "deb http://apt.opscode.com/ `lsb_release -cs`-0.10 main" | sudo tee /etc/apt/sources.list.d/opscode.list
wget -qO - http://apt.opscode.com/packages@opscode.com.gpg.key | sudo apt-key add -
# set up debconf preseed so there's no prompt for the chef server URL
export PRESEED_FILE=/tmp/tmp_chef_preseed
ERROR: Failed to authenticate to https://api.opscode.com/organizations/citizengroove as citizengroove with key /Users/nbarendt/Documents/BitBacker/CitizenGroove/chef-repo/.chef/nbarendt.pem
Response: Failed to authenticate as citizengroove. Ensure that your node_name and client key are correct.
current_dir = File.dirname(__FILE__)
log_level :info
log_location STDOUT
node_name "citizengroove"
client_key "#{current_dir}/citizengroove.pem"
validation_client_name "citizengroove-validator"
validation_key "#{current_dir}/citizengroove-validator.pem"
chef_server_url "https://api.opscode.com/organizations/citizengroove"
cache_type 'BasicFile'
cache_options( :path => "#{ENV['HOME']}/.chef/checksums" )