provizioning 0.1.2 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/README.md +29 -0
- data/Rakefile +2 -0
- data/bootstrap/bootstrap.sh +71 -0
- data/{lib/templates/sources.list → bootstrap/lucid.sources.list} +2 -1
- data/bootstrap/natty.sources.list +14 -0
- data/lib/provizioning/puppet.rb +94 -0
- data/lib/provizioning/version.rb +3 -0
- data/lib/provizioning.rb +1 -3
- data/provizioning.gemspec +20 -0
- data/puppet/classes/apache/centos.conf +978 -0
- data/puppet/classes/apache/ssl.conf +75 -0
- data/puppet/classes/apache.pp +152 -0
- data/puppet/classes/apt.pp +5 -0
- data/puppet/classes/base/ntp/ntpd-sysconfig +13 -0
- data/puppet/classes/base.pp +79 -0
- data/puppet/classes/freerange.pp +53 -0
- data/puppet/classes/gemrc/gemrc +9 -0
- data/puppet/classes/gemrc.pp +10 -0
- data/puppet/classes/imagemagick.pp +19 -0
- data/puppet/classes/iptables/load-iptables +3 -0
- data/puppet/classes/iptables/post-iptables +2 -0
- data/puppet/classes/iptables/pre-iptables +2 -0
- data/puppet/classes/iptables.pp +59 -0
- data/puppet/classes/logrotate/logrotate.erb +15 -0
- data/puppet/classes/logrotate.pp +37 -0
- data/puppet/classes/mongo/mongodb.conf +89 -0
- data/puppet/classes/mongo.pp +86 -0
- data/puppet/classes/monit/monit.conf +242 -0
- data/puppet/classes/monit.pp +39 -0
- data/puppet/classes/munin/plugins/passenger_memory_stats +123 -0
- data/puppet/classes/munin/plugins/passenger_status +130 -0
- data/puppet/classes/munin/plugins/rails_database_time +174 -0
- data/puppet/classes/munin/plugins/rails_request_duration +173 -0
- data/puppet/classes/munin/plugins/rails_request_error +169 -0
- data/puppet/classes/munin/plugins/rails_requests +175 -0
- data/puppet/classes/munin/plugins/rails_view_render_time +173 -0
- data/puppet/classes/munin/rails-plugin-config +4 -0
- data/puppet/classes/munin.pp +60 -0
- data/puppet/classes/mysql/password.erb +1 -0
- data/puppet/classes/mysql.pp +71 -0
- data/puppet/classes/openswan/ipsec.conf +17 -0
- data/puppet/classes/openswan/ipsec.secrets +1 -0
- data/puppet/classes/openswan/patched_ipsec_initd_script +223 -0
- data/puppet/classes/openswan/secret.erb +1 -0
- data/puppet/classes/openswan.pp +71 -0
- data/puppet/classes/post-flight.pp +17 -0
- data/puppet/classes/postfix/main.cf +39 -0
- data/puppet/classes/postfix.pp +16 -0
- data/puppet/classes/rack/centos/passenger.load.erb +5 -0
- data/puppet/classes/rack/ubuntu/passenger.conf.erb +6 -0
- data/puppet/classes/rack.pp +66 -0
- data/puppet/classes/redis/redis.conf.erb +187 -0
- data/puppet/classes/redis.pp +20 -0
- data/puppet/classes/sudo/sudoers +6 -0
- data/puppet/classes/sudo.pp +24 -0
- data/puppet/classes/syslogng/CentOS.cnf +61 -0
- data/puppet/classes/syslogng/Ubuntu.cnf +347 -0
- data/puppet/classes/syslogng.pp +146 -0
- data/puppet/classes/xml.pp +23 -0
- data/puppet/classes/yum.pp +6 -0
- data/puppet/classes/zsh.pp +5 -0
- data/puppet/modules/README +74 -0
- data/puppet/modules/cron/README +4 -0
- data/puppet/modules/cron/manifests/base.pp +26 -0
- data/puppet/modules/cron/manifests/crontabs.pp +11 -0
- data/puppet/modules/cron/manifests/init.pp +18 -0
- data/puppet/modules/drupal/Modulefile +7 -0
- data/puppet/modules/drupal/README +110 -0
- data/puppet/modules/drupal/manifests/absent.pp +25 -0
- data/puppet/modules/drupal/manifests/backup/absent.pp +23 -0
- data/puppet/modules/drupal/manifests/backup.pp +49 -0
- data/puppet/modules/drupal/manifests/conf.pp +23 -0
- data/puppet/modules/drupal/manifests/debug.pp +26 -0
- data/puppet/modules/drupal/manifests/disable.pp +22 -0
- data/puppet/modules/drupal/manifests/disableboot.pp +13 -0
- data/puppet/modules/drupal/manifests/drush.pp +20 -0
- data/puppet/modules/drupal/manifests/example42/backup.pp +8 -0
- data/puppet/modules/drupal/manifests/example42/monitor.pp +8 -0
- data/puppet/modules/drupal/manifests/example42.pp +25 -0
- data/puppet/modules/drupal/manifests/extra.pp +30 -0
- data/puppet/modules/drupal/manifests/firewall/absent.pp +19 -0
- data/puppet/modules/drupal/manifests/firewall.pp +24 -0
- data/puppet/modules/drupal/manifests/init.pp +54 -0
- data/puppet/modules/drupal/manifests/install.pp +20 -0
- data/puppet/modules/drupal/manifests/module.pp +37 -0
- data/puppet/modules/drupal/manifests/monitor/absent.pp +42 -0
- data/puppet/modules/drupal/manifests/monitor.pp +77 -0
- data/puppet/modules/drupal/manifests/package.pp +20 -0
- data/puppet/modules/drupal/manifests/params.pp +277 -0
- data/puppet/modules/drupal/manifests/site.pp +63 -0
- data/puppet/modules/drupal/manifests/theme.pp +33 -0
- data/puppet/modules/drupal/templates/variables_drupal.erb +62 -0
- data/puppet/modules/drupal/tests/absent.pp +1 -0
- data/puppet/modules/drupal/tests/backup.pp +1 -0
- data/puppet/modules/drupal/tests/debug.pp +1 -0
- data/puppet/modules/drupal/tests/disable.pp +1 -0
- data/puppet/modules/drupal/tests/disableboot.pp +1 -0
- data/puppet/modules/drupal/tests/firewall.pp +1 -0
- data/puppet/modules/drupal/tests/init.pp +1 -0
- data/puppet/modules/drupal/tests/monitor.pp +1 -0
- data/puppet/modules/hosts/README +0 -0
- data/puppet/modules/hosts/manifests/example42.pp +5 -0
- data/puppet/modules/hosts/manifests/init.pp +16 -0
- data/puppet/modules/hosts/templates/hosts.erb +11 -0
- data/puppet/modules/iptables/README +4 -0
- data/puppet/modules/iptables/files/iptables +19 -0
- data/puppet/modules/iptables/manifests/disable.pp +15 -0
- data/puppet/modules/iptables/manifests/init.pp +9 -0
- data/puppet/modules/iptables/manifests/redhat.pp +24 -0
- data/puppet/modules/mysql/Modulefile +7 -0
- data/puppet/modules/mysql/README +56 -0
- data/puppet/modules/mysql/manifests/absent.pp +12 -0
- data/puppet/modules/mysql/manifests/backup/example42.pp +8 -0
- data/puppet/modules/mysql/manifests/backup.pp +49 -0
- data/puppet/modules/mysql/manifests/client.pp +18 -0
- data/puppet/modules/mysql/manifests/conf.pp +23 -0
- data/puppet/modules/mysql/manifests/debug.pp +25 -0
- data/puppet/modules/mysql/manifests/disable.pp +13 -0
- data/puppet/modules/mysql/manifests/disableboot.pp +13 -0
- data/puppet/modules/mysql/manifests/example42.pp +25 -0
- data/puppet/modules/mysql/manifests/firewall.pp +23 -0
- data/puppet/modules/mysql/manifests/grant.pp +29 -0
- data/puppet/modules/mysql/manifests/init.pp +67 -0
- data/puppet/modules/mysql/manifests/monitor/example42.pp +8 -0
- data/puppet/modules/mysql/manifests/monitor.pp +77 -0
- data/puppet/modules/mysql/manifests/params.pp +240 -0
- data/puppet/modules/mysql/manifests/query.pp +30 -0
- data/puppet/modules/mysql/templates/grant.erb +6 -0
- data/puppet/modules/mysql/templates/query.erb +5 -0
- data/puppet/modules/mysql/templates/variables_mysql.erb +42 -0
- data/puppet/modules/network/README +4 -0
- data/puppet/modules/network/manifests/init.pp +13 -0
- data/puppet/modules/nginx/manifests/fcgi.pp +87 -0
- data/puppet/modules/nginx/manifests/init.pp +205 -0
- data/puppet/modules/nginx/templates/fcgi_site.erb +38 -0
- data/puppet/modules/nginx/templates/includes/fastcgi_params.erb +23 -0
- data/puppet/modules/nginx/templates/nginx.conf.erb +31 -0
- data/puppet/modules/passenger/manifests/init.pp +12 -0
- data/puppet/modules/passenger/templates/myapp +39 -0
- data/puppet/modules/php/README +26 -0
- data/puppet/modules/php/manifests/init.pp +42 -0
- data/puppet/modules/php/manifests/module.pp +22 -0
- data/puppet/modules/php/manifests/pear/module.pp +21 -0
- data/puppet/modules/php/manifests/pear.pp +20 -0
- data/puppet/modules/php/manifests/pecl/config.pp +19 -0
- data/puppet/modules/php/manifests/pecl/module.pp +44 -0
- data/puppet/modules/php/manifests/pecl.pp +8 -0
- data/puppet/modules/php/manifests/soap.pp +20 -0
- data/puppet/modules/postgres/Copyright +13 -0
- data/puppet/modules/postgres/manifests/database.pp +40 -0
- data/puppet/modules/postgres/manifests/init.pp +25 -0
- data/puppet/modules/postgres/manifests/role.pp +40 -0
- data/puppet/modules/ruby/files/install-ruby-stow +43 -0
- data/puppet/modules/ruby/manifests/init.pp +18 -0
- data/puppet/modules/rvm/files/install-system-rvm +2 -0
- data/puppet/modules/rvm/manifests/classes/dependencies.pp +24 -0
- data/puppet/modules/rvm/manifests/classes/passenger.pp +166 -0
- data/puppet/modules/rvm/manifests/classes/system.pp +33 -0
- data/puppet/modules/rvm/manifests/definitions/system_user.pp +13 -0
- data/puppet/modules/rvm/manifests/init.pp +2 -0
- data/puppet/modules/rvm/templates/passenger-apache.conf.erb +9 -0
- data/puppet/modules/ssh/README +4 -0
- data/puppet/modules/ssh/manifests/auth.pp +39 -0
- data/puppet/modules/ssh/manifests/auth.pp.good +340 -0
- data/puppet/modules/ssh/manifests/eal4.pp +69 -0
- data/puppet/modules/ssh/manifests/init.pp +74 -0
- data/puppet/modules/stow/manifests/init.pp +5 -0
- data/puppet/modules/sudo/files/sudoers +25 -0
- data/puppet/modules/sudo/manifests/init.pp +1 -0
- data/puppet/modules/sudo/manifests/install.pp +5 -0
- data/puppet/modules/sudo/manifests/sudoers.pp +14 -0
- data/puppet/modules/ufw/manifests/init.pp +12 -0
- data/puppet/modules/users/README +28 -0
- data/puppet/modules/users/manifests/adduser.pp +16 -0
- data/puppet/modules/users/manifests/admin.pp +11 -0
- data/puppet/modules/users/manifests/automount.pp +34 -0
- data/puppet/modules/users/manifests/deluser.pp +8 -0
- data/puppet/modules/users/manifests/example42.pp +16 -0
- data/puppet/modules/users/manifests/init.pp +31 -0
- data/puppet/modules/users/manifests/ldap.pp +114 -0
- data/puppet/modules/users/manifests/params.pp +84 -0
- data/puppet/modules/users/templates/ldap/ldap.conf.erb +13 -0
- data/puppet/modules/users/templates/ldap/nsswitch.conf.erb +23 -0
- data/puppet/modules/users/templates/ldap/openldap-ldap.conf.erb +8 -0
- data/puppet/modules/webmin/manifests/init.pp +31 -0
- data/puppet/roles/blank.pp +1 -0
- data/puppet/site.pp +8 -0
- metadata +235 -81
- data/README +0 -3
- data/bin/provizion +0 -52
- data/lib/policies/chef-client.rb +0 -37
- data/lib/policies/lamp.rb +0 -42
- data/lib/policies/passenger.rb +0 -44
- data/lib/recipes/apache.rb +0 -70
- data/lib/recipes/apache_conf.rb +0 -3
- data/lib/recipes/bundler.rb +0 -4
- data/lib/recipes/chef_client.rb +0 -11
- data/lib/recipes/curl.rb +0 -8
- data/lib/recipes/essential.rb +0 -4
- data/lib/recipes/git.rb +0 -15
- data/lib/recipes/imagemagick.rb +0 -8
- data/lib/recipes/mailserver.rb +0 -9
- data/lib/recipes/memcached.rb +0 -16
- data/lib/recipes/mysql.rb +0 -21
- data/lib/recipes/nginx/init.d +0 -63
- data/lib/recipes/nginx.rb +0 -25
- data/lib/recipes/passenger.rb +0 -67
- data/lib/recipes/php.rb +0 -8
- data/lib/recipes/postgresql.rb +0 -21
- data/lib/recipes/ruby_enterprise.rb +0 -24
- data/lib/recipes/rvm.rb +0 -25
- data/lib/recipes/sources.rb +0 -5
- data/lib/recipes/subversion.rb +0 -8
- data/lib/recipes/syslog.rb +0 -7
- data/lib/recipes/ufw.rb +0 -12
- data/lib/recipes/vim.rb +0 -8
- data/lib/recipes/webmin.rb +0 -17
- data/lib/templates/apache.conf.erb +0 -12
- data/lib/templates/my.cnf +0 -132
- data/lib/templates/passenger.conf +0 -11
- data/lib/templates/passenger.load +0 -1
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
Server provisioning tool
|
2
|
+
========================
|
3
|
+
|
4
|
+
Intro
|
5
|
+
-----
|
6
|
+
|
7
|
+
Provizioning is the tool that Season use internally to setup new machines it uses Capistrano for bootstrapping the server and uploading the recipes, then use puppet for configuration and fine tunning.
|
8
|
+
|
9
|
+
Usage
|
10
|
+
-----
|
11
|
+
|
12
|
+
Include provizioning in your gem file:
|
13
|
+
|
14
|
+
gem 'provizioning'
|
15
|
+
|
16
|
+
Setup a directory for capistrano use:
|
17
|
+
|
18
|
+
capify .
|
19
|
+
|
20
|
+
Configure deploy.rb :user var for deployment and provisioning or use :puppet_user for provisioning:
|
21
|
+
|
22
|
+
set :puppet_user, 'root'
|
23
|
+
|
24
|
+
Use capistrano tasks to provision the server:
|
25
|
+
|
26
|
+
bundle exec cap puppet:bootstrap
|
27
|
+
bundle exec cap puppet:apply
|
28
|
+
|
29
|
+
Based on https://github.com/freerange/freerange-puppet
|
data/Rakefile
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# ruby-stack - Install Ruby and friends.
|
4
|
+
# Author: Francesc Esplugas <http://francescesplugas.com/>
|
5
|
+
# License: MIT-LICENSE
|
6
|
+
#
|
7
|
+
# DON'T CHANGE THIS FILE UNLESS YOU KNOW WHAT YOU'RE DOING!
|
8
|
+
|
9
|
+
##############################################################################
|
10
|
+
# Abort on any error.
|
11
|
+
##############################################################################
|
12
|
+
|
13
|
+
set -e
|
14
|
+
|
15
|
+
##############################################################################
|
16
|
+
# Update and upgrade the system.
|
17
|
+
##############################################################################
|
18
|
+
|
19
|
+
cd /etc/apt
|
20
|
+
|
21
|
+
# Sources depending on Ubuntu Version
|
22
|
+
var=`cat /etc/issue`
|
23
|
+
if [ "$var" == "Ubuntu 11.04 \n \l" ]
|
24
|
+
then
|
25
|
+
wget https://raw.github.com/seasonlabs/provizioning/master/bootstrap/natty.sources.list -O sources.list
|
26
|
+
else
|
27
|
+
wget https://raw.github.com/seasonlabs/provizioning/master/bootstrap/lucid.sources.list -O sources.list
|
28
|
+
fi
|
29
|
+
|
30
|
+
apt-get update
|
31
|
+
apt-get -y upgrade
|
32
|
+
|
33
|
+
##############################################################################
|
34
|
+
# Install essential stuff ...
|
35
|
+
##############################################################################
|
36
|
+
|
37
|
+
apt-get -y install python-software-properties
|
38
|
+
add-apt-repository ppa:pitti/postgresql
|
39
|
+
add-apt-repository ppa:nginx/stable
|
40
|
+
#10gen key
|
41
|
+
apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
|
42
|
+
apt-get update
|
43
|
+
apt-get -y install build-essential
|
44
|
+
apt-get -y install git-core
|
45
|
+
apt-get -y install vim
|
46
|
+
apt-get -y install curl
|
47
|
+
|
48
|
+
##############################################################################
|
49
|
+
# Extra stuff to make things work ...
|
50
|
+
##############################################################################
|
51
|
+
|
52
|
+
locale-gen en_US.UTF-8
|
53
|
+
dpkg-reconfigure locales
|
54
|
+
|
55
|
+
##############################################################################
|
56
|
+
# Install Ruby
|
57
|
+
##############################################################################
|
58
|
+
|
59
|
+
apt-get -y install ruby ruby-dev irb libopenssl-ruby rdoc
|
60
|
+
|
61
|
+
cd /tmp
|
62
|
+
RUBYGEMS="1.8.11"
|
63
|
+
curl -O http://production.cf.rubygems.org/rubygems/rubygems-$RUBYGEMS.tgz
|
64
|
+
tar xvzf rubygems-$RUBYGEMS.tgz
|
65
|
+
ruby rubygems-$RUBYGEMS/setup.rb --no-ri --no-rdoc --no-format-executable
|
66
|
+
|
67
|
+
# Cleanup the installation
|
68
|
+
apt-get -y autoremove
|
69
|
+
|
70
|
+
# Install Puppet
|
71
|
+
gem install puppet --no-ri --no-rdoc
|
@@ -10,4 +10,5 @@ deb-src http://archive.ubuntu.com/ubuntu/ lucid main
|
|
10
10
|
deb http://archive.ubuntu.com/ubuntu/ lucid-security main restricted universe multiverse
|
11
11
|
deb http://archive.ubuntu.com/ubuntu/ lucid-updates main restricted universe multiverse
|
12
12
|
deb http://archive.ubuntu.com/ubuntu/ lucid-proposed main restricted universe multiverse
|
13
|
-
deb http://archive.ubuntu.com/ubuntu/ lucid-backports main restricted universe multiverse
|
13
|
+
deb http://archive.ubuntu.com/ubuntu/ lucid-backports main restricted universe multiverse
|
14
|
+
deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
|
@@ -0,0 +1,14 @@
|
|
1
|
+
#############################################################
|
2
|
+
################### OFFICIAL UBUNTU REPOS ###################
|
3
|
+
#############################################################
|
4
|
+
|
5
|
+
###### Ubuntu Main Repos
|
6
|
+
deb http://archive.ubuntu.com/ubuntu/ natty main restricted universe multiverse
|
7
|
+
deb-src http://archive.ubuntu.com/ubuntu/ natty main
|
8
|
+
|
9
|
+
###### Ubuntu Update Repos
|
10
|
+
deb http://archive.ubuntu.com/ubuntu/ natty-security main restricted universe multiverse
|
11
|
+
deb http://archive.ubuntu.com/ubuntu/ natty-updates main restricted universe multiverse
|
12
|
+
deb http://archive.ubuntu.com/ubuntu/ natty-proposed main restricted universe multiverse
|
13
|
+
deb http://archive.ubuntu.com/ubuntu/ natty-backports main restricted universe multiverse
|
14
|
+
deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
|
@@ -0,0 +1,94 @@
|
|
1
|
+
Capistrano::Configuration.instance(:must_exist).load do
|
2
|
+
default_run_options[:pty] = true # needed for git password prompts
|
3
|
+
ssh_options[:forward_agent] = true # use the keys for the person running the cap command to check out the app
|
4
|
+
|
5
|
+
set :puppet_dryrun, false
|
6
|
+
set :puppet_debug, false
|
7
|
+
set :puppet_path, '/tmp/puppet_recipes'
|
8
|
+
set :puppet_app_modules_path, "#{puppet_path}/apps"
|
9
|
+
set(:puppet_user) { user }
|
10
|
+
|
11
|
+
namespace :puppet do
|
12
|
+
desc "Deploy our puppet recipes to the server"
|
13
|
+
task :deploy_recipes do
|
14
|
+
with_puppet_user do
|
15
|
+
run "rm -rf #{puppet_path}"
|
16
|
+
upload File.expand_path("../../../puppet", __FILE__), puppet_path
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
desc 'Apply puppet configuration'
|
21
|
+
task :apply do
|
22
|
+
apply_manifest "#{puppet_path}/site.pp"
|
23
|
+
end
|
24
|
+
|
25
|
+
desc 'Dryrun puppet configuration'
|
26
|
+
task :dryrun do
|
27
|
+
set :puppet_dryrun, true
|
28
|
+
end
|
29
|
+
|
30
|
+
desc 'Debug puppet configuration'
|
31
|
+
task :debug do
|
32
|
+
set :puppet_debug, true
|
33
|
+
end
|
34
|
+
|
35
|
+
desc 'Bootstrap puppet'
|
36
|
+
task :bootstrap do
|
37
|
+
with_puppet_user do
|
38
|
+
run "wget -q -O - https://raw.github.com/seasonlabs/provizioning/master/bootstrap/bootstrap.sh | sh"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
desc 'Upload app modules'
|
43
|
+
task :upload_app_modules do
|
44
|
+
deploy_recipes
|
45
|
+
with_puppet_user do
|
46
|
+
if File.directory?("config/puppet")
|
47
|
+
upload File.expand_path("config/puppet"), puppet_app_modules_path
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
before "puppet:apply", "puppet:upload_app_modules"
|
54
|
+
|
55
|
+
def with_puppet_user(&block)
|
56
|
+
old_user = user
|
57
|
+
set :user, puppet_user
|
58
|
+
close_sessions
|
59
|
+
yield
|
60
|
+
set :user, old_user
|
61
|
+
close_sessions
|
62
|
+
end
|
63
|
+
|
64
|
+
def close_sessions
|
65
|
+
sessions.values.each { |session| session.close }
|
66
|
+
sessions.clear
|
67
|
+
end
|
68
|
+
|
69
|
+
def apply_manifest(manifest, options = {})
|
70
|
+
dryrun_option = fetch('puppet_dryrun') ? "--noop " : ""
|
71
|
+
debug_option = fetch('puppet_debug') ? "-d " : ""
|
72
|
+
with_puppet_user do
|
73
|
+
run "puppet apply --modulepath '#{puppet_app_modules_path}:#{puppet_path}/modules' --templatedir #{puppet_path}/classes #{dryrun_option}-v #{debug_option}#{manifest}", options
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def manifest(role, manifest = nil, &block)
|
78
|
+
require 'erb'
|
79
|
+
|
80
|
+
name = "#{role}-manifest"
|
81
|
+
top.namespace :puppet do
|
82
|
+
task name, :roles => [role.to_sym] do
|
83
|
+
with_puppet_user do
|
84
|
+
manifest = block.call if manifest.nil?
|
85
|
+
put ERB.new(manifest).result(binding), "#{puppet_path}/roles/#{application}-#{stage}-#{role}.pp", :roles => [role.to_sym]
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
before "puppet:apply" do
|
90
|
+
puppet.send name
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
data/lib/provizioning.rb
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/provizioning/version', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Victor Castell"]
|
6
|
+
gem.email = ["victor.castell@season.es"]
|
7
|
+
gem.summary = %Q{Server provisioning tool based on Sprinkle}
|
8
|
+
gem.description = %Q{Server provisioning tools, recipes and templates based on Sprinkle}
|
9
|
+
gem.homepage = "http://github.com/seasonlabs/provizioning"
|
10
|
+
|
11
|
+
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
12
|
+
gem.files = `git ls-files`.split("\n")
|
13
|
+
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
14
|
+
gem.name = "provizioning"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = Provizioning::VERSION
|
17
|
+
|
18
|
+
gem.add_dependency(%q<capistrano>, [">= 0"])
|
19
|
+
gem.add_dependency(%q<capistrano-ext>, [">= 0"])
|
20
|
+
end
|