from-scratch 0.3.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
[![Build Status](https://travis-ci.org/chef-cookbooks/yum-epel.svg?branch=master)](http://travis-ci.org/chef-cookbooks/yum-epel)
|
4
|
+
[![Cookbook Version](https://img.shields.io/cookbook/v/yum-epel.svg)](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
|
+
```
|