capitate 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/History.txt CHANGED
@@ -1,3 +1,8 @@
1
+ == 0.2.2 2008-02-24
2
+
3
+ * Fixes to setup tasks.
4
+ * Removing with_user on add_user task.
5
+
1
6
  == 0.2.1 2008-02-24
2
7
 
3
8
  * Removing all my brain dead recipes.
@@ -14,9 +14,9 @@ h3(#centos:add_user). centos:add_user
14
14
 
15
15
  Add user and set user password for application. Adds user to specified groups.
16
16
 
17
- *user*: User to add.
17
+ *user_add*: User to add.
18
18
 
19
- @set :user, "app_user"@
19
+ @set :user_add, "app_user"@
20
20
  *groups*: Groups for user to be in. _Defaults to none_
21
21
 
22
22
  @set :groups, "admin,foo"@
@@ -22,6 +22,12 @@ Create mongrel cluster.
22
22
  then instances will be at 9000, 9001, and 9002
23
23
 
24
24
  @set :mongrel_port, 9000@
25
+
26
+ *mongrel_config_dir*: Directory for mongrel config. _Defaults to "[shared_path]/config/mongrel"_
27
+ *mongrel_pid_dir*: Directory for mongrel pids. _Defaults to "[shared_path]/pids"
28
+ *mongrel_config_script*: Config script to load with mongrel. _Defaults to nil_
29
+
30
+ @set :mongrel_config_script, "config/mongrel_handler.rb"@
25
31
 
26
32
 
27
33
 
@@ -42,11 +42,11 @@ Create database, database user, and set grant permissions.
42
42
 
43
43
  *db_pass*: Database password (application).
44
44
 
45
- *grant_locations*: Grant locations. _Defaults to localhost_
45
+ *mysql_grant_locations*: Grant locations. _Defaults to localhost_
46
46
 
47
47
  @set :grant_locations, [ "localhost", "192.168.1.111" ]@
48
48
 
49
- *grant_priv_type*: Grant privilege types. _Defaults to ALL_
49
+ *mysql_grant_priv_type*: Grant privilege types. _Defaults to ALL_
50
50
 
51
51
  @set :grant_priv_type, "ALL"@
52
52
 
@@ -34,18 +34,19 @@ h3(#nginx:setup_mongrel). nginx:setup_mongrel
34
34
 
35
35
  Create and update the nginx vhost include.
36
36
 
37
- mongrel_size: Number of mongrels.
37
+ *mongrel_size*: Number of mongrels.
38
38
 
39
- set :mongrel_size, 3
39
+ @set :mongrel_size, 3@
40
40
 
41
- mongrel_port: Starting port for mongrels.
42
- If there are 3 mongrels with port 9000, then instances will be at 9000, 9001, and 9002
41
+ *mongrel_port*: Starting port for mongrels.
43
42
 
44
- set :mongrel_port, 9000
43
+ If there are 3 mongrels with port 9000, then instances will be at 9000, 9001, and 9002
45
44
 
46
- domain_name: Domain name for nginx virtual host, (without www prefix).
45
+ @set :mongrel_port, 9000@
47
46
 
48
- set :domain_name, "foo.com"
47
+ *domain_name*: Domain name for nginx virtual host, (without www prefix).
48
+
49
+ @set :domain_name, "foo.com"@
49
50
 
50
51
 
51
52
 
@@ -30,15 +30,15 @@ h3(#rails:setup). rails:setup
30
30
 
31
31
  Create database yaml in shared path.
32
32
 
33
- *db_name*: Database name (rails).
34
-
33
+ *db_name*: Database name (rails).
34
+
35
35
  @set :db_name, "app_db_name"@
36
36
 
37
- *db_user*: Database user (rails).
37
+ *db_user*: Database user (rails).
38
38
 
39
39
  @set :db_user, "app_db_user"@
40
40
 
41
- *db_pass*: Database password (rails).
41
+ *db_pass*: Database password (rails).
42
42
 
43
43
  @set :db_pass, "the_password"@
44
44
 
@@ -80,6 +80,8 @@ Update sphinx for application.
80
80
 
81
81
  *sphinx_db_name*: Sphinx DB name. _Defaults to db_name_
82
82
 
83
+ *sphinx_db_port*: Sphinx DB port. _Defaults to db_port_
84
+
83
85
 
84
86
  *sphinx_db_host*: Sphinx DB host. _Defaults to location for primary :db role_
85
87
 
@@ -12,10 +12,10 @@ module Capistrano::Configuration::Connections
12
12
  # # Do something as user nginx
13
13
  #
14
14
  def set_user(new_user)
15
- backup_user = fetch(:user)
15
+ previous_user = fetch(:user)
16
16
 
17
- return if backup_user == new_user
18
- @backup_user = backup_user
17
+ return if previous_user == new_user
18
+ set :previous_user, previous_user
19
19
 
20
20
  set :user, new_user
21
21
  clear_sessions
@@ -32,8 +32,9 @@ module Capistrano::Configuration::Connections
32
32
  # # User is now root
33
33
  #
34
34
  def reset_user
35
- set :user, @backup_user
36
- @backup_user = nil
35
+ return unless exists?(:previous_user)
36
+ set :user, fetch(:previous_user)
37
+ unset :previous_user
37
38
  clear_sessions
38
39
  end
39
40
 
@@ -51,7 +52,7 @@ module Capistrano::Configuration::Connections
51
52
  def with_user(new_user, &block)
52
53
  begin
53
54
  set_user(new_user)
54
- yield @backup_user
55
+ yield exists?(:previous_user) ? fetch(:previous_user) : nil
55
56
  ensure
56
57
  reset_user
57
58
  end
@@ -5,18 +5,21 @@ module Capitate::Plugins::Prompt
5
5
  Capistrano::CLI.ui.ask(label, &block)
6
6
  end
7
7
 
8
- def password(label, verify = false)
8
+ def password(label, verify = false, lazy = true)
9
9
  # Lazy
10
- Proc.new {
10
+ password_prompt = Proc.new {
11
11
  password = Capistrano::CLI.password_prompt(label)
12
12
 
13
13
  if verify
14
- password_verify = Capistrano::CLI.password_prompt("[Verify] #{label}")
14
+ password_verify = Capistrano::CLI.password_prompt("[VERIFY] #{label}")
15
15
  raise "Passwords do not match" if password != password_verify
16
16
  end
17
17
 
18
18
  password
19
19
  }
20
+
21
+ return password_prompt if lazy
22
+ password_prompt.call
20
23
  end
21
24
 
22
25
  end
@@ -9,6 +9,7 @@ module Capitate::Plugins::Script
9
9
  # - +url+:: URL to download package from
10
10
  # - +configure_options+:: Options for ./configure
11
11
  # - +unpack_dir+:: Directory that is unpacked from tgz (if not matching the file name)
12
+ # - +to_log+:: If specified, will redirect output to this path
12
13
  #
13
14
  # ==== Examples (in capistrano task)
14
15
  # script.make_install("nginx", { :url => "http://sysoev.ru/nginx/nginx-0.5.35.tar.gz", ... })
@@ -17,10 +18,18 @@ module Capitate::Plugins::Script
17
18
  install(name, options) do |dir|
18
19
  configure_options = options[:configure_options] || ""
19
20
 
21
+ # Whether to capture build output
22
+ unless options.has_key?(:to_log)
23
+ to_log = ">> debug.log"
24
+ else
25
+ to_log = ""
26
+ to_log = ">> #{options[:to_log]}" unless options[:to_log].blank?
27
+ end
28
+
20
29
  run_all <<-CMDS
21
- echo 'Configuring #{name}...' && cd #{dir} && ./configure #{configure_options} > configure.log
22
- echo 'Compiling #{name}...' && cd #{dir} && make > make.log
23
- echo 'Installing #{name}...' && cd #{dir} && make install > make_install.log
30
+ cd #{dir} && ./configure #{configure_options} #{to_log}
31
+ cd #{dir} && make #{to_log}
32
+ cd #{dir} && make install #{to_log}
24
33
  CMDS
25
34
  end
26
35
  end
@@ -103,9 +112,11 @@ module Capitate::Plugins::Script
103
112
 
104
113
  unpack_dir ||= file.gsub(/\.tar\.gz|\.tgz/, "")
105
114
 
115
+ http_get_method = fetch(:http_get_method, "wget -nv")
116
+
106
117
  run_all <<-CMDS
107
- echo 'Getting #{url}...' && mkdir -p #{dest} && cd #{dest} && wget -nv #{url}
108
- echo 'Unpacking...' && cd #{dest} && tar zxf #{file}
118
+ mkdir -p #{dest} && cd #{dest} && #{http_get_method} #{url}
119
+ cd #{dest} && tar zxf #{file}
109
120
  CMDS
110
121
 
111
122
  if block_given?
@@ -115,7 +126,8 @@ module Capitate::Plugins::Script
115
126
  end
116
127
  end
117
128
 
118
- # Run all commands (separated by newlines)
129
+ # Run all commands (separated by newlines).
130
+ # Runs with <tt>sh -c</tt>, so sudo can work with any command
119
131
  #
120
132
  # ==== Options
121
133
  # +cmds+:: Commands (separated by newlines)
@@ -123,7 +135,9 @@ module Capitate::Plugins::Script
123
135
  #
124
136
  def run_all(cmds, options = {}, &block)
125
137
  cmds.split("\n").each do |cmd|
126
- run_via(cmd, options, &block)
138
+ cmd = cmd.gsub(/^\s+/, "")
139
+ sh_cmd = %{sh -c "#{cmd.gsub("\"", "\"\"")}"}
140
+ run_via(sh_cmd, options, &block)
127
141
  end
128
142
  end
129
143
 
@@ -21,7 +21,6 @@ module Capitate::Plugins::Templates
21
21
  # put template.load("memcached/memcached.monitrc.erb"), "/tmp/memcached.monitrc"
22
22
  #
23
23
  def load(path, override_binding = nil)
24
-
25
24
  template_dirs_found = template_dirs.select { |dir| File.exist?("#{dir}/#{path}") }
26
25
 
27
26
  # Not found anywhere, throw error
@@ -75,7 +74,7 @@ protected
75
74
  @template_dir ||= begin
76
75
  template_dirs = []
77
76
  template_dirs += fetch(:templates_dirs) if exists?(:templates_dirs)
78
- template_dirs << [ "." ]
77
+ template_dirs << "."
79
78
  template_dirs << project_root if exists?(:project_root)
80
79
  template_dirs << gem_templates_root
81
80
  template_dirs
@@ -2,7 +2,7 @@ module Capitate #:nodoc:
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 1
5
+ TINY = 2
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
@@ -26,7 +26,7 @@ task :install do
26
26
  egrep "^admin" /etc/group || /usr/sbin/groupadd admin
27
27
  sed -i -e 's/^id:5:initdefault:/id:3:initdefault:/g' /etc/inittab
28
28
  mkdir -p /var/www/apps
29
- egrep "^%admin" /etc/sudoers || echo "%admin ALL=(ALL) ALL" > /etc/sudoers
29
+ egrep "^%admin" /etc/sudoers || echo "%admin ALL=(ALL) ALL" >> /etc/sudoers
30
30
  CMDS
31
31
 
32
32
  # Package installs
@@ -65,14 +65,6 @@ task :install do
65
65
  end
66
66
 
67
67
 
68
- # For mysql:install
69
- set :mysql_pid_path, "/var/run/mysqld/mysqld.pid"
70
- set :db_port, 3306
71
-
72
- # For sphinx:install
73
- set :sphinx_prefix, "/usr/local/sphinx"
74
-
75
-
76
68
  #
77
69
  # Install options
78
70
  #
@@ -118,12 +110,17 @@ set :nginx_build_options, {
118
110
  }
119
111
 
120
112
  # Sphinx install
113
+ set :sphinx_prefix, "/usr/local/sphinx"
121
114
  set :sphinx_build_options, {
122
115
  :url => "http://www.sphinxsearch.com/downloads/sphinx-0.9.7.tar.gz",
123
116
  :configure_options => "--with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib/mysql \
124
117
  --prefix=#{sphinx_prefix}"
125
118
  }
126
119
 
120
+ # Mysql install
121
+ set :mysql_pid_path, "/var/run/mysqld/mysqld.pid"
122
+ set :db_port, 3306
123
+
127
124
  # Imagemagick install
128
125
  set :imagemagick_build_options, {
129
126
  :url => "ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz",
@@ -5,8 +5,8 @@ namespace :centos do
5
5
  desc <<-DESC
6
6
  Add user and set user password for application. Adds user to specified groups.
7
7
 
8
- *user*: User to add.\n
9
- @set :user, "app_user"@
8
+ *user_add*: User to add.\n
9
+ @set :user_add, "app_user"@
10
10
  *groups*: Groups for user to be in. _Defaults to none_\n
11
11
  @set :groups, "admin,foo"@\n
12
12
  *home*: Home directory for user. _Defaults to <tt>:deploy_to</tt> setting_\n
@@ -17,35 +17,28 @@ namespace :centos do
17
17
  task :add_user do
18
18
 
19
19
  # Settings
20
- fetch(:user)
20
+ fetch(:user_add)
21
21
  fetch_or_default(:groups, nil)
22
22
  fetch_or_default(:home, deploy_to)
23
23
  fetch_or_default(:home_readable, true)
24
24
 
25
- # Need to be root because we don't have any other users at this point
26
- install_user = "root"
27
-
28
- with_user(install_user) do
29
-
30
- adduser_options = []
31
- adduser_options << "-d #{home}" unless home.blank?
32
- adduser_options << "-G #{groups}" unless groups.blank?
33
-
34
- run "id sick || /usr/sbin/adduser #{adduser_options.join(" ")} #{user}"
35
-
36
- run "chmod a+rx #{home}" if home_readable
25
+ adduser_options = []
26
+ adduser_options << "-d #{home}" unless home.blank?
27
+ adduser_options << "-G #{groups}" unless groups.blank?
37
28
 
38
- new_password = prompt.password("Password for user (#{user}): ", true)
29
+ run "id #{user_add} || /usr/sbin/adduser #{adduser_options.join(" ")} #{user_add}"
30
+
31
+ run "chmod a+rx #{home}" if home_readable
39
32
 
40
- run "passwd #{user}" do |channel, stream, data|
41
- logger.info data
42
-
43
- if data =~ /password:/i
44
- channel.send_data "#{new_password}\n"
45
- channel.send_data "#{new_password}\n"
46
- end
33
+ new_password = prompt.password("Password to set for #{user_add}: ", true, false)
34
+
35
+ run "passwd #{user_add}" do |channel, stream, data|
36
+ logger.info data
37
+
38
+ if data =~ /password:/i
39
+ channel.send_data "#{new_password}\n"
40
+ channel.send_data "#{new_password}\n"
47
41
  end
48
-
49
42
  end
50
43
 
51
44
  end
@@ -10,23 +10,24 @@ namespace :mongrel_cluster do
10
10
  *mongrel_port*: Starting port for mongrels. If there are 3 mongrels with port 9000,
11
11
  then instances will be at 9000, 9001, and 9002\n
12
12
  @set :mongrel_port, 9000@\n
13
+ *mongrel_config_dir*: Directory for mongrel config. _Defaults to "[shared_path]/config/mongrel"_
14
+ *mongrel_pid_dir*: Directory for mongrel pids. _Defaults to "[shared_path]/pids"
15
+ *mongrel_config_script*: Config script to load with mongrel. _Defaults to nil_\n
16
+ @set :mongrel_config_script, "config/mongrel_handler.rb"@\n
13
17
  DESC
14
18
  task :setup do
15
19
 
16
20
  # Settings
17
21
  fetch(:mongrel_size)
18
22
  fetch(:mongrel_port)
23
+ fetch_or_default(:mongrel_config_dir, "#{shared_path}/config/mongrel")
24
+ fetch_or_default(:mongrel_pid_dir, "#{shared_path}/pids")
25
+ fetch_or_default(:mongrel_config_script, nil)
19
26
 
20
- run "mkdir -p #{shared_path}/config"
21
-
22
- # Mongrel cluster config needs its own config directory
23
- mongrel_config_path = "#{shared_path}/config/mongrel"
24
- run "mkdir -p #{mongrel_config_path}"
25
-
26
- pid_path = "#{shared_path}/pids"
27
+ run "mkdir -p #{mongrel_config_dir}"
27
28
 
28
29
  put template.load("mongrel/mongrel_cluster.initd.erb"), "/tmp/mongrel_cluster_#{application}.initd"
29
- put template.load("mongrel/mongrel_cluster.yml.erb"), "#{mongrel_config_path}/mongrel_cluster.yml"
30
+ put template.load("mongrel/mongrel_cluster.yml.erb"), "#{mongrel_config_dir}/mongrel_cluster.yml"
30
31
 
31
32
  # Setup the mongrel_cluster init script
32
33
  sudo "install -o root /tmp/mongrel_cluster_#{application}.initd /etc/init.d/mongrel_cluster_#{application}"
data/lib/recipes/mysql.rb CHANGED
@@ -27,9 +27,9 @@ namespace :mysql do
27
27
  *db_name*: Database name (application).\n
28
28
  *db_user*: Database user (application).\n
29
29
  *db_pass*: Database password (application).\n
30
- *grant_locations*: Grant locations. _Defaults to localhost_\n
30
+ *mysql_grant_locations*: Grant locations. _Defaults to localhost_\n
31
31
  @set :grant_locations, [ "localhost", "192.168.1.111" ]@\n
32
- *grant_priv_type*: Grant privilege types. _Defaults to ALL_\n
32
+ *mysql_grant_priv_type*: Grant privilege types. _Defaults to ALL_\n
33
33
  @set :grant_priv_type, "ALL"@\n
34
34
  *mysql_admin_password*: Mysql admin password (to use to connect). Defaults to password prompt.\n
35
35
  @set :mysql_admin_password, prompt.password('Mysql admin password: '))@
@@ -41,12 +41,20 @@ namespace :mysql do
41
41
  fetch(:db_user)
42
42
  fetch(:db_pass)
43
43
  fetch_or_default(:mysql_admin_password, prompt.password('Mysql admin password: '))
44
- fetch_or_default(:grant_locations, [ "localhost" ])
45
- fetch_or_default(:grant_priv_type, "ALL")
46
-
47
- # Add localhost to grant locations
48
- set :locations_for_grant, [ "localhost", web_host, db_host ].compact
44
+ fetch_or_default(:mysql_grant_priv_type, "ALL")
49
45
 
46
+ # Set grant locations to all servers in roles: :search, :db, :app
47
+ unless exists?(:mysql_grant_locations)
48
+ mysql_grant_locations = [ "localhost" ]
49
+ role_names = [ :search, :db, :app ]
50
+ role_names.each do |role_name|
51
+ roles[role_name].each do |role|
52
+ mysql_grant_locations << role.host
53
+ end unless roles[role_name].blank?
54
+ end
55
+ set :mysql_grant_locations, mysql_grant_locations
56
+ end
57
+
50
58
  put template.load("mysql/install_db.sql.erb"), "/tmp/install_db_#{application}.sql"
51
59
  run "mysql -u root -p#{mysql_admin_password} < /tmp/install_db_#{application}.sql"
52
60
  end
data/lib/recipes/nginx.rb CHANGED
@@ -4,14 +4,10 @@ namespace :nginx do
4
4
  desc <<-DESC
5
5
  Install nginx monit hooks.
6
6
 
7
- *nginx_pid_path*: Path to nginx pid file. _Defaults to /var/run/nginx.pid_
8
-
9
- @set :nginx_pid_path, "/var/run/nginx.pid"@
10
-
11
- *monit_conf_dir*: Destination for monitrc. _Defaults to "/etc/monit"_
12
-
13
- @set :monit_conf_dir, "/etc/monit"@
14
-
7
+ *nginx_pid_path*: Path to nginx pid file. _Defaults to /var/run/nginx.pid_\n
8
+ @set :nginx_pid_path, "/var/run/nginx.pid"@\n
9
+ *monit_conf_dir*: Destination for monitrc. _Defaults to "/etc/monit"_\n
10
+ @set :monit_conf_dir, "/etc/monit"@\n
15
11
  DESC
16
12
  task :install_monit do
17
13
 
@@ -26,19 +22,13 @@ namespace :nginx do
26
22
  desc <<-DESC
27
23
  Create and update the nginx vhost include.
28
24
 
29
- mongrel_size: Number of mongrels.
30
-
31
- set :mongrel_size, 3
32
-
33
- mongrel_port: Starting port for mongrels.
34
- If there are 3 mongrels with port 9000, then instances will be at 9000, 9001, and 9002
35
-
36
- set :mongrel_port, 9000
37
-
38
- domain_name: Domain name for nginx virtual host, (without www prefix).
39
-
40
- set :domain_name, "foo.com"
41
-
25
+ *mongrel_size*: Number of mongrels.\n
26
+ @set :mongrel_size, 3@\n
27
+ *mongrel_port*: Starting port for mongrels.\n
28
+ If there are 3 mongrels with port 9000, then instances will be at 9000, 9001, and 9002\n
29
+ @set :mongrel_port, 9000@\n
30
+ *domain_name*: Domain name for nginx virtual host, (without www prefix).\n
31
+ @set :domain_name, "foo.com"@
42
32
  DESC
43
33
  task :setup_mongrel do
44
34
 
data/lib/recipes/rails.rb CHANGED
@@ -4,18 +4,12 @@ namespace :rails do
4
4
  desc <<-DESC
5
5
  Create database yaml in shared path.
6
6
 
7
- *db_name*: Database name (rails).
8
-
9
- @set :db_name, "app_db_name"@
10
-
11
- *db_user*: Database user (rails).
12
-
13
- @set :db_user, "app_db_user"@
14
-
15
- *db_pass*: Database password (rails).
16
-
17
- @set :db_pass, "the_password"@
18
-
7
+ *db_name*: Database name (rails).\n
8
+ @set :db_name, "app_db_name"@\n
9
+ *db_user*: Database user (rails).\n
10
+ @set :db_user, "app_db_user"@\n
11
+ *db_pass*: Database password (rails).\n
12
+ @set :db_pass, "the_password"@\n
19
13
  DESC
20
14
  task :setup do
21
15
 
@@ -30,6 +30,7 @@ namespace :sphinx do
30
30
  *sphinx_db_user*: Sphinx DB user. _Defaults to db_user_\n
31
31
  *sphinx_db_pass*: Sphinx DB password. _Defaults to db_pass_\n
32
32
  *sphinx_db_name*: Sphinx DB name. _Defaults to db_name_\n
33
+ *sphinx_db_port*: Sphinx DB port. _Defaults to db_port_\n
33
34
 
34
35
  *sphinx_db_host*: Sphinx DB host. _Defaults to location for primary :db role_\n
35
36
  *sphinx_host*: Sphinx DB host. _Defaults to location for :search role_\n
@@ -48,24 +49,12 @@ namespace :sphinx do
48
49
  fetch_or_default(:sphinx_db_user, db_user)
49
50
  fetch_or_default(:sphinx_db_pass, db_pass)
50
51
  fetch_or_default(:sphinx_db_name, db_name)
52
+ fetch_or_default(:sphinx_db_port, db_port)
51
53
 
52
- unless exists?(:sphinx_db_host)
53
- db_servers = roles[:db]
54
- unless db_servers.empty?
55
- set :sphinx_db_host, db_servers.first.host
56
- else
57
- raise "No :db roles, and no :sphinx_db_host setting specified"
58
- end
59
- end
60
-
61
- unless exists?(:sphinx_host)
62
- search_servers = roles[:search]
63
- unless search_servers.empty?
64
- set :sphinx_host, search_servers.first.host
65
- else
66
- raise "No :search roles, and no :sphinx_host setting specified"
67
- end
68
- end
54
+ set :sphinx_db_host, roles[:db].first.host unless roles[:db].empty? || exists?(:sphinx_db_host)
55
+ set :sphinx_host, roles[:search].first.host unless roles[:search].empty? || exists?(:sphinx_host)
56
+ raise "No :db roles, and no :sphinx_db_host setting specified" unless exists?(:sphinx_db_host)
57
+ raise "No :search roles, and no :sphinx_host setting specified" unless exists?(:sphinx_host)
69
58
 
70
59
  put template.load(sphinx_conf_template), sphinx_conf_path
71
60
  end
@@ -14,8 +14,8 @@
14
14
  set -e
15
15
  trap ERROR ERR
16
16
 
17
- CONF_DIR=<%= mongrel_config_path %>
18
- PID_DIR=<%= pid_path %>
17
+ CONF_DIR=<%= mongrel_config_dir %>
18
+ PID_DIR=<%= mongrel_pid_dir %>
19
19
  USER=<%= user %>
20
20
 
21
21
  RETVAL=0
@@ -4,8 +4,8 @@ log_file: log/mongrel.log
4
4
  port: "<%= mongrel_port %>"
5
5
  environment: production
6
6
  address: 127.0.0.1
7
- pid_file: <%= pid_path %>/mongrel.pid
7
+ pid_file: <%= mongrel_pid_dir %>/mongrel.pid
8
8
  servers: <%= mongrel_size %>
9
9
  user: <%= user %>
10
10
  group: <%= user %>
11
- config_script: <%= mongrel_config_script %>
11
+ config_script: <%= mongrel_config_script unless mongrel_config_script.blank? %>
@@ -1,5 +1,5 @@
1
- <% grant_locations.each do |location| %>
2
- GRANT <%= grant %> ON <%= db_name %>.* TO '<%= db_user %>'@'<%= location %>' IDENTIFIED BY '<%= db_pass %>';
1
+ <% mysql_grant_locations.each do |location| %>
2
+ GRANT <%= mysql_grant_priv_type %> ON <%= db_name %>.* TO '<%= db_user %>'@'<%= location %>' IDENTIFIED BY '<%= db_pass %>';
3
3
  <% end %>
4
4
 
5
5
  CREATE DATABASE IF NOT EXISTS <%= db_name %>;
data/website/index.html CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
  <div id="version" class="clickable box" onclick='document.location = "http://rubyforge.org/projects/capitate"; return false'>
40
40
  <p>Get Version</p>
41
- <a href="http://rubyforge.org/projects/capitate" class="numbers">0.2.1</a>
41
+ <a href="http://rubyforge.org/projects/capitate" class="numbers">0.2.2</a>
42
42
  </div>
43
43
 
44
44
  <div id="recipes">
@@ -80,8 +80,8 @@
80
80
 
81
81
 
82
82
  <ul>
83
- <li>Plugins to help install applications, via yum or manually unpacking, and building. Also to help upload files sanely, prompt for input, install gems, and run scripts.</li>
84
- <li>Templates for init scripts and application configuration.</li>
83
+ <li>Plugins to help install applications, via yum or manually unpacking, and building. Also to help upload files sanely, prompt for input, install gems, run shell scripts, etc.</li>
84
+ <li>Templates for init scripts, application configuration, etc.</li>
85
85
  <li>Common deployment setup and update_code tasks, such as symlinking in database.yml and more advanced recipes such as sphinx configuration.</li>
86
86
  </ul>
87
87
 
@@ -104,7 +104,7 @@
104
104
  <pre><code>cap HOSTS=x.x.x.x install</code></pre>
105
105
 
106
106
 
107
- <h3>Use it</h3>
107
+ <h3>Use recipes</h3>
108
108
 
109
109
 
110
110
  <p><a href="recipes/index.html">View recipes documentation</a></p>
@@ -137,7 +137,7 @@
137
137
  <p>Comments are welcome. Send an email to <a href="mailto:gabrielh@gmail.com">Gabriel Handford</a> via the <a href="http://groups.google.com/group/capitate">forum</a></p>
138
138
  </div>
139
139
  <p class="coda">
140
- <a href="mailto:gabrielh@gmail.com">Gabriel Handford</a>, 23rd February 2008<br>
140
+ <a href="mailto:gabrielh@gmail.com">Gabriel Handford</a>, 25th February 2008<br>
141
141
  Theme extended from <a href="http://rb2js.rubyforge.org/">Paul Battley</a>
142
142
  </p>
143
143
  </div>
data/website/index.txt CHANGED
@@ -23,8 +23,8 @@ h2. The basics
23
23
 
24
24
  Capitate has:
25
25
 
26
- * Plugins to help install applications, via yum or manually unpacking, and building. Also to help upload files sanely, prompt for input, install gems, and run scripts.
27
- * Templates for init scripts and application configuration.
26
+ * Plugins to help install applications, via yum or manually unpacking, and building. Also to help upload files sanely, prompt for input, install gems, run shell scripts, etc.
27
+ * Templates for init scripts, application configuration, etc.
28
28
  * Common deployment setup and update_code tasks, such as symlinking in database.yml and more advanced recipes such as sphinx configuration.
29
29
 
30
30
 
@@ -41,7 +41,7 @@ and then:
41
41
  cap HOSTS=x.x.x.x install
42
42
 
43
43
 
44
- h3. Use it
44
+ h3. Use recipes
45
45
 
46
46
  "View recipes documentation":recipes/index.html
47
47
 
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capitate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
5
- platform: ruby
4
+ version: 0.2.2
5
+ platform: ""
6
6
  authors:
7
7
  - Gabriel Handford
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-02-24 00:00:00 -05:00
12
+ date: 2008-02-25 00:00:00 -05:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -187,7 +187,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
187
187
  requirements: []
188
188
 
189
189
  rubyforge_project: capitate
190
- rubygems_version: 1.0.1
190
+ rubygems_version: 0.9.5
191
191
  signing_key:
192
192
  specification_version: 2
193
193
  summary: Capistrano recipes, plugins and templates.