Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Tool to help boot EC2 instances via user and meta data
Ruby
branch: master

This branch is 13 commits ahead, 15 commits behind ripienaar:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
actions
lib
COPYING
README.markdown
Rakefile
ec2-boot-init.init
ec2-boot-init.rb
ec2-boot-init.spec
motd.provisioned
motd.unprovisioned
process-ec-meta-data.rb

README.markdown

What is it?

A script to help bootstrap generic EC2 instances into specific ones.

The basic idea is that you submit some user data in the form:

--- 
:facts: 
  foo: bar
:actions: 
- :url: http://your.net/ec2commands/
  :type: :getcommands
- :master: puppet.your.net
  :type: :puppet

This script when run from your init system will:

The puppet action isn't shipped but can be supplied by your on the URL to the getcommands action.

You should use this to do the basic bootstrap actions like get Puppet on your node, do the basic setup etc. From there you'd configure the machine using Puppet.

Actions:

Actions are written in ruby, here's a simple one that execute a shell command:

newaction("shell") do |cmd, ud, md, config|
    if cmd.include?(:command)
        system(cmd[:command])
    end
end

Facts:

Once run all the EC2 meta data and user data are cached locally and a file /etc/facts.txt gets written in a list of key=value pairs.

Ideal for importing in tools like Facter.

Status:

This is very early work-in-progress chunk of code.

Something went wrong with that request. Please try again.