rubber 2.12.2 → 2.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +27 -0
- data/lib/rubber/cli.rb +0 -1
- data/lib/rubber/cloud/aws_table_store.rb +1 -1
- data/lib/rubber/cloud/fog_storage.rb +1 -1
- data/lib/rubber/cloud/vsphere.rb +23 -1
- data/lib/rubber/commands/vulcanize.rb +1 -1
- data/lib/rubber/dns/aws.rb +4 -3
- data/lib/rubber/generator.rb +6 -2
- data/lib/rubber/instance.rb +48 -6
- data/lib/rubber/recipes/rubber.rb +8 -0
- data/lib/rubber/recipes/rubber/deploy.rb +9 -3
- data/lib/rubber/recipes/rubber/instances.rb +1 -0
- data/lib/rubber/recipes/rubber/setup.rb +10 -2
- data/lib/rubber/recipes/rubber/static_ips.rb +1 -1
- data/lib/rubber/recipes/rubber/utils.rb +8 -2
- data/lib/rubber/version.rb +1 -1
- data/templates/apache/config/rubber/deploy-apache.rb +1 -1
- data/templates/apache/config/rubber/role/web_tools/tools-apache-vhost.conf +8 -0
- data/templates/apache/config/rubber/rubber-apache.yml +2 -2
- data/templates/base/config/rubber/deploy-util.rb +3 -3
- data/templates/base/config/rubber/rubber.yml +8 -3
- data/templates/cassandra/config/rubber/deploy-cassandra.rb +2 -2
- data/templates/collectd/config/rubber/role/collectd/collectd-ping.conf +11 -2
- data/templates/collectd/config/rubber/role/collectd/thresholds.conf +1 -1
- data/templates/collectd/script/collectd/role/redis/redis_info.rb +0 -1
- data/templates/cruise/config/rubber/role/cruise/my.cnf +1 -1
- data/templates/graphite/config/rubber/deploy-graphite.rb +125 -69
- data/templates/graphite/config/rubber/role/graphite_server/carbon.conf +150 -26
- data/templates/graphite/config/rubber/role/graphite_server/graphite-carbon-default.conf +8 -0
- data/templates/graphite/config/rubber/role/graphite_server/graphite_server-upstart.conf +3 -0
- data/templates/graphite/config/rubber/role/graphite_server/storage-schemas.conf +2 -1
- data/templates/graphite/config/rubber/role/graphite_web/crontab +1 -1
- data/templates/graphite/config/rubber/role/graphite_web/dashboard.conf +1 -1
- data/templates/graphite/config/rubber/role/graphite_web/dashboard.html +1 -1
- data/templates/graphite/config/rubber/role/graphite_web/graphite.wsgi +4 -1
- data/templates/graphite/config/rubber/role/graphite_web/local_settings.py +171 -41
- data/templates/graphite/config/rubber/role/graphite_web/uwsgi.ini +6 -3
- data/templates/graphite/config/rubber/rubber-graphite.yml +7 -1
- data/templates/graphite/templates.rb +9 -0
- data/templates/graylog/config/rubber/common/graylog-rsyslog.conf +1 -1
- data/templates/graylog/config/rubber/role/graylog_server/graylog2.conf +2 -2
- data/templates/jenkins/config/rubber/role/jenkins/jenkins-apache-vhost.conf +5 -0
- data/templates/memcached/config/rubber/role/memcached/memcached.conf +1 -1
- data/templates/mysql/config/rubber/deploy-mysql.rb +2 -2
- data/templates/mysql/config/rubber/role/db/my.cnf +1 -1
- data/templates/mysql_cluster/config/rubber/deploy-mysql_cluster.rb +3 -3
- data/templates/mysql_cluster/config/rubber/role/mysql_sql/my.cnf +1 -1
- data/templates/passenger/config/rubber/role/passenger/passenger-apache-vhost.conf +12 -0
- data/templates/passenger/config/rubber/rubber-passenger.yml +1 -1
- data/templates/passenger_nginx/config/rubber/role/passenger_nginx/nginx.conf +1 -1
- data/templates/percona/config/rubber/deploy-percona.rb +2 -2
- data/templates/percona/config/rubber/role/db/my.cnf +1 -1
- data/templates/postgresql/config/rubber/deploy-postgresql.rb +4 -8
- data/templates/postgresql/config/rubber/role/postgresql/pg_hba.conf +1 -1
- data/templates/postgresql/config/rubber/role/postgresql/postgresql.conf +1 -1
- data/templates/redis/config/rubber/role/redis/redis.conf +1 -1
- data/templates/torquebox/config/rubber/role/app/torquebox-apache-vhost.conf +12 -0
- metadata +4 -2
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
# When sql nodes on same hosts as data nodes, then this config needs to be
|
5
5
|
# additive - the mysql_data node gets generated first due to generator order
|
6
|
-
self_instance =
|
6
|
+
self_instance = rubber_instance
|
7
7
|
if self_instance.role_names.include?('mysql_data')
|
8
8
|
@additive = ['# mysql_sql start', '# mysql_sql end']
|
9
9
|
end
|
@@ -1,5 +1,10 @@
|
|
1
1
|
<%
|
2
|
+
is_old_ubuntu = %w[10.04 12.04].include?(rubber_instance.os_version)
|
3
|
+
|
4
|
+
# Apache 2.2 requires no extension while Apache 2.4 requires the '.conf' extension.
|
2
5
|
@path = "/etc/apache2/sites-available/#{rubber_env.app_name}-passenger"
|
6
|
+
@path << '.conf' unless is_old_ubuntu
|
7
|
+
|
3
8
|
@post = "a2enmod rewrite && a2enmod ssl && a2enmod expires && a2enmod xsendfile && a2ensite #{rubber_env.app_name}-passenger"
|
4
9
|
|
5
10
|
sidekiq_gem_path = if rubber_instances.for_role('sidekiq').any?
|
@@ -18,6 +23,13 @@ Listen <%= port %>
|
|
18
23
|
<%- end -%>
|
19
24
|
DocumentRoot <%= Rubber.root + "/public" %>
|
20
25
|
|
26
|
+
<%- unless is_old_ubuntu %>
|
27
|
+
<Directory <%= Rubber.root + "/public" %>>
|
28
|
+
Options FollowSymLinks
|
29
|
+
Require all granted
|
30
|
+
</Directory>
|
31
|
+
<% end %>
|
32
|
+
|
21
33
|
ErrorDocument 404 /404.html
|
22
34
|
ErrorDocument 500 /500.html
|
23
35
|
|
@@ -62,7 +62,7 @@ http
|
|
62
62
|
passenger_group <%= rubber_env.app_user %>;
|
63
63
|
|
64
64
|
include /etc/nginx/rubber/passenger_nginx.conf;
|
65
|
-
<% if
|
65
|
+
<% if rubber_instance.role_names.include?('web_tools') %>
|
66
66
|
include /etc/nginx/rubber/tools.conf;
|
67
67
|
<% end %>
|
68
68
|
}
|
@@ -44,7 +44,7 @@ namespace :rubber do
|
|
44
44
|
|
45
45
|
master_instances = rubber_instances.for_role("percona_master") & rubber_instances.filtered
|
46
46
|
master_instances.each do |ic|
|
47
|
-
task_name = "_bootstrap_percona_master_#{ic.full_name}".to_sym
|
47
|
+
task_name = "_bootstrap_percona_master_#{ic.full_name}".to_sym
|
48
48
|
task task_name, :hosts => ic.full_name do
|
49
49
|
env = rubber_cfg.environment.bind("percona_master", ic.name)
|
50
50
|
exists = capture("echo $(ls #{env.db_data_dir}/ 2> /dev/null)")
|
@@ -66,7 +66,7 @@ namespace :rubber do
|
|
66
66
|
|
67
67
|
slave_instances = rubber_instances.for_role("percona_slave") & rubber_instances.filtered
|
68
68
|
slave_instances.each do |ic|
|
69
|
-
task_name = "_bootstrap_percona_slave_#{ic.full_name}".to_sym
|
69
|
+
task_name = "_bootstrap_percona_slave_#{ic.full_name}".to_sym
|
70
70
|
task task_name, :hosts => ic.full_name do
|
71
71
|
env = rubber_cfg.environment.bind("percona_slave", ic.name)
|
72
72
|
exists = capture("echo $(ls #{env.db_data_dir}/ 2> /dev/null)")
|
@@ -6,7 +6,7 @@
|
|
6
6
|
@post = "mkdir -p #{log_dir}; chown mysql:adm #{log_dir}; chmod 2750 #{log_dir}"
|
7
7
|
%>
|
8
8
|
|
9
|
-
# Generated by rubber for host <%=
|
9
|
+
# Generated by rubber for host <%= rubber_instance.external_ip %>
|
10
10
|
#
|
11
11
|
# The MySQL database server configuration file.
|
12
12
|
#
|
@@ -8,12 +8,8 @@ namespace :rubber do
|
|
8
8
|
|
9
9
|
task :setup_apt_sources do
|
10
10
|
rubber.sudo_script 'configure_postgresql_repository', <<-ENDSCRIPT
|
11
|
-
|
12
|
-
|
13
|
-
needs_repo=`echo "$release < 11.10" | bc`
|
14
|
-
if [[ $needs_repo == 1 ]]; then
|
15
|
-
add-apt-repository ppa:pitti/postgresql
|
16
|
-
fi
|
11
|
+
echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" > /etc/apt/sources.list.d/pgdg.list
|
12
|
+
wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
|
17
13
|
ENDSCRIPT
|
18
14
|
end
|
19
15
|
|
@@ -40,7 +36,7 @@ namespace :rubber do
|
|
40
36
|
# been bootstrapped for that role before
|
41
37
|
master_instances = rubber_instances.for_role("postgresql_master") & rubber_instances.filtered
|
42
38
|
master_instances.each do |ic|
|
43
|
-
task_name = "_bootstrap_postgresql_master_#{ic.full_name}".to_sym
|
39
|
+
task_name = "_bootstrap_postgresql_master_#{ic.full_name}".to_sym
|
44
40
|
task task_name, :hosts => ic.full_name do
|
45
41
|
env = rubber_cfg.environment.bind("postgresql_master", ic.name)
|
46
42
|
exists = capture("echo $(ls #{env.postgresql_data_dir}/ 2> /dev/null)")
|
@@ -68,7 +64,7 @@ namespace :rubber do
|
|
68
64
|
|
69
65
|
slave_instances = rubber_instances.for_role("postgresql_slave") & rubber_instances.filtered
|
70
66
|
slave_instances.each do |ic|
|
71
|
-
task_name = "_bootstrap_postgresql_slave_#{ic.full_name}".to_sym
|
67
|
+
task_name = "_bootstrap_postgresql_slave_#{ic.full_name}".to_sym
|
72
68
|
task task_name, :hosts => ic.full_name do
|
73
69
|
env = rubber_cfg.environment.bind("postgresql_slave", ic.name)
|
74
70
|
exists = capture("echo $(ls #{env.postgresql_data_dir}/ 2> /dev/null)")
|
@@ -100,4 +100,4 @@ host replication <%= rubber_env.db_replication_user %> <%= network %> <%
|
|
100
100
|
host all <%= rubber_env.db_user %> <%= network %> <%= scheme %>
|
101
101
|
<% end %>
|
102
102
|
|
103
|
-
host all <%= rubber_env.db_user %> <%=
|
103
|
+
host all <%= rubber_env.db_user %> <%= rubber_instance.internal_ip %>/32 <%= scheme %>
|
@@ -187,7 +187,7 @@ wal_level = hot_standby # minimal, archive, or hot_standby
|
|
187
187
|
#archive_timeout = 0 # force a logfile segment switch after this
|
188
188
|
# number of seconds; 0 disables
|
189
189
|
|
190
|
-
<%- if
|
190
|
+
<%- if rubber_instance.role_names.include?('postgresql_master') %>
|
191
191
|
# - Streaming Replication -
|
192
192
|
|
193
193
|
#------------------------------------------------------------------------------
|
@@ -197,7 +197,7 @@ dir <%= rubber_env.redis_db_dir %>
|
|
197
197
|
<%-
|
198
198
|
redis_master = rubber_instances.for_role('redis_master').first
|
199
199
|
|
200
|
-
if
|
200
|
+
if rubber_instance.role_names.include?('redis_slave')
|
201
201
|
%>
|
202
202
|
################################# REPLICATION #################################
|
203
203
|
|
@@ -1,5 +1,10 @@
|
|
1
1
|
<%
|
2
|
+
is_old_ubuntu = %w[10.04 12.04].include?(rubber_instance.os_version)
|
3
|
+
|
4
|
+
# Apache 2.2 requires no extension while Apache 2.4 requires the '.conf' extension.
|
2
5
|
@path = "/etc/apache2/sites-available/#{rubber_env.app_name}-torquebox"
|
6
|
+
@path << '.conf' unless is_old_ubuntu
|
7
|
+
|
3
8
|
@post = "a2enmod rewrite && a2enmod ssl && a2enmod expires && a2enmod xsendfile && a2ensite #{rubber_env.app_name}-torquebox"
|
4
9
|
|
5
10
|
sidekiq_gem_path = if rubber_instances.for_role('sidekiq').any?
|
@@ -19,6 +24,13 @@ Listen <%= port %>
|
|
19
24
|
<%- end -%>
|
20
25
|
DocumentRoot <%= Rubber.root + "/public" %>
|
21
26
|
|
27
|
+
<%- unless is_old_ubuntu %>
|
28
|
+
<Directory <%= Rubber.root + "/public" %>>
|
29
|
+
Options FollowSymLinks
|
30
|
+
Require all granted
|
31
|
+
</Directory>
|
32
|
+
<% end %>
|
33
|
+
|
22
34
|
ErrorDocument 404 /404.html
|
23
35
|
ErrorDocument 500 /500.html
|
24
36
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Conway
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-10-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -378,6 +378,7 @@ files:
|
|
378
378
|
- templates/graphite/config/rubber/deploy-graphite.rb
|
379
379
|
- templates/graphite/config/rubber/role/collectd/graphite-collectd.conf
|
380
380
|
- templates/graphite/config/rubber/role/graphite_server/carbon.conf
|
381
|
+
- templates/graphite/config/rubber/role/graphite_server/graphite-carbon-default.conf
|
381
382
|
- templates/graphite/config/rubber/role/graphite_server/graphite_server-upstart.conf
|
382
383
|
- templates/graphite/config/rubber/role/graphite_server/monit-graphite_server.conf
|
383
384
|
- templates/graphite/config/rubber/role/graphite_server/storage-schemas.conf
|
@@ -390,6 +391,7 @@ files:
|
|
390
391
|
- templates/graphite/config/rubber/role/graphite_web/monit-graphite_web.conf
|
391
392
|
- templates/graphite/config/rubber/role/graphite_web/uwsgi.ini
|
392
393
|
- templates/graphite/config/rubber/rubber-graphite.yml
|
394
|
+
- templates/graphite/templates.rb
|
393
395
|
- templates/graphite/templates.yml
|
394
396
|
- templates/graylog/config/rubber/common/graylog-rsyslog.conf
|
395
397
|
- templates/graylog/config/rubber/deploy-graylog.rb
|