from-scratch 0.3.0 → 0.5.0
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.
- checksums.yaml +4 -4
- data/Berksfile +2 -1
- data/Berksfile.lock +20 -1
- data/cookbooks/bluepill/CHANGELOG.md +93 -0
- data/cookbooks/bluepill/README.md +91 -0
- data/cookbooks/bluepill/attributes/default.rb +44 -0
- data/cookbooks/bluepill/metadata.json +1 -0
- data/cookbooks/bluepill/providers/service.rb +172 -0
- data/cookbooks/bluepill/recipes/default.rb +48 -0
- data/cookbooks/bluepill/recipes/rsyslog.rb +28 -0
- data/cookbooks/bluepill/resources/service.rb +27 -0
- data/cookbooks/bluepill/templates/default/bluepill_init.fedora.erb +34 -0
- data/cookbooks/bluepill/templates/default/bluepill_init.freebsd.erb +32 -0
- data/cookbooks/bluepill/templates/default/bluepill_init.lsb.erb +37 -0
- data/cookbooks/bluepill/templates/default/bluepill_init.rhel.erb +34 -0
- data/cookbooks/bluepill/templates/default/bluepill_rsyslog.conf.erb +1 -0
- data/cookbooks/nginx/CHANGELOG.md +435 -0
- data/cookbooks/nginx/README.md +521 -0
- data/cookbooks/nginx/attributes/auth_request.rb +23 -0
- data/cookbooks/nginx/attributes/default.rb +131 -0
- data/cookbooks/nginx/attributes/devel.rb +24 -0
- data/cookbooks/nginx/attributes/echo.rb +24 -0
- data/cookbooks/nginx/attributes/geoip.rb +31 -0
- data/cookbooks/nginx/attributes/headers_more.rb +24 -0
- data/cookbooks/nginx/attributes/lua.rb +28 -0
- data/cookbooks/nginx/attributes/naxsi.rb +24 -0
- data/cookbooks/nginx/attributes/openssl_source.rb +23 -0
- data/cookbooks/nginx/attributes/pagespeed.rb +9 -0
- data/cookbooks/nginx/attributes/passenger.rb +58 -0
- data/cookbooks/nginx/attributes/rate_limiting.rb +23 -0
- data/cookbooks/nginx/attributes/repo.rb +35 -0
- data/cookbooks/nginx/attributes/set_misc.rb +8 -0
- data/cookbooks/nginx/attributes/socketproxy.rb +13 -0
- data/cookbooks/nginx/attributes/source.rb +42 -0
- data/cookbooks/nginx/attributes/status.rb +22 -0
- data/cookbooks/nginx/attributes/syslog.rb +24 -0
- data/cookbooks/nginx/attributes/upload_progress.rb +26 -0
- data/cookbooks/nginx/definitions/nginx_site.rb +50 -0
- data/cookbooks/nginx/files/default/mime.types +78 -0
- data/cookbooks/nginx/files/default/naxsi_core.rules +82 -0
- data/cookbooks/nginx/libraries/matchers.rb +20 -0
- data/cookbooks/nginx/metadata.json +351 -0
- data/cookbooks/nginx/recipes/authorized_ips.rb +32 -0
- data/cookbooks/nginx/recipes/commons.rb +24 -0
- data/cookbooks/nginx/recipes/commons_conf.rb +42 -0
- data/cookbooks/nginx/recipes/commons_dir.rb +57 -0
- data/cookbooks/nginx/recipes/commons_script.rb +29 -0
- data/cookbooks/nginx/recipes/default.rb +31 -0
- data/cookbooks/nginx/recipes/headers_more_module.rb +50 -0
- data/cookbooks/nginx/recipes/http_auth_request_module.rb +52 -0
- data/cookbooks/nginx/recipes/http_echo_module.rb +46 -0
- data/cookbooks/nginx/recipes/http_geoip_module.rb +113 -0
- data/cookbooks/nginx/recipes/http_gzip_static_module.rb +30 -0
- data/cookbooks/nginx/recipes/http_mp4_module.rb +2 -0
- data/cookbooks/nginx/recipes/http_perl_module.rb +23 -0
- data/cookbooks/nginx/recipes/http_realip_module.rb +38 -0
- data/cookbooks/nginx/recipes/http_spdy_module.rb +23 -0
- data/cookbooks/nginx/recipes/http_ssl_module.rb +23 -0
- data/cookbooks/nginx/recipes/http_stub_status_module.rb +36 -0
- data/cookbooks/nginx/recipes/ipv6.rb +23 -0
- data/cookbooks/nginx/recipes/lua.rb +47 -0
- data/cookbooks/nginx/recipes/naxsi_module.rb +52 -0
- data/cookbooks/nginx/recipes/ngx_devel_module.rb +44 -0
- data/cookbooks/nginx/recipes/ngx_lua_module.rb +47 -0
- data/cookbooks/nginx/recipes/ohai_plugin.rb +35 -0
- data/cookbooks/nginx/recipes/openssl_source.rb +45 -0
- data/cookbooks/nginx/recipes/package.rb +52 -0
- data/cookbooks/nginx/recipes/pagespeed_module.rb +62 -0
- data/cookbooks/nginx/recipes/passenger.rb +56 -0
- data/cookbooks/nginx/recipes/repo.rb +41 -0
- data/cookbooks/nginx/recipes/repo_passenger.rb +39 -0
- data/cookbooks/nginx/recipes/set_misc.rb +30 -0
- data/cookbooks/nginx/recipes/socketproxy.rb +26 -0
- data/cookbooks/nginx/recipes/source.rb +205 -0
- data/cookbooks/nginx/recipes/syslog_module.rb +69 -0
- data/cookbooks/nginx/recipes/upload_progress_module.rb +53 -0
- data/cookbooks/nginx/templates/debian/nginx.init.erb +97 -0
- data/cookbooks/nginx/templates/default/default-site.erb +11 -0
- data/cookbooks/nginx/templates/default/modules/authorized_ip.erb +6 -0
- data/cookbooks/nginx/templates/default/modules/http_geoip.conf.erb +4 -0
- data/cookbooks/nginx/templates/default/modules/http_gzip_static.conf.erb +1 -0
- data/cookbooks/nginx/templates/default/modules/http_realip.conf.erb +7 -0
- data/cookbooks/nginx/templates/default/modules/nginx_status.erb +14 -0
- data/cookbooks/nginx/templates/default/modules/passenger.conf.erb +13 -0
- data/cookbooks/nginx/templates/default/modules/socketproxy.conf.erb +89 -0
- data/cookbooks/nginx/templates/default/modules/upload_progress.erb +4 -0
- data/cookbooks/nginx/templates/default/nginx-upstart.conf.erb +39 -0
- data/cookbooks/nginx/templates/default/nginx.conf.erb +103 -0
- data/cookbooks/nginx/templates/default/nginx.init.erb +111 -0
- data/cookbooks/nginx/templates/default/nginx.pill.erb +15 -0
- data/cookbooks/nginx/templates/default/nginx.sysconfig.erb +1 -0
- data/cookbooks/nginx/templates/default/nxdissite.erb +29 -0
- data/cookbooks/nginx/templates/default/nxensite.erb +38 -0
- data/cookbooks/nginx/templates/default/plugins/nginx.rb.erb +66 -0
- data/cookbooks/nginx/templates/default/sv-nginx-log-run.erb +2 -0
- data/cookbooks/nginx/templates/default/sv-nginx-run.erb +4 -0
- data/cookbooks/nginx/templates/gentoo/nginx.init.erb +87 -0
- data/cookbooks/nginx/templates/suse/nginx.init.erb +115 -0
- data/cookbooks/nginx/templates/ubuntu/nginx.init.erb +97 -0
- data/cookbooks/ohai/CHANGELOG.md +69 -0
- data/cookbooks/ohai/README.md +89 -0
- data/cookbooks/ohai/attributes/default.rb +31 -0
- data/cookbooks/ohai/files/default/plugins/README +1 -0
- data/cookbooks/ohai/libraries/matchers.rb +14 -0
- data/cookbooks/ohai/metadata.json +1 -0
- data/cookbooks/ohai/providers/hint.rb +38 -0
- data/cookbooks/ohai/recipes/default.rb +52 -0
- data/cookbooks/ohai/resources/hint.rb +5 -0
- data/cookbooks/packagecloud/CHANGELOG.md +12 -0
- data/cookbooks/packagecloud/README.md +80 -0
- data/cookbooks/packagecloud/attributes/default.rb +8 -0
- data/cookbooks/packagecloud/libraries/helper.rb +43 -0
- data/cookbooks/packagecloud/libraries/matcher.rb +7 -0
- data/cookbooks/packagecloud/metadata.json +1 -0
- data/cookbooks/packagecloud/providers/repo.rb +212 -0
- data/cookbooks/packagecloud/resources/repo.rb +10 -0
- data/cookbooks/packagecloud/templates/.kitchen/logs/kitchen.log +29 -0
- data/cookbooks/packagecloud/templates/default/apt.erb +2 -0
- data/cookbooks/packagecloud/templates/default/yum.erb +15 -0
- data/cookbooks/rsyslog/CHANGELOG.md +193 -0
- data/cookbooks/rsyslog/README.md +276 -0
- data/cookbooks/rsyslog/attributes/default.rb +131 -0
- data/cookbooks/rsyslog/libraries/helpers.rb +25 -0
- data/cookbooks/rsyslog/metadata.json +1 -0
- data/cookbooks/rsyslog/providers/file_input.rb +44 -0
- data/cookbooks/rsyslog/recipes/client.rb +87 -0
- data/cookbooks/rsyslog/recipes/default.rb +89 -0
- data/cookbooks/rsyslog/recipes/server.rb +44 -0
- data/cookbooks/rsyslog/resources/file_input.rb +28 -0
- data/cookbooks/rsyslog/templates/default/35-server-per-host.conf.erb +62 -0
- data/cookbooks/rsyslog/templates/default/49-relp.conf.erb +10 -0
- data/cookbooks/rsyslog/templates/default/49-remote.conf.erb +30 -0
- data/cookbooks/rsyslog/templates/default/50-default.conf.erb +6 -0
- data/cookbooks/rsyslog/templates/default/file-input.conf.erb +15 -0
- data/cookbooks/rsyslog/templates/default/omnios-manifest.xml.erb +30 -0
- data/cookbooks/rsyslog/templates/default/rsyslog.conf.erb +117 -0
- data/cookbooks/rsyslog/templates/smartos/50-default.conf.erb +18 -0
- data/cookbooks/runit/.kitchen.cloud.yml +103 -0
- data/cookbooks/runit/.kitchen.yml +38 -0
- data/cookbooks/runit/.rspec +3 -0
- data/cookbooks/runit/.rubocop.yml +45 -0
- data/cookbooks/runit/Berksfile.disabled +11 -0
- data/cookbooks/runit/CHANGELOG.md +226 -0
- data/cookbooks/runit/CONTRIBUTING.md +266 -0
- data/cookbooks/runit/Cheffile +11 -0
- data/cookbooks/runit/Gemfile +17 -0
- data/cookbooks/runit/LICENSE +201 -0
- data/cookbooks/runit/README.md +435 -0
- data/cookbooks/runit/Rakefile +23 -0
- data/cookbooks/runit/TESTING.md +26 -0
- data/cookbooks/runit/attributes/default.rb +62 -0
- data/cookbooks/runit/files/default/runit.seed +1 -0
- data/cookbooks/runit/files/default/runsvdir +0 -0
- data/cookbooks/runit/files/ubuntu-6.10/runsvdir +6 -0
- data/cookbooks/runit/files/ubuntu-7.04/runsvdir +7 -0
- data/cookbooks/runit/files/ubuntu-7.10/runsvdir +7 -0
- data/cookbooks/runit/files/ubuntu-8.04/runsvdir +7 -0
- data/cookbooks/runit/libraries/default.rb +0 -0
- data/cookbooks/runit/libraries/helpers.rb +190 -0
- data/cookbooks/runit/libraries/matchers.rb +69 -0
- data/cookbooks/runit/libraries/provider_runit_service.rb +326 -0
- data/cookbooks/runit/libraries/resource_runit_service.rb +267 -0
- data/cookbooks/runit/metadata.json +50 -0
- data/cookbooks/runit/recipes/default.rb +91 -0
- data/cookbooks/runit/templates/debian/init.d.erb +66 -0
- data/cookbooks/runit/templates/default/log-config.erb +24 -0
- data/cookbooks/runit/templates/gentoo/runit-start.sh.erb +32 -0
- data/cookbooks/scratchify/Berksfile +2 -1
- data/cookbooks/scratchify/Berksfile.lock +20 -1
- data/cookbooks/scratchify/lib/from-scratch.rb +1 -4
- data/cookbooks/scratchify/lib/from-scratch/version.rb +1 -1
- data/cookbooks/scratchify/metadata.json +5 -2
- data/cookbooks/scratchify/recipes/default.rb +15 -1
- data/cookbooks/scratchify/recipes/nginx_site.rb +4 -0
- data/cookbooks/scratchify/recipes/pre_rvm.rb +5 -0
- data/cookbooks/scratchify/templates/nginx.erb +31 -0
- data/cookbooks/scratchify/templates/node.json.erb +21 -6
- data/cookbooks/yum-epel/CHANGELOG.md +84 -0
- data/cookbooks/yum-epel/README.md +172 -0
- data/cookbooks/yum-epel/attributes/default.rb +1 -0
- data/cookbooks/yum-epel/attributes/epel-debuginfo.rb +28 -0
- data/cookbooks/yum-epel/attributes/epel-source.rb +28 -0
- data/cookbooks/yum-epel/attributes/epel-testing-debuginfo.rb +28 -0
- data/cookbooks/yum-epel/attributes/epel-testing-source.rb +28 -0
- data/cookbooks/yum-epel/attributes/epel-testing.rb +28 -0
- data/cookbooks/yum-epel/attributes/epel.rb +28 -0
- data/cookbooks/yum-epel/metadata.json +1 -0
- data/cookbooks/yum-epel/recipes/default.rb +61 -0
- data/cookbooks/yum/CHANGELOG.md +294 -0
- data/cookbooks/yum/README.md +285 -0
- data/cookbooks/yum/attributes/main.rb +100 -0
- data/cookbooks/yum/libraries/matchers.rb +27 -0
- data/cookbooks/yum/metadata.json +1 -0
- data/cookbooks/yum/providers/globalconfig.rb +41 -0
- data/cookbooks/yum/providers/repository.rb +106 -0
- data/cookbooks/yum/recipes/default.rb +26 -0
- data/cookbooks/yum/resources/globalconfig.rb +109 -0
- data/cookbooks/yum/resources/repository.rb +69 -0
- data/cookbooks/yum/templates/default/main.erb +276 -0
- data/cookbooks/yum/templates/default/repo.erb +125 -0
- data/lib/from-scratch.rb +1 -0
- data/lib/from-scratch/version.rb +1 -1
- data/metadata.rb +5 -1
- data/recipes/default.rb +15 -1
- data/recipes/nginx_site.rb +4 -0
- data/recipes/pre_rvm.rb +5 -0
- data/templates/nginx.erb +31 -0
- data/templates/node.json.erb +21 -6
- metadata +194 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<% if @config.log_size -%>
|
|
2
|
+
s<%= @config.log_size %>
|
|
3
|
+
<% end -%>
|
|
4
|
+
<% if @config.log_num -%>
|
|
5
|
+
n<%= @config.log_num %>
|
|
6
|
+
<% end -%>
|
|
7
|
+
<% if @config.log_min -%>
|
|
8
|
+
N<%= @config.log_min %>
|
|
9
|
+
<% end -%>
|
|
10
|
+
<% if @config.log_timeout -%>
|
|
11
|
+
t<%= @config.log_timeout %>
|
|
12
|
+
<% end -%>
|
|
13
|
+
<% if @config.log_processor -%>
|
|
14
|
+
!<%= @config.log_processor %>
|
|
15
|
+
<% end -%>
|
|
16
|
+
<% if @config.log_socket -%>
|
|
17
|
+
u<%= @config.log_socket %>
|
|
18
|
+
<% end -%>
|
|
19
|
+
<% if @config.log_prefix -%>
|
|
20
|
+
p<%= @config.log_prefix %>
|
|
21
|
+
<% end -%>
|
|
22
|
+
<% if @config.log_config_append -%>
|
|
23
|
+
<%= @config.log_config_append %>
|
|
24
|
+
<% end -%>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
#!/sbin/runscript
|
|
2
|
+
# Copyright 1999-2006 Gentoo Foundation
|
|
3
|
+
# Distributed under the terms of the GNU General Public License v2
|
|
4
|
+
# $Header: $
|
|
5
|
+
|
|
6
|
+
depend() {
|
|
7
|
+
after net
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
start() {
|
|
11
|
+
ebegin "Starting runsvdir"
|
|
12
|
+
start-stop-daemon --start --exec /usr/bin/runsvdir \
|
|
13
|
+
--background --make-pidfile \
|
|
14
|
+
--pidfile /var/run/runsvdir.pid -- <%= node.runit.sv_dir %>
|
|
15
|
+
eend $?
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
stop() {
|
|
19
|
+
local ret1 ret2
|
|
20
|
+
ebegin "Stopping runsvdir"
|
|
21
|
+
start-stop-daemon --stop --oknodo --pidfile /var/run/runsvdir.pid
|
|
22
|
+
ret1=$?
|
|
23
|
+
eend ${ret1}
|
|
24
|
+
|
|
25
|
+
ebegin "Stopping services and logging"
|
|
26
|
+
sv shutdown -w 10 <%= node.runit.sv_dir %>/*
|
|
27
|
+
ret2=$?
|
|
28
|
+
eend ${ret2}
|
|
29
|
+
|
|
30
|
+
return $((ret1+ret2))
|
|
31
|
+
}
|
|
32
|
+
|
|
@@ -6,8 +6,9 @@ source "https://supermarket.chef.io"
|
|
|
6
6
|
metadata
|
|
7
7
|
|
|
8
8
|
cookbook 'user'
|
|
9
|
-
cookbook 'rvm', github: '
|
|
9
|
+
cookbook 'rvm', github: 'martinisoft/chef-rvm'
|
|
10
10
|
cookbook 'postgresql', github: 'sandrew/postgresql', branch: 'develop'
|
|
11
|
+
cookbook 'nginx'
|
|
11
12
|
|
|
12
13
|
# cookbook 'dpkg_packages', git: "https://gitlab.acid.cl/acidlabs/chef-dpkg-packages.git"
|
|
13
14
|
# cookbook 'nginx', git: "https://gitlab.acid.cl/acidlabs/chef-nginx.git"
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
DEPENDENCIES
|
|
2
|
+
nginx
|
|
2
3
|
postgresql
|
|
3
4
|
git: git://github.com/sandrew/postgresql.git
|
|
4
5
|
revision: a1f3ce3e2e22515bc175011a3e3faa0af98dd8db
|
|
5
6
|
branch: develop
|
|
6
7
|
rvm
|
|
7
|
-
git: git://github.com/
|
|
8
|
+
git: git://github.com/martinisoft/chef-rvm.git
|
|
8
9
|
revision: 08ec265f277e112a5a2e4b201bd32ddfe1bb968c
|
|
9
10
|
scratchify
|
|
10
11
|
path: .
|
|
@@ -13,21 +14,39 @@ DEPENDENCIES
|
|
|
13
14
|
|
|
14
15
|
GRAPH
|
|
15
16
|
apt (2.9.2)
|
|
17
|
+
bluepill (2.4.0)
|
|
18
|
+
rsyslog (>= 0.0.0)
|
|
16
19
|
build-essential (2.2.4)
|
|
17
20
|
chef-sugar (3.1.1)
|
|
18
21
|
chef_gem (0.1.0)
|
|
19
22
|
java (1.35.0)
|
|
23
|
+
nginx (2.7.6)
|
|
24
|
+
apt (~> 2.2)
|
|
25
|
+
bluepill (~> 2.3)
|
|
26
|
+
build-essential (~> 2.0)
|
|
27
|
+
ohai (~> 2.0)
|
|
28
|
+
runit (~> 1.2)
|
|
29
|
+
yum-epel (~> 0.3)
|
|
30
|
+
ohai (2.0.3)
|
|
20
31
|
openssl (4.4.0)
|
|
21
32
|
chef-sugar (>= 3.1.1)
|
|
33
|
+
packagecloud (0.1.0)
|
|
22
34
|
postgresql (3.4.21)
|
|
23
35
|
apt (>= 1.9.0)
|
|
24
36
|
build-essential (>= 0.0.0)
|
|
25
37
|
openssl (~> 4.0)
|
|
38
|
+
rsyslog (2.2.0)
|
|
39
|
+
runit (1.7.4)
|
|
40
|
+
packagecloud (>= 0.0.0)
|
|
26
41
|
rvm (0.10.1)
|
|
27
42
|
chef_gem (>= 0.0.0)
|
|
28
43
|
java (>= 0.0.0)
|
|
29
44
|
scratchify (0.1.0)
|
|
45
|
+
nginx (>= 0.0.0)
|
|
30
46
|
postgresql (>= 0.0.0)
|
|
31
47
|
rvm (>= 0.0.0)
|
|
32
48
|
user (>= 0.0.0)
|
|
33
49
|
user (0.4.2)
|
|
50
|
+
yum (3.8.1)
|
|
51
|
+
yum-epel (0.6.4)
|
|
52
|
+
yum (~> 3.2)
|
|
@@ -7,10 +7,7 @@ module FromScratch
|
|
|
7
7
|
app_name, host = ARGV
|
|
8
8
|
ssh_pub_key = `cat ~/.ssh/id_rsa.pub`.strip
|
|
9
9
|
postgresql_admin_password = `echo -n '#{SecureRandom.base64(16)}''postgres' | openssl md5 | sed -e 's/.* /md5/'`.strip
|
|
10
|
-
|
|
11
|
-
puts "Your PG #{app_name} password is:"
|
|
12
|
-
puts postgresql_user_password = SecureRandom.base64(16)
|
|
13
|
-
puts
|
|
10
|
+
postgresql_user_password = SecureRandom.base64(16)
|
|
14
11
|
|
|
15
12
|
{ node: ['nodes', host], user: ['data_bags/users', 'deploy'] }.each do |from, to|
|
|
16
13
|
FileUtils.mkdir_p File.expand_path("../../tmp/#{to[0]}", __FILE__)
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"user": ">= 0.0.0",
|
|
14
14
|
"rvm": ">= 0.0.0",
|
|
15
|
-
"postgresql": ">= 0.0.0"
|
|
15
|
+
"postgresql": ">= 0.0.0",
|
|
16
|
+
"nginx": ">= 0.0.0"
|
|
16
17
|
},
|
|
17
18
|
"recommendations": {
|
|
18
19
|
},
|
|
@@ -29,7 +30,9 @@
|
|
|
29
30
|
"groupings": {
|
|
30
31
|
},
|
|
31
32
|
"recipes": {
|
|
32
|
-
"scratchify": "
|
|
33
|
+
"scratchify": "sets up some user directories and files",
|
|
34
|
+
"scratchify::pre_rvm": "workaround for RVM recipe bug",
|
|
35
|
+
"scratchify::nginx_site": "loads nginx site config"
|
|
33
36
|
},
|
|
34
37
|
"version": "0.1.0",
|
|
35
38
|
"source_url": "",
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
["#{node['scratchify']['app_name']}", "#{node['scratchify']['app_name']}/shared", "#{node['scratchify']['app_name']}/shared/config", "#{node['scratchify']['app_name']}/shared/log"].each do |path|
|
|
2
|
+
directory "/home/deploy/#{path}" do
|
|
3
|
+
owner 'deploy'
|
|
4
|
+
group 'deploy'
|
|
5
|
+
mode '0755'
|
|
6
|
+
recursive true
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
directory "/home/deploy/#{node['scratchify']['app_name']}/shared/log" do
|
|
2
11
|
owner 'deploy'
|
|
3
12
|
group 'deploy'
|
|
4
13
|
mode '0755'
|
|
@@ -18,3 +27,8 @@ template "/home/deploy/#{node['scratchify']['app_name']}/shared/config/secrets.y
|
|
|
18
27
|
group 'deploy'
|
|
19
28
|
mode '0600'
|
|
20
29
|
end
|
|
30
|
+
|
|
31
|
+
# required for json gem
|
|
32
|
+
if node['platform_family'] == 'debian'
|
|
33
|
+
package 'libgmp-dev'
|
|
34
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
upstream <%= node['scratchify']['app_name'] %>_upstream {
|
|
2
|
+
server unix:/home/deploy/<%= node['scratchify']['app_name'] %>/shared/tmp/sockets/application.sock fail_timeout=0;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
server {
|
|
6
|
+
listen 80 default_server;
|
|
7
|
+
server_name localhost;
|
|
8
|
+
|
|
9
|
+
client_max_body_size 10M;
|
|
10
|
+
keepalive_timeout 10;
|
|
11
|
+
|
|
12
|
+
root /home/deploy/<%= node['scratchify']['app_name'] %>/current/public;
|
|
13
|
+
error_page 500 503 502 504 /500.html;
|
|
14
|
+
try_files $uri/index.html $uri @<%= node['scratchify']['app_name'] %>_location;
|
|
15
|
+
|
|
16
|
+
location @<%= node['scratchify']['app_name'] %>_location {
|
|
17
|
+
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
18
|
+
proxy_set_header Host $http_host;
|
|
19
|
+
proxy_redirect off;
|
|
20
|
+
|
|
21
|
+
proxy_pass http://<%= node['scratchify']['app_name'] %>_upstream;
|
|
22
|
+
access_log /home/deploy/<%= node['scratchify']['app_name'] %>/shared/log/nginx.access.log;
|
|
23
|
+
error_log /home/deploy/<%= node['scratchify']['app_name'] %>/shared/log/nginx.error.log;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
location ^~ /assets/ {
|
|
27
|
+
gzip_static on;
|
|
28
|
+
expires max;
|
|
29
|
+
add_header Cache-Control public;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -1,20 +1,30 @@
|
|
|
1
1
|
{
|
|
2
2
|
"run_list": [
|
|
3
|
-
"recipe[
|
|
3
|
+
"recipe[user::data_bag]",
|
|
4
|
+
"recipe[scratchify::pre_rvm]",
|
|
5
|
+
"recipe[rvm::user]",
|
|
4
6
|
"recipe[postgresql::server]",
|
|
5
7
|
"recipe[postgresql::config_pgtune]",
|
|
6
8
|
"recipe[postgresql::setup_users]",
|
|
7
9
|
"recipe[postgresql::setup_databases]",
|
|
8
|
-
"recipe[
|
|
9
|
-
"recipe[
|
|
10
|
+
"recipe[scratchify]",
|
|
11
|
+
"recipe[nginx]",
|
|
12
|
+
"recipe[scratchify::nginx_site]"
|
|
10
13
|
],
|
|
11
14
|
|
|
12
15
|
"users": ["deploy"],
|
|
13
16
|
|
|
14
17
|
"rvm": {
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
+
"user_default_ruby": "2.2.3",
|
|
19
|
+
"user_install_rubies": true,
|
|
20
|
+
"installs": {
|
|
21
|
+
"deploy": true
|
|
22
|
+
},
|
|
23
|
+
"user_installs": [
|
|
24
|
+
{
|
|
25
|
+
"user": "deploy"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
18
28
|
"gpg": {}
|
|
19
29
|
},
|
|
20
30
|
|
|
@@ -65,6 +75,11 @@
|
|
|
65
75
|
"app_name": "<%= app_name %>"
|
|
66
76
|
},
|
|
67
77
|
|
|
78
|
+
"nginx": {
|
|
79
|
+
"default_site_enabled": false,
|
|
80
|
+
"pid": "/var/run/nginx.pid"
|
|
81
|
+
},
|
|
82
|
+
|
|
68
83
|
"automatic": {
|
|
69
84
|
"ipaddress": "<%= host %>"
|
|
70
85
|
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
yum-epel Cookbook CHANGELOG
|
|
2
|
+
======================
|
|
3
|
+
This file is used to list changes made in each version of the yum-epel cookbook.
|
|
4
|
+
|
|
5
|
+
v0.6.4 (2015-10-27)
|
|
6
|
+
-------------------
|
|
7
|
+
- Updating default recipe for Chef 13 deprecation warnings. Not
|
|
8
|
+
passing nil.
|
|
9
|
+
|
|
10
|
+
v0.6.3 (2015-09-22)
|
|
11
|
+
-------------------
|
|
12
|
+
- Added standard Chef gitignore and chefignore files
|
|
13
|
+
- Added the standard chef rubocop config
|
|
14
|
+
- Update contributing, maintainers, and testing docs
|
|
15
|
+
- Update Chefspec config to 4.X format
|
|
16
|
+
- Update distro versions in the Kitchen config
|
|
17
|
+
- Add Travis CI and cookbook version badges in the readme
|
|
18
|
+
- Expand the requirements section in the readme
|
|
19
|
+
- Add additional distros to the metadata
|
|
20
|
+
- Added source_url and issues_url metadata
|
|
21
|
+
|
|
22
|
+
v0.6.2 (2015-06-21)
|
|
23
|
+
-------------------
|
|
24
|
+
- Depending on yum ~> 3.2
|
|
25
|
+
- Support for the password attribute wasn't added to the
|
|
26
|
+
yum_repository LWRP until yum 3.2.0.
|
|
27
|
+
|
|
28
|
+
v0.6.1 (2015-06-21)
|
|
29
|
+
-------------------
|
|
30
|
+
- Switching to https for URL links
|
|
31
|
+
- Using metalink URLs
|
|
32
|
+
|
|
33
|
+
v0.6.0 (2015-01-03)
|
|
34
|
+
-------------------
|
|
35
|
+
- Adding EL7 support
|
|
36
|
+
|
|
37
|
+
v0.5.3 (2014-10-28)
|
|
38
|
+
-------------------
|
|
39
|
+
- Revert Use HTTPS for GPG keys and mirror lists
|
|
40
|
+
|
|
41
|
+
v0.5.2 (2014-10-28)
|
|
42
|
+
-------------------
|
|
43
|
+
- Use HTTPS for GPG keys and mirror lists
|
|
44
|
+
- Use local key on Amazon Linux
|
|
45
|
+
|
|
46
|
+
v0.5.0 (2014-09-02)
|
|
47
|
+
-------------------
|
|
48
|
+
- Add all attribute available to LWRP to allow for tuning.
|
|
49
|
+
|
|
50
|
+
v0.4.0 (2014-07-27)
|
|
51
|
+
-------------------
|
|
52
|
+
- [#9] Allowing list of repositories to reference configurable.
|
|
53
|
+
|
|
54
|
+
v0.3.6 (2014-04-09)
|
|
55
|
+
-------------------
|
|
56
|
+
- [COOK-4509] add RHEL7 support to yum-epel cookbook
|
|
57
|
+
|
|
58
|
+
v0.3.4 (2014-02-19)
|
|
59
|
+
-------------------
|
|
60
|
+
COOK-4353 - Fixing typo in readme
|
|
61
|
+
|
|
62
|
+
v0.3.2 (2014-02-13)
|
|
63
|
+
-------------------
|
|
64
|
+
Updating README to explain the 'managed' parameter
|
|
65
|
+
|
|
66
|
+
v0.3.0 (2014-02-12)
|
|
67
|
+
-------------------
|
|
68
|
+
[COOK-4292] - Do not manage secondary repos by default
|
|
69
|
+
|
|
70
|
+
v0.2.0
|
|
71
|
+
------
|
|
72
|
+
Adding Amazon Linux support
|
|
73
|
+
|
|
74
|
+
v0.1.6
|
|
75
|
+
------
|
|
76
|
+
Fixing up attribute values for EL6
|
|
77
|
+
|
|
78
|
+
v0.1.4
|
|
79
|
+
------
|
|
80
|
+
Adding CHANGELOG.md
|
|
81
|
+
|
|
82
|
+
v0.1.0
|
|
83
|
+
------
|
|
84
|
+
initial release
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
yum-epel Cookbook
|
|
2
|
+
============
|
|
3
|
+
[](http://travis-ci.org/chef-cookbooks/yum-epel)
|
|
4
|
+
[](https://supermarket.chef.io/cookbooks/yum-epel)
|
|
5
|
+
|
|
6
|
+
The yum-epel cookbook takes over management of the default
|
|
7
|
+
repositoryids shipped with epel-release. It allows attribute
|
|
8
|
+
manipulation of `epel`, `epel-debuginfo`, `epel-source`, `epel-testing`,
|
|
9
|
+
`epel-testing-debuginfo`, and `epel-testing-source`.
|
|
10
|
+
|
|
11
|
+
Requirements
|
|
12
|
+
------------
|
|
13
|
+
#### Platforms
|
|
14
|
+
* RHEL/CentOS and derivatives
|
|
15
|
+
* Fedora
|
|
16
|
+
|
|
17
|
+
#### Chef
|
|
18
|
+
* Chef 11+
|
|
19
|
+
|
|
20
|
+
#### Cookbooks
|
|
21
|
+
* yum version 3.2.0 or higher
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
Attributes
|
|
25
|
+
----------
|
|
26
|
+
The following attributes are set by default
|
|
27
|
+
|
|
28
|
+
``` ruby
|
|
29
|
+
default['yum-epel']['repositories'] = %w{epel epel-debuginfo epel-source epel-testing epel-testing-debuginfo epel-testing-source}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
``` ruby
|
|
33
|
+
default['yum']['epel']['repositoryid'] = 'epel'
|
|
34
|
+
default['yum']['epel']['description'] = 'Extra Packages for Enterprise Linux 6 - $basearch'
|
|
35
|
+
default['yum']['epel']['mirrorlist'] = 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch'
|
|
36
|
+
default['yum']['epel']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6'
|
|
37
|
+
default['yum']['epel']['failovermethod'] = 'priority'
|
|
38
|
+
default['yum']['epel']['gpgcheck'] = true
|
|
39
|
+
default['yum']['epel']['enabled'] = true
|
|
40
|
+
default['yum']['epel']['managed'] = true
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
``` ruby
|
|
44
|
+
default['yum']['epel-debuginfo']['repositoryid'] = 'epel-debuginfo'
|
|
45
|
+
default['yum']['epel-debuginfo']['description'] = 'Extra Packages for Enterprise Linux 6 - $basearch - Debug'
|
|
46
|
+
default['yum']['epel-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearch'
|
|
47
|
+
default['yum']['epel-debuginfo']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6'
|
|
48
|
+
default['yum']['epel-debuginfo']['failovermethod'] = 'priority'
|
|
49
|
+
default['yum']['epel-debuginfo']['gpgcheck'] = true
|
|
50
|
+
default['yum']['epel-debuginfo']['enabled'] = false
|
|
51
|
+
default['yum']['epel-debuginfo']['managed'] = false
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
``` ruby
|
|
55
|
+
default['yum']['epel-source']['repositoryid'] = 'epel-source'
|
|
56
|
+
default['yum']['epel-source']['description'] = 'Extra Packages for Enterprise Linux 6 - $basearch - Source'
|
|
57
|
+
default['yum']['epel-source']['mirrorlist'] = 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-6&arch=$basearch'
|
|
58
|
+
default['yum']['epel-source']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6'
|
|
59
|
+
default['yum']['epel-source']['failovermethod'] = 'priority'
|
|
60
|
+
default['yum']['epel-source']['gpgcheck'] = true
|
|
61
|
+
default['yum']['epel-source']['enabled'] = false
|
|
62
|
+
default['yum']['epel-source']['managed'] = false
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
``` ruby
|
|
66
|
+
default['yum']['epel-testing']['repositoryid'] = 'epel-testing'
|
|
67
|
+
default['yum']['epel-testing']['description'] = 'Extra Packages for Enterprise Linux 6 - Testing - $basearch'
|
|
68
|
+
default['yum']['epel-testing']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-epel6&arch=$basearch'
|
|
69
|
+
default['yum']['epel-testing']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6r'
|
|
70
|
+
default['yum']['epel-testing']['failovermethod'] = 'priority'
|
|
71
|
+
default['yum']['epel-testing']['gpgcheck'] = true
|
|
72
|
+
default['yum']['epel-testing']['enabled'] = false
|
|
73
|
+
default['yum']['epel-testing']['managed'] = false
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
``` ruby
|
|
77
|
+
default['yum']['epel-testing-debuginfo']['repositoryid'] = 'epel-testing-debuginfo'
|
|
78
|
+
default['yum']['epel-testing-debuginfo']['description'] = 'Extra Packages for Enterprise Linux 6 - Testing - $basearch Debug'
|
|
79
|
+
default['yum']['epel-testing-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-debug-epel6&arch=$basearch'
|
|
80
|
+
default['yum']['epel-testing-debuginfo']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6'
|
|
81
|
+
default['yum']['epel-testing-debuginfo']['failovermethod'] = 'priority'
|
|
82
|
+
default['yum']['epel-testing-debuginfo']['gpgcheck'] = true
|
|
83
|
+
default['yum']['epel-testing-debuginfo']['enabled'] = false
|
|
84
|
+
default['yum']['epel-testing-debuginfo']['managed'] = false
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
``` ruby
|
|
88
|
+
default['yum']['epel-testing-source']['repositoryid'] = 'epel-testing-source'
|
|
89
|
+
default['yum']['epel-testing-source']['description'] = 'Extra Packages for Enterprise Linux 6 - Testing - $basearch Source'
|
|
90
|
+
default['yum']['epel-testing-source']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-source-epel6&arch=$basearch'
|
|
91
|
+
default['yum']['epel-testing-source']['gpgkey'] = 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6'
|
|
92
|
+
default['yum']['epel-testing-source']['failovermethod'] = 'priority'
|
|
93
|
+
default['yum']['epel-testing-source']['gpgcheck'] = true
|
|
94
|
+
default['yum']['epel-testing-source']['enabled'] = false
|
|
95
|
+
default['yum']['epel-testing-source']['managed'] = false
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Recipes
|
|
99
|
+
-------
|
|
100
|
+
* default - Walks through node attributes and feeds a yum_resource
|
|
101
|
+
parameters. The following is an example a resource generated by the
|
|
102
|
+
recipe during compilation.
|
|
103
|
+
|
|
104
|
+
```ruby
|
|
105
|
+
yum_repository 'epel' do
|
|
106
|
+
mirrorlist 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch'
|
|
107
|
+
description 'Extra Packages for Enterprise Linux 5 - $basearch'
|
|
108
|
+
enabled true
|
|
109
|
+
gpgcheck true
|
|
110
|
+
gpgkey 'http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL'
|
|
111
|
+
end
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Usage Example
|
|
115
|
+
-------------
|
|
116
|
+
To disable the epel repository through a Role or Environment definition
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
default_attributes(
|
|
120
|
+
:yum => {
|
|
121
|
+
:epel => {
|
|
122
|
+
:enabled => {
|
|
123
|
+
false
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
)
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Uncommonly used repositoryids are not managed by default. This is
|
|
131
|
+
speeds up integration testing pipelines by avoiding yum-cache builds
|
|
132
|
+
that nobody cares about. To enable the epel-testing repository with a
|
|
133
|
+
wrapper cookbook, place the following in a recipe:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
node.default['yum']['epel-testing']['enabled'] = true
|
|
137
|
+
node.default['yum']['epel-testing']['managed'] = true
|
|
138
|
+
include_recipe 'yum-epel'
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
More Examples
|
|
142
|
+
-------------
|
|
143
|
+
Point the epel repositories at an internally hosted server.
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
node.default['yum']['epel']['enabled'] = true
|
|
147
|
+
node.default['yum']['epel']['mirrorlist'] = nil
|
|
148
|
+
node.default['yum']['epel']['baseurl'] = 'https://internal.example.com/centos/6/os/x86_64'
|
|
149
|
+
node.default['yum']['epel']['sslverify'] = false
|
|
150
|
+
|
|
151
|
+
include_recipe 'yum-epel'
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
License & Authors
|
|
155
|
+
-----------------
|
|
156
|
+
|
|
157
|
+
**Author:** Cookbook Engineering Team (<cookbooks@chef.io>)
|
|
158
|
+
|
|
159
|
+
**Copyright:** 2011-2015, Chef Software, Inc.
|
|
160
|
+
```
|
|
161
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
162
|
+
you may not use this file except in compliance with the License.
|
|
163
|
+
You may obtain a copy of the License at
|
|
164
|
+
|
|
165
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
166
|
+
|
|
167
|
+
Unless required by applicable law or agreed to in writing, software
|
|
168
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
169
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
170
|
+
See the License for the specific language governing permissions and
|
|
171
|
+
limitations under the License.
|
|
172
|
+
```
|