README.md in supply_drop-0.17.0 vs README.md in supply_drop-1.0.0.beta1
- old
+ new
@@ -1,7 +1,9 @@
# supply_drop
+*THIS IS THE DOCUMENTATION FOR THE 1.x VERSION OF SUPPLY DROP THAT IS COMPATIBLE WITH CAPISTRANO 3.x. 0.x [docs](https://github.com/pitluga/supply_drop/tree/cap-2x) available on the cap-2x branch*
+
supply_drop is a capistrano plugin to facitiate provisioning servers with puppet, without using the puppet server. It works by simply rsyncing your puppet configuration files to your servers and running puppet apply. It strives to allow you to write idiomatic puppet scripts while being as lightweight as possible.
[![Build Status](https://secure.travis-ci.org/pitluga/supply_drop.png)](http://travis-ci.org/pitluga/supply_drop)
### Installation
@@ -12,47 +14,42 @@
gem 'supply_drop'
then at the top of your deploy.rb
- require 'rubygems'
require 'supply_drop'
### Tasks
- cap puppet:bootstrap:debian
- cap puppet:bootstrap:ubuntu
- cap puppet:bootstrap:osx
- cap puppet:bootstrap:redhat
+ cap staging puppet:bootstrap:debian
+ cap staging puppet:bootstrap:ubuntu
+ cap staging puppet:bootstrap:osx
+ cap staging puppet:bootstrap:redhat
This does a simple apt-get install of puppet on the target servers.
- cap puppet:bootstrap:puppetlabs:debian
- cap puppet:bootstrap:puppetlabs:ubuntu
+ cap staging puppet:bootstrap:puppetlabs:debian
+ cap staging puppet:bootstrap:puppetlabs:ubuntu
This is the same as above, but it grabs the most recent versions of puppet via apt repositories provided by puppetlabs.
- cap puppet:noop
+ cap staging puppet:noop
This will show you a list of the pending changes to be applied server-by-server.
- cap puppet:apply
+ cap staging puppet:apply
Applies the pending changes to all the servers.
- cap puppet:syntax_check
+ cap staging puppet:unlock
-Locally syntax checks all the puppet files and erb templates. Requires you to have puppet installed locally.
-
- cap puppet:unlock
-
Remove any stale lock files created by supply_drop when locking is used and something went wrong.
-You can specify that one of your servers should not be puppeted by setting the :nopuppet flag to true, like so. It will then be skipped by all the above commands.
+Only servers in the puppet role will be puppeted.
- role :weird_thing, '33.33.33.33', :nopuppet => true
+ role :puppet, '33.33.33.33'
### Variables
There are several variables that can be overriden to change how supply_drop works:
@@ -86,27 +83,10 @@
set :puppet_parallel_rsync_pool_size, 10
sets the maximum number of rsync commands that are run concurrently
- set :puppet_syntax_check, false
-
-when true, will syntax check your puppet files and erb templates before rsyncing them to your servers. This is an
-experimental feature and is quite slow at the moment.
-
- set :puppet_stream_output, false
-
-will write the incremental output from the hosts to the screen instead of waiting until complete and printing by host.
-
- set :puppet_write_to_file, nil
-
-a file to additionally write puppet output to, useful for large noops with small scrollbacks.
-
- set :puppet_runner, nil
-
-allows you to specify the user to execute the puppet command as. Like running sudo -u puppet args from the command line.
-
set :puppet_lock_file, '/tmp/puppet.lock'
sets a lockfile on each remote host to prevent multiple users from puppeting the same node simultaneously. Set to nil to disable locking. You can alternately temporarily disable locking by setting the NO_PUPPET_LOCKING environment variable to any value.
### Handling Legacy Puppet
@@ -134,9 +114,10 @@
* Drew Olson [drewolson](https://github.com/drewolson "github")
* Dave Pirotte [dpirotte](https://github.com/dpirotte "github")
* Mike Pilat [mikepilat](https://github.com/mikepilat "github")
* Dan Manges [dan-manges](https://github.com/dan-manges "github") (one soda's worth)
* Brian Cosgrove [cosgroveb](https://github.com/cosgroveb "github")
+* Troy Howard [thoward](https://github.com/thoward "github")
Copyright (c) 2012-2013 Tony Pitluga
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: