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.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/Berksfile +2 -1
  3. data/Berksfile.lock +20 -1
  4. data/cookbooks/bluepill/CHANGELOG.md +93 -0
  5. data/cookbooks/bluepill/README.md +91 -0
  6. data/cookbooks/bluepill/attributes/default.rb +44 -0
  7. data/cookbooks/bluepill/metadata.json +1 -0
  8. data/cookbooks/bluepill/providers/service.rb +172 -0
  9. data/cookbooks/bluepill/recipes/default.rb +48 -0
  10. data/cookbooks/bluepill/recipes/rsyslog.rb +28 -0
  11. data/cookbooks/bluepill/resources/service.rb +27 -0
  12. data/cookbooks/bluepill/templates/default/bluepill_init.fedora.erb +34 -0
  13. data/cookbooks/bluepill/templates/default/bluepill_init.freebsd.erb +32 -0
  14. data/cookbooks/bluepill/templates/default/bluepill_init.lsb.erb +37 -0
  15. data/cookbooks/bluepill/templates/default/bluepill_init.rhel.erb +34 -0
  16. data/cookbooks/bluepill/templates/default/bluepill_rsyslog.conf.erb +1 -0
  17. data/cookbooks/nginx/CHANGELOG.md +435 -0
  18. data/cookbooks/nginx/README.md +521 -0
  19. data/cookbooks/nginx/attributes/auth_request.rb +23 -0
  20. data/cookbooks/nginx/attributes/default.rb +131 -0
  21. data/cookbooks/nginx/attributes/devel.rb +24 -0
  22. data/cookbooks/nginx/attributes/echo.rb +24 -0
  23. data/cookbooks/nginx/attributes/geoip.rb +31 -0
  24. data/cookbooks/nginx/attributes/headers_more.rb +24 -0
  25. data/cookbooks/nginx/attributes/lua.rb +28 -0
  26. data/cookbooks/nginx/attributes/naxsi.rb +24 -0
  27. data/cookbooks/nginx/attributes/openssl_source.rb +23 -0
  28. data/cookbooks/nginx/attributes/pagespeed.rb +9 -0
  29. data/cookbooks/nginx/attributes/passenger.rb +58 -0
  30. data/cookbooks/nginx/attributes/rate_limiting.rb +23 -0
  31. data/cookbooks/nginx/attributes/repo.rb +35 -0
  32. data/cookbooks/nginx/attributes/set_misc.rb +8 -0
  33. data/cookbooks/nginx/attributes/socketproxy.rb +13 -0
  34. data/cookbooks/nginx/attributes/source.rb +42 -0
  35. data/cookbooks/nginx/attributes/status.rb +22 -0
  36. data/cookbooks/nginx/attributes/syslog.rb +24 -0
  37. data/cookbooks/nginx/attributes/upload_progress.rb +26 -0
  38. data/cookbooks/nginx/definitions/nginx_site.rb +50 -0
  39. data/cookbooks/nginx/files/default/mime.types +78 -0
  40. data/cookbooks/nginx/files/default/naxsi_core.rules +82 -0
  41. data/cookbooks/nginx/libraries/matchers.rb +20 -0
  42. data/cookbooks/nginx/metadata.json +351 -0
  43. data/cookbooks/nginx/recipes/authorized_ips.rb +32 -0
  44. data/cookbooks/nginx/recipes/commons.rb +24 -0
  45. data/cookbooks/nginx/recipes/commons_conf.rb +42 -0
  46. data/cookbooks/nginx/recipes/commons_dir.rb +57 -0
  47. data/cookbooks/nginx/recipes/commons_script.rb +29 -0
  48. data/cookbooks/nginx/recipes/default.rb +31 -0
  49. data/cookbooks/nginx/recipes/headers_more_module.rb +50 -0
  50. data/cookbooks/nginx/recipes/http_auth_request_module.rb +52 -0
  51. data/cookbooks/nginx/recipes/http_echo_module.rb +46 -0
  52. data/cookbooks/nginx/recipes/http_geoip_module.rb +113 -0
  53. data/cookbooks/nginx/recipes/http_gzip_static_module.rb +30 -0
  54. data/cookbooks/nginx/recipes/http_mp4_module.rb +2 -0
  55. data/cookbooks/nginx/recipes/http_perl_module.rb +23 -0
  56. data/cookbooks/nginx/recipes/http_realip_module.rb +38 -0
  57. data/cookbooks/nginx/recipes/http_spdy_module.rb +23 -0
  58. data/cookbooks/nginx/recipes/http_ssl_module.rb +23 -0
  59. data/cookbooks/nginx/recipes/http_stub_status_module.rb +36 -0
  60. data/cookbooks/nginx/recipes/ipv6.rb +23 -0
  61. data/cookbooks/nginx/recipes/lua.rb +47 -0
  62. data/cookbooks/nginx/recipes/naxsi_module.rb +52 -0
  63. data/cookbooks/nginx/recipes/ngx_devel_module.rb +44 -0
  64. data/cookbooks/nginx/recipes/ngx_lua_module.rb +47 -0
  65. data/cookbooks/nginx/recipes/ohai_plugin.rb +35 -0
  66. data/cookbooks/nginx/recipes/openssl_source.rb +45 -0
  67. data/cookbooks/nginx/recipes/package.rb +52 -0
  68. data/cookbooks/nginx/recipes/pagespeed_module.rb +62 -0
  69. data/cookbooks/nginx/recipes/passenger.rb +56 -0
  70. data/cookbooks/nginx/recipes/repo.rb +41 -0
  71. data/cookbooks/nginx/recipes/repo_passenger.rb +39 -0
  72. data/cookbooks/nginx/recipes/set_misc.rb +30 -0
  73. data/cookbooks/nginx/recipes/socketproxy.rb +26 -0
  74. data/cookbooks/nginx/recipes/source.rb +205 -0
  75. data/cookbooks/nginx/recipes/syslog_module.rb +69 -0
  76. data/cookbooks/nginx/recipes/upload_progress_module.rb +53 -0
  77. data/cookbooks/nginx/templates/debian/nginx.init.erb +97 -0
  78. data/cookbooks/nginx/templates/default/default-site.erb +11 -0
  79. data/cookbooks/nginx/templates/default/modules/authorized_ip.erb +6 -0
  80. data/cookbooks/nginx/templates/default/modules/http_geoip.conf.erb +4 -0
  81. data/cookbooks/nginx/templates/default/modules/http_gzip_static.conf.erb +1 -0
  82. data/cookbooks/nginx/templates/default/modules/http_realip.conf.erb +7 -0
  83. data/cookbooks/nginx/templates/default/modules/nginx_status.erb +14 -0
  84. data/cookbooks/nginx/templates/default/modules/passenger.conf.erb +13 -0
  85. data/cookbooks/nginx/templates/default/modules/socketproxy.conf.erb +89 -0
  86. data/cookbooks/nginx/templates/default/modules/upload_progress.erb +4 -0
  87. data/cookbooks/nginx/templates/default/nginx-upstart.conf.erb +39 -0
  88. data/cookbooks/nginx/templates/default/nginx.conf.erb +103 -0
  89. data/cookbooks/nginx/templates/default/nginx.init.erb +111 -0
  90. data/cookbooks/nginx/templates/default/nginx.pill.erb +15 -0
  91. data/cookbooks/nginx/templates/default/nginx.sysconfig.erb +1 -0
  92. data/cookbooks/nginx/templates/default/nxdissite.erb +29 -0
  93. data/cookbooks/nginx/templates/default/nxensite.erb +38 -0
  94. data/cookbooks/nginx/templates/default/plugins/nginx.rb.erb +66 -0
  95. data/cookbooks/nginx/templates/default/sv-nginx-log-run.erb +2 -0
  96. data/cookbooks/nginx/templates/default/sv-nginx-run.erb +4 -0
  97. data/cookbooks/nginx/templates/gentoo/nginx.init.erb +87 -0
  98. data/cookbooks/nginx/templates/suse/nginx.init.erb +115 -0
  99. data/cookbooks/nginx/templates/ubuntu/nginx.init.erb +97 -0
  100. data/cookbooks/ohai/CHANGELOG.md +69 -0
  101. data/cookbooks/ohai/README.md +89 -0
  102. data/cookbooks/ohai/attributes/default.rb +31 -0
  103. data/cookbooks/ohai/files/default/plugins/README +1 -0
  104. data/cookbooks/ohai/libraries/matchers.rb +14 -0
  105. data/cookbooks/ohai/metadata.json +1 -0
  106. data/cookbooks/ohai/providers/hint.rb +38 -0
  107. data/cookbooks/ohai/recipes/default.rb +52 -0
  108. data/cookbooks/ohai/resources/hint.rb +5 -0
  109. data/cookbooks/packagecloud/CHANGELOG.md +12 -0
  110. data/cookbooks/packagecloud/README.md +80 -0
  111. data/cookbooks/packagecloud/attributes/default.rb +8 -0
  112. data/cookbooks/packagecloud/libraries/helper.rb +43 -0
  113. data/cookbooks/packagecloud/libraries/matcher.rb +7 -0
  114. data/cookbooks/packagecloud/metadata.json +1 -0
  115. data/cookbooks/packagecloud/providers/repo.rb +212 -0
  116. data/cookbooks/packagecloud/resources/repo.rb +10 -0
  117. data/cookbooks/packagecloud/templates/.kitchen/logs/kitchen.log +29 -0
  118. data/cookbooks/packagecloud/templates/default/apt.erb +2 -0
  119. data/cookbooks/packagecloud/templates/default/yum.erb +15 -0
  120. data/cookbooks/rsyslog/CHANGELOG.md +193 -0
  121. data/cookbooks/rsyslog/README.md +276 -0
  122. data/cookbooks/rsyslog/attributes/default.rb +131 -0
  123. data/cookbooks/rsyslog/libraries/helpers.rb +25 -0
  124. data/cookbooks/rsyslog/metadata.json +1 -0
  125. data/cookbooks/rsyslog/providers/file_input.rb +44 -0
  126. data/cookbooks/rsyslog/recipes/client.rb +87 -0
  127. data/cookbooks/rsyslog/recipes/default.rb +89 -0
  128. data/cookbooks/rsyslog/recipes/server.rb +44 -0
  129. data/cookbooks/rsyslog/resources/file_input.rb +28 -0
  130. data/cookbooks/rsyslog/templates/default/35-server-per-host.conf.erb +62 -0
  131. data/cookbooks/rsyslog/templates/default/49-relp.conf.erb +10 -0
  132. data/cookbooks/rsyslog/templates/default/49-remote.conf.erb +30 -0
  133. data/cookbooks/rsyslog/templates/default/50-default.conf.erb +6 -0
  134. data/cookbooks/rsyslog/templates/default/file-input.conf.erb +15 -0
  135. data/cookbooks/rsyslog/templates/default/omnios-manifest.xml.erb +30 -0
  136. data/cookbooks/rsyslog/templates/default/rsyslog.conf.erb +117 -0
  137. data/cookbooks/rsyslog/templates/smartos/50-default.conf.erb +18 -0
  138. data/cookbooks/runit/.kitchen.cloud.yml +103 -0
  139. data/cookbooks/runit/.kitchen.yml +38 -0
  140. data/cookbooks/runit/.rspec +3 -0
  141. data/cookbooks/runit/.rubocop.yml +45 -0
  142. data/cookbooks/runit/Berksfile.disabled +11 -0
  143. data/cookbooks/runit/CHANGELOG.md +226 -0
  144. data/cookbooks/runit/CONTRIBUTING.md +266 -0
  145. data/cookbooks/runit/Cheffile +11 -0
  146. data/cookbooks/runit/Gemfile +17 -0
  147. data/cookbooks/runit/LICENSE +201 -0
  148. data/cookbooks/runit/README.md +435 -0
  149. data/cookbooks/runit/Rakefile +23 -0
  150. data/cookbooks/runit/TESTING.md +26 -0
  151. data/cookbooks/runit/attributes/default.rb +62 -0
  152. data/cookbooks/runit/files/default/runit.seed +1 -0
  153. data/cookbooks/runit/files/default/runsvdir +0 -0
  154. data/cookbooks/runit/files/ubuntu-6.10/runsvdir +6 -0
  155. data/cookbooks/runit/files/ubuntu-7.04/runsvdir +7 -0
  156. data/cookbooks/runit/files/ubuntu-7.10/runsvdir +7 -0
  157. data/cookbooks/runit/files/ubuntu-8.04/runsvdir +7 -0
  158. data/cookbooks/runit/libraries/default.rb +0 -0
  159. data/cookbooks/runit/libraries/helpers.rb +190 -0
  160. data/cookbooks/runit/libraries/matchers.rb +69 -0
  161. data/cookbooks/runit/libraries/provider_runit_service.rb +326 -0
  162. data/cookbooks/runit/libraries/resource_runit_service.rb +267 -0
  163. data/cookbooks/runit/metadata.json +50 -0
  164. data/cookbooks/runit/recipes/default.rb +91 -0
  165. data/cookbooks/runit/templates/debian/init.d.erb +66 -0
  166. data/cookbooks/runit/templates/default/log-config.erb +24 -0
  167. data/cookbooks/runit/templates/gentoo/runit-start.sh.erb +32 -0
  168. data/cookbooks/scratchify/Berksfile +2 -1
  169. data/cookbooks/scratchify/Berksfile.lock +20 -1
  170. data/cookbooks/scratchify/lib/from-scratch.rb +1 -4
  171. data/cookbooks/scratchify/lib/from-scratch/version.rb +1 -1
  172. data/cookbooks/scratchify/metadata.json +5 -2
  173. data/cookbooks/scratchify/recipes/default.rb +15 -1
  174. data/cookbooks/scratchify/recipes/nginx_site.rb +4 -0
  175. data/cookbooks/scratchify/recipes/pre_rvm.rb +5 -0
  176. data/cookbooks/scratchify/templates/nginx.erb +31 -0
  177. data/cookbooks/scratchify/templates/node.json.erb +21 -6
  178. data/cookbooks/yum-epel/CHANGELOG.md +84 -0
  179. data/cookbooks/yum-epel/README.md +172 -0
  180. data/cookbooks/yum-epel/attributes/default.rb +1 -0
  181. data/cookbooks/yum-epel/attributes/epel-debuginfo.rb +28 -0
  182. data/cookbooks/yum-epel/attributes/epel-source.rb +28 -0
  183. data/cookbooks/yum-epel/attributes/epel-testing-debuginfo.rb +28 -0
  184. data/cookbooks/yum-epel/attributes/epel-testing-source.rb +28 -0
  185. data/cookbooks/yum-epel/attributes/epel-testing.rb +28 -0
  186. data/cookbooks/yum-epel/attributes/epel.rb +28 -0
  187. data/cookbooks/yum-epel/metadata.json +1 -0
  188. data/cookbooks/yum-epel/recipes/default.rb +61 -0
  189. data/cookbooks/yum/CHANGELOG.md +294 -0
  190. data/cookbooks/yum/README.md +285 -0
  191. data/cookbooks/yum/attributes/main.rb +100 -0
  192. data/cookbooks/yum/libraries/matchers.rb +27 -0
  193. data/cookbooks/yum/metadata.json +1 -0
  194. data/cookbooks/yum/providers/globalconfig.rb +41 -0
  195. data/cookbooks/yum/providers/repository.rb +106 -0
  196. data/cookbooks/yum/recipes/default.rb +26 -0
  197. data/cookbooks/yum/resources/globalconfig.rb +109 -0
  198. data/cookbooks/yum/resources/repository.rb +69 -0
  199. data/cookbooks/yum/templates/default/main.erb +276 -0
  200. data/cookbooks/yum/templates/default/repo.erb +125 -0
  201. data/lib/from-scratch.rb +1 -0
  202. data/lib/from-scratch/version.rb +1 -1
  203. data/metadata.rb +5 -1
  204. data/recipes/default.rb +15 -1
  205. data/recipes/nginx_site.rb +4 -0
  206. data/recipes/pre_rvm.rb +5 -0
  207. data/templates/nginx.erb +31 -0
  208. data/templates/node.json.erb +21 -6
  209. metadata +194 -1
@@ -0,0 +1,48 @@
1
+ #
2
+ # Cookbook Name:: bluepill
3
+ # Recipe:: default
4
+ #
5
+ # Copyright 2010-2015, Chef Software, Inc.
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+ #
19
+
20
+ gem_package 'i18n' do
21
+ action :install
22
+ end
23
+
24
+ gem_package 'bluepill' do
25
+ version node['bluepill']['version'] if node['bluepill']['version']
26
+ action :install
27
+ end
28
+
29
+ [
30
+ node['bluepill']['conf_dir'],
31
+ node['bluepill']['pid_dir'],
32
+ node['bluepill']['state_dir']
33
+ ].each do |dir|
34
+ directory dir do
35
+ recursive true
36
+ owner 'root'
37
+ group node['bluepill']['group']
38
+ end
39
+ end
40
+
41
+ file node['bluepill']['logfile'] do
42
+ owner 'root'
43
+ group node['bluepill']['group']
44
+ mode '0755'
45
+ action :create_if_missing
46
+ end
47
+
48
+ include_recipe 'bluepill::rsyslog' if node['bluepill']['use_rsyslog']
@@ -0,0 +1,28 @@
1
+ #
2
+ # Cookbook Name:: bluepill
3
+ # Recipe:: rsyslog
4
+ #
5
+ # Copyright 2010-2015, Chef Software, Inc.
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+ #
19
+
20
+ include_recipe 'rsyslog'
21
+
22
+ template '/etc/rsyslog.d/bluepill.conf' do
23
+ owner 'root'
24
+ group 'root'
25
+ mode '0644'
26
+ source 'bluepill_rsyslog.conf.erb'
27
+ notifies :restart, 'service[rsyslog]'
28
+ end
@@ -0,0 +1,27 @@
1
+ #
2
+ # Cookbook Name:: bluepill
3
+ # Resource:: service
4
+ #
5
+ # Copyright 2010-2015, Chef Software, Inc.
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+ #
19
+
20
+ actions :start, :stop, :enable, :disable, :load, :restart, :reload
21
+ default_action :start
22
+
23
+ attribute :service_name, name_attribute: true
24
+ attribute :enabled, default: false
25
+ attribute :running, default: false
26
+ attribute :variables, kind_of: Hash
27
+ attribute :supports, default: { restart: true, status: true }
@@ -0,0 +1,34 @@
1
+ #!/bin/sh
2
+ #
3
+ # Author: Jamie Winsor (<jamie@vialstudios.com>)
4
+ #
5
+ # chkconfig: 345 99 1
6
+ # Description: Bluepill loader for <%= @service_name %>
7
+ # Provides: <%= @service_name %>
8
+ # Default-Start: 3 4 5
9
+ # Default-Stop: 0 1 2 6
10
+
11
+ BLUEPILL_BIN=<%= node['bluepill']['bin'] %>
12
+ BLUEPILL_CONFIG=<%= @config_file %>
13
+ SERVICE_NAME=<%= @service_name %>
14
+
15
+ [ -r <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME ] && . <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME
16
+
17
+ case "$1" in
18
+ start)
19
+ echo "Loading bluepill configuration for $SERVICE_NAME "
20
+ $BLUEPILL_BIN load $BLUEPILL_CONFIG
21
+ ;;
22
+ stop)
23
+ $BLUEPILL_BIN $SERVICE_NAME stop
24
+ $BLUEPILL_BIN $SERVICE_NAME quit
25
+ ;;
26
+ restart)
27
+ $0 stop
28
+ $0 start
29
+ ;;
30
+ *)
31
+ echo "Usage: $0 {start|stop|restart}"
32
+ exit 1
33
+ ;;
34
+ esac
@@ -0,0 +1,32 @@
1
+ #!/bin/sh
2
+ ##
3
+ # PROVIDE: named
4
+ # REQUIRE: SERVERS cleanvar
5
+ # KEYWORD: shutdown
6
+ #
7
+
8
+ . /etc/rc.subr
9
+
10
+ name="<%= @service_name %>"
11
+ rcvar=`set_rcvar`
12
+
13
+ # Set some defaults
14
+ <%= @service_name %>_enable=${<%= @service_name %>_enable:-"NO"}
15
+
16
+ pidfile="/var/run/<%= @service_name %>.pid"
17
+ command="/usr/local/bin/bluepill"
18
+
19
+ start_precmd="${command} load <%= node['bluepill']['conf_dir'] %>/<%= @service_name %>.pill"
20
+ start_cmd="${command} ${name} start"
21
+
22
+ status_cmd="${command} ${name} status"
23
+
24
+ stop_cmd="${command} ${name} stop"
25
+ stop_postcmd="${command} ${name} quit"
26
+
27
+ [ -r <%= node['bluepill']['defaults_dir'] %>/$name ] && . <%= node['bluepill']['defaults_dir'] %>/$name
28
+ load_rc_config ${name}
29
+
30
+ PATH="${PATH}:/usr/local/bin"
31
+
32
+ run_rc_command "$1"
@@ -0,0 +1,37 @@
1
+ #!/bin/sh
2
+ #
3
+ ### BEGIN INIT INFO
4
+ # Provides: <%= @service_name %>
5
+ # Required-Start:
6
+ # Required-Stop:
7
+ # Defalt-Start: 2 3 4 5
8
+ # Default-Stop: 0 1 2 6
9
+ # Description: Bluepill loader for <%= @service_name %>
10
+ ### END INIT INFO
11
+
12
+ BLUEPILL_BIN=<%= node['bluepill']['bin'] %>
13
+ BLUEPILL_CONFIG=<%= @config_file %>
14
+ SERVICE_NAME=<%= @service_name %>
15
+
16
+ [ -r <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME ] && . <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME
17
+
18
+ case "$1" in
19
+ start)
20
+ echo "Loading bluepill configuration for $SERVICE_NAME "
21
+ $BLUEPILL_BIN load $BLUEPILL_CONFIG
22
+ ;;
23
+ stop)
24
+ $BLUEPILL_BIN $SERVICE_NAME stop
25
+ $BLUEPILL_BIN $SERVICE_NAME quit
26
+ ;;
27
+ restart)
28
+ $BLUEPILL_BIN $SERVICE_NAME restart
29
+ ;;
30
+ status)
31
+ $BLUEPILL_BIN $SERVICE_NAME status
32
+ ;;
33
+ *)
34
+ echo "Usage: $0 {start|stop|restart}"
35
+ exit 1
36
+ ;;
37
+ esac
@@ -0,0 +1,34 @@
1
+ #!/bin/sh
2
+ #
3
+ # Author: Jamie Winsor (<jamie@vialstudios.com>)
4
+ #
5
+ # chkconfig: 345 99 1
6
+ # Description: Bluepill loader for <%= @service_name %>
7
+ # Provides: <%= @service_name %>
8
+ # Default-Start: 3 4 5
9
+ # Default-Stop: 0 1 2 6
10
+
11
+ BLUEPILL_BIN=<%= node['bluepill']['bin'] %>
12
+ BLUEPILL_CONFIG=<%= @config_file %>
13
+ SERVICE_NAME=<%= @service_name %>
14
+
15
+ [ -r <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME ] && . <%= node['bluepill']['defaults_dir'] %>/$SERVICE_NAME
16
+
17
+ case "$1" in
18
+ start)
19
+ echo "Loading bluepill configuration for $SERVICE_NAME "
20
+ $BLUEPILL_BIN load $BLUEPILL_CONFIG
21
+ ;;
22
+ stop)
23
+ $BLUEPILL_BIN $SERVICE_NAME stop
24
+ $BLUEPILL_BIN $SERVICE_NAME quit
25
+ ;;
26
+ restart)
27
+ $0 stop
28
+ $0 start
29
+ ;;
30
+ *)
31
+ echo "Usage: $0 {start|stop|restart}"
32
+ exit 1
33
+ ;;
34
+ esac
@@ -0,0 +1 @@
1
+ local6.* <%= node["bluepill"]["logfile"] %>
@@ -0,0 +1,435 @@
1
+ nginx Cookbook CHANGELOG
2
+ ========================
3
+ This file is used to list changes made in each version of the nginx cookbook.
4
+
5
+ v2.7.6 / 2015-03-17
6
+ ==================
7
+
8
+ * Bugfix sites do not need a .conf suffix anymore, [#338][] [@runningman84][]
9
+
10
+ v2.7.5 (2015-03-17)
11
+ -------------------
12
+ **NOTE** As of this release, this cookbook in its current format is deprecated,
13
+ and only critical bugs and fixes will be added.
14
+ A complete rewrite is in progress, so we appreciate your patience while we sort things out.
15
+ The amount of change included here
16
+
17
+ * Fix nginx 1.4.4 archive checksum to prevent redownload, [#305][] [@irontoby][]
18
+ * Allow setting an empty string to prevent additional repos, [#243][] [@miketheman][]
19
+ * Use correct `mime.types` for javascript, [#259][] [@dwradcliffe][]
20
+ * Fix `headers_more` module for source installs, [#279][], [@josh-padnick][] & [@miketheman][]
21
+ * Remove `libtool` from `geoip` and update download paths & checksums, [@miketheman][]
22
+ * Fix unquoted URL with params failing geoip module build (and tests!), [#294][] [@karsten-bruckmann][] & [@miketheman][]
23
+ * Fix typo in `source.rb`, [#205][] [@gregkare][]
24
+ * Test updates: ChefSpec, test-kitchen. Lots of help by [@jujugrrr][]
25
+ * Toolchain updates for testing
26
+ * Adds support for `tcp_nopush`, `tcp_nodelay` [@shtouff][]
27
+
28
+ After merging a ton of pull requests, here's a brief changelog. Click each to read more.
29
+
30
+ * Merge pull request [#335][] from [@stevenolen][]
31
+ * Merge pull request [#332][] from [@monsterstrike][]
32
+ * Merge pull request [#331][] from [@jalberto][]
33
+ * Merge pull request [#327][] from [@nkadel-skyhook][]
34
+ * Merge pull request [#326][] from [@bchrobot][]
35
+ * Merge pull request [#325][] from [@CanOfSpam3bug324][]
36
+ * Merge pull request [#321][] from [@jalberto][]
37
+ * Merge pull request [#318][] from [@evertrue][]
38
+ * Merge pull request [#314][] from [@bkw][]
39
+ * Merge pull request [#312][] from [@thomasmeeus][]
40
+ * Merge pull request [#310][] from [@morr][]
41
+ * Merge pull request [#305][] from [@irontoby][]
42
+ * Merge pull request [#302][] from [@auth0][]
43
+ * Merge pull request [#298][] from [@Mytho][]
44
+ * Merge pull request [#269][] from [@yveslaroche][]
45
+ * Merge pull request [#259][] from [@dwradcliffe][]
46
+ * Merge pull request [#254][] from [@evertrue][]
47
+ * Merge pull request [#252][] from [@gkra][]
48
+ * Merge pull request [#249][] from [@whatcould][]
49
+ * Merge pull request [#240][] from [@jcoleman][]
50
+ * Merge pull request [#236][] from [@adepue][]
51
+ * Merge pull request [#230][] from [@n1koo][]
52
+ * Merge pull request [#225][] from [@thommay][]
53
+ * Merge pull request [#223][] from [@firmhouse][]
54
+ * Merge pull request [#220][] from [@evertrue][]
55
+ * Merge pull request [#219][] from [@evertrue][]
56
+ * Merge pull request [#204][] from [@usertesting][]
57
+ * Merge pull request [#200][] from [@ffuenf][]
58
+ * Merge pull request [#188][] from [@larkin][]
59
+ * Merge pull request [#184][] from [@tvdinner][]
60
+ * Merge pull request [#183][] from [@jenssegers][]
61
+ * Merge pull request [#174][] from [@9minutesnooze][]
62
+
63
+ https://github.com/miketheman/nginx/compare/v2.7.4...v2.7.5
64
+
65
+ v2.7.4 (2014-06-06)
66
+ -------------------
67
+ * [COOK-4703] Default openssl version to 1.0.1h to address CVE-2014-0224
68
+
69
+
70
+ v2.7.2 (2014-05-27)
71
+ -------------------
72
+
73
+ - [COOK-4658] - Nginx::socketproxy if the context is blank or nonexistent, the location in the config file has a double slash at the beginning
74
+ - [COOK-4644] - add support to nginx::repo for Amazon Linux
75
+ - Allow .kitchen.cloud.yml to use an environment variable for the EC2 Availability Zone
76
+
77
+
78
+ v2.7.0 (2014-05-15)
79
+ -------------------
80
+ - [COOK-4643] - Update metadata lock on ohai
81
+ - [COOK-4588] - Give more love to FreeBSD
82
+ - [COOK-4601] - Add proxy type: Socket
83
+
84
+
85
+ v2.6.2 (2014-04-09)
86
+ -------------------
87
+ [COOK-4527] - set default openssl source version to 1.0.1g to address CVE-2014-0160 aka Heartbleed
88
+
89
+
90
+ v2.6.0 (2014-04-08)
91
+ -------------------
92
+ - Reverting COOK-4323
93
+
94
+
95
+ v2.5.0 (2014-03-27)
96
+ -------------------
97
+ - [COOK-4323] - Need a resource to easily configure available sites (vhosts)
98
+
99
+
100
+ v2.4.4 (2014-03-13)
101
+ -------------------
102
+ - Updating for build-essential 2.0
103
+
104
+
105
+ v2.4.2 (2014-02-28)
106
+ -------------------
107
+ Fixing bad commit from COOK-4330
108
+
109
+
110
+ v2.4.1 (2014-02-27)
111
+ -------------------
112
+ - [COOK-4345] - nginx default recipe include install type recipe directly
113
+
114
+
115
+ v2.4.0 (2014-02-27)
116
+ -------------------
117
+ - [COOK-4380] - kitchen.yml platform listings for ubuntu-10.04 and ubuntu-12.04 are missing the dot
118
+ - [COOK-4330] - Bump nginx version for security issues (CVE-2013-0337, CVE-2013-4547)
119
+
120
+
121
+ v2.3.0 (2014-02-25)
122
+ -------------------
123
+ - **[COOK-4293](https://tickets.chef.io/browse/COOK-4293)** - Update testing Gems in nginx and fix a rubocop warnings
124
+ - **[COOK-4237] - Nginx version incorrectly parsed on Ubuntu 13
125
+ - **[COOK-3866] - Nginx default site folder
126
+
127
+
128
+ v2.2.2 (2014-01-23)
129
+ -------------------
130
+ [COOK-3672] - Add gzip_static option
131
+
132
+
133
+ v2.2.0
134
+ ------
135
+ No changes. Version bump for toolchain
136
+
137
+
138
+ v2.1.0
139
+ ------
140
+ [COOK-3923] - Enable the list of packages installed by nginx::passenger to be configurable
141
+ [COOK-3672] - Nginx should support the gzip_static option
142
+ Updating for yum ~> 3.0
143
+ Fixing up style for rubocop
144
+ Updating test-kitchen harness
145
+
146
+
147
+ v2.0.8
148
+ ------
149
+ fixing metadata version error. locking to 3.0
150
+
151
+
152
+ v2.0.6
153
+ ------
154
+ Locking yum dependency to '< 3'
155
+
156
+
157
+ v2.0.4
158
+ ------
159
+ ### Bug
160
+ - **[COOK-3808](https://tickets.chef.io/browse/COOK-3808)** - nginx::passenger run fails because of broken installation of package dependencies
161
+ - **[COOK-3779](https://tickets.chef.io/browse/COOK-3779)** - Build in master fails due to rubocop error
162
+
163
+
164
+ v2.0.2
165
+ ------
166
+ ### Bug
167
+ - **[COOK-3808](https://tickets.chef.io/browse/COOK-3808)** - nginx::passenger run fails because of broken installation of package dependencies
168
+ - **[COOK-3779](https://tickets.chef.io/browse/COOK-3779)** - Build in master fails due to rubocop error
169
+
170
+
171
+ v2.0.0
172
+ ------
173
+ ### Improvement
174
+ - **[COOK-3733](https://tickets.chef.io/browse/COOK-3733)** - Add RPM key names and GPG checking
175
+ - **[COOK-3687](https://tickets.chef.io/browse/COOK-3687)** - Add support for `http_perl`
176
+ - **[COOK-3603](https://tickets.chef.io/browse/COOK-3603)** - Add a recipe for using custom openssl
177
+ - **[COOK-3602](https://tickets.chef.io/browse/COOK-3602)** - Use an attribute for the status module port
178
+ - **[COOK-3549](https://tickets.chef.io/browse/COOK-3549)** - Refactor custom modules support
179
+ - **[COOK-3521](https://tickets.chef.io/browse/COOK-3521)** - Add support for `http_auth_request`
180
+ - **[COOK-3520](https://tickets.chef.io/browse/COOK-3520)** - Add support for `spdy`
181
+ - **[COOK-3185](https://tickets.chef.io/browse/COOK-3185)** - Add `gzip_*` attributes
182
+ - **[COOK-2712](https://tickets.chef.io/browse/COOK-2712)** - Update `upload_progress` version to 0.9.0
183
+
184
+ ### Bug
185
+ - **[COOK-3686](https://tickets.chef.io/browse/COOK-3686)** - Remove deprecated 'passenger_use_global_queue' directive
186
+ - **[COOK-3626](https://tickets.chef.io/browse/COOK-3626)** - Parameterize hardcoded path to helper scripts
187
+ - **[COOK-3571](https://tickets.chef.io/browse/COOK-3571)** - Reloda ohai plugin after installation
188
+ - **[COOK-3428](https://tickets.chef.io/browse/COOK-3428)** - Fix an issue where access logs are not disabled when the `disable_access_log` attribute is set to `true`
189
+ - **[COOK-3322](https://tickets.chef.io/browse/COOK-3322)** - Fix an issue where `nginx::ohai_plugin` fails when using source recipe
190
+ - **[COOK-3241](https://tickets.chef.io/browse/COOK-3241)** - Fix an issue where`nginx::ohai_plugin` fails unless using source recipe
191
+
192
+ ### New Feature
193
+ - **[COOK-3605](https://tickets.chef.io/browse/COOK-3605)** - Add Lua module
194
+
195
+
196
+ v1.8.0
197
+ ------
198
+ ### Bug
199
+ - **[COOK-3397](https://tickets.chef.io/browse/COOK-3397)** - Fix user from nginx package on Gentoo
200
+ - **[COOK-2968](https://tickets.chef.io/browse/COOK-2968)** - Fix foodcritic failure
201
+ - **[COOK-2723](https://tickets.chef.io/browse/COOK-2723)** - Remove duplicate passenger `max_pool_size`
202
+
203
+ ### Improvement
204
+ - **[COOK-3186](https://tickets.chef.io/browse/COOK-3186)** - Add `client_body_buffer_size` and `server_tokens attributes`
205
+ - **[COOK-3080](https://tickets.chef.io/browse/COOK-3080)** - Add rate-limiting support
206
+ - **[COOK-2927](https://tickets.chef.io/browse/COOK-2927)** - Add support for `real_ip_recursive` directive
207
+ - **[COOK-2925](https://tickets.chef.io/browse/COOK-2925)** - Fix ChefSpec converge
208
+ - **[COOK-2724](https://tickets.chef.io/browse/COOK-2724)** - Automatically create directory for PID file
209
+ - **[COOK-2472](https://tickets.chef.io/browse/COOK-2472)** - Bump nginx version to 1.2.9
210
+ - **[COOK-2312](https://tickets.chef.io/browse/COOK-2312)** - Add additional `mine_types` to the `gzip_types` value
211
+
212
+ ### New Feature
213
+ - **[COOK-3183](https://tickets.chef.io/browse/COOK-3183)** - Allow inclusion in extra-cookbook modules
214
+
215
+ v1.7.0
216
+ ------
217
+ ### Improvement
218
+ - [COOK-3030]: The repo_source attribute should allow you to not add any additional repositories to your node
219
+
220
+ ### Sub-task
221
+ - [COOK-2738]: move nginx::passenger attributes to `nginx/attributes/passenger.rb`
222
+
223
+ v1.6.0
224
+ ------
225
+ ### Task
226
+ - [COOK-2409]: update nginx::source recipe for new `runit_service` resource
227
+ - [COOK-2877]: update nginx cookbook test-kitchen support to 1.0 (alpha)
228
+
229
+ ### Improvement
230
+ - [COOK-1976]: nginx source should be able to configure binary path
231
+ - [COOK-2622]: nginx: add upstart support
232
+ - [COOK-2725]: add "configtest" subcommand in initscript
233
+
234
+ ### Bug
235
+ - [COOK-2398]: nginx_site definition cannot be used to manage the default site
236
+ - [COOK-2493]: Resources in nginx::source recipe always use 1.2.6 version, even overriding version attribute
237
+ - [COOK-2531]: Remove usage of non-existant attribute "description" for `apt_repository`
238
+ - [COOK-2665]: nginx::source install with custom sbin_path breaks ohai data
239
+
240
+ v1.4.0
241
+ ------
242
+ - [COOK-2183] - Install nginx package from nginxyum repo
243
+ - [COOK-2311] - headers-more should be updated to the latest version
244
+ - [COOK-2455] - Support sendfile option (nginx.conf)
245
+
246
+ v1.3.0
247
+ ------
248
+ - [COOK-1979] - Passenger module requires curl-dev(el)
249
+ - [COOK-2219] - Support `proxy_read_timeout` (in nginx.conf)
250
+ - [COOK-2220] - Support `client_max_body_size` (in nginx.conf)
251
+ - [COOK-2280] - Allow custom timing of nginx_site's reload notification
252
+ - [COOK-2304] - nginx cookbook should install 1.2.6 not 1.2.3 for source installs
253
+ - [COOK-2309] - checksums for geoip files need to be updated in nginx
254
+ - [COOK-2310] - Checksum in the `nginx::upload_progress` recipe is not correct
255
+ - [COOK-2314] - nginx::passenger: Install the latest version of passenger
256
+ - [COOK-2327] - nginx: passenger recipe should find ruby via Ohai
257
+ - [COOK-2328] - nginx: Update mime.types file to the latest
258
+ - [COOK-2329] - nginx: Update naxsi rules to the current
259
+
260
+ v1.2.0
261
+ ------
262
+ - [COOK-1752] - Add headers more module to the nginx cookbook
263
+ - [COOK-2209] - nginx source recipe should create web user before creating directories
264
+ - [COOK-2221] - make nginx::source compatible with gentoo
265
+ - [COOK-2267] - add version for runit recommends
266
+
267
+ v1.1.4
268
+ ------
269
+ - [COOK-2168] - specify package name as an attribute
270
+
271
+ v1.1.2
272
+ ------
273
+ - [COOK-1766] - Nginx Source Recipe Rebuilding Source at Every Run
274
+ - [COOK-1910] - Add IPv6 module
275
+ - [COOK-1966] - nginx cookbook should let you set `gzip_vary` and `gzip_buffers` in nginx.conf
276
+ - [COOK-1969]- - nginx::passenger module not included due to use of symbolized `:nginx_configure_flags`
277
+ - [COOK-1971] - Template passenger.conf.erb configures key `passenger_max_pool_size` 2 times
278
+ - [COOK-1972] - nginx::source compile_nginx_source reports success in spite of failed compilation
279
+ - [COOK-1975] - nginx::passenger requires rake gem
280
+ - [COOK-1979] - Passenger module requires curl-dev(el)
281
+ - [COOK-2080] - Restart nginx on source compilation
282
+
283
+ v1.1.0
284
+ ------
285
+ - [COOK-1263] - Nginx log (and possibly other) directory creations should be recursive
286
+ - [COOK-1515] - move creation of `node['nginx']['dir']` out of commons.rb
287
+ - [COOK-1523] - nginx `http_geoip_module` requires libtoolize
288
+ - [COOK-1524] - nginx checksums are md5
289
+ - [COOK-1641] - add "use", "`multi_accept`" and "`worker_rlimit_nofile`" to nginx cookbook
290
+ - [COOK-1683] - Nginx fails Windows nodes just by being required in metadata
291
+ - [COOK-1735] - Support Amazon Linux in nginx::source recipe
292
+ - [COOK-1753] - Add ability for nginx::passenger recipe to configure more Passenger global settings
293
+ - [COOK-1754] - Allow group to be set in nginx.conf file
294
+ - [COOK-1770] - nginx cookbook fails on servers that don't have a "cpu" attribute
295
+ - [COOK-1781] - Use 'sv' to reload nginx when using runit
296
+ - [COOK-1789] - stop depending on bluepill, runit and yum. they are not required by nginx cookbook
297
+ - [COOK-1791] - add name attribute to metadata
298
+ - [COOK-1837] - nginx::passenger doesn't work on debian family
299
+ - [COOK-1956] - update naxsi version due to incompatibility with newer nginx
300
+
301
+ v1.0.2
302
+ ------
303
+ - [COOK-1636] - relax the version constraint on ohai
304
+
305
+ v1.0.0
306
+ ------
307
+ - [COOK-913] - defaults for gzip cause warning on service restart
308
+ - [COOK-1020] - duplicate MIME type
309
+ - [COOK-1269] - add passenger module support through new recipe
310
+ - [COOK-1306] - increment nginx version to 1.2 (now 1.2.3)
311
+ - [COOK-1316] - default site should not always be enabled
312
+ - [COOK-1417] - resolve errors preventing build from source
313
+ - [COOK-1483] - source prefix attribute has no effect
314
+ - [COOK-1484] - source relies on /etc/sysconfig
315
+ - [COOK-1511] - add support for naxsi module
316
+ - [COOK-1525] - nginx source is downloaded every time
317
+ - [COOK-1526] - nginx_site does not remove sites
318
+ - [COOK-1527] - add `http_echo_module` recipe
319
+
320
+ v0.101.6
321
+ --------
322
+ Erroneous cookbook upload due to timeout.
323
+
324
+ Version #'s are cheap.
325
+
326
+ v0.101.4
327
+ --------
328
+ - [COOK-1280] - Improve RHEL family support and fix ohai_plugins recipe bug
329
+ - [COOK-1194] - allow installation method via attribute
330
+ - [COOK-458] - fix duplicate nginx processes
331
+
332
+ v0.101.2
333
+ --------
334
+ * [COOK-1211] - include the default attributes explicitly so version is available.
335
+
336
+ v0.101.0
337
+ --------
338
+ **Attribute Change**: `node['nginx']['url']` -> `node['nginx']['source']['url']`; see the README.md.
339
+
340
+ - [COOK-1115] - daemonize when using init script
341
+ - [COOK-477] - module compilation support in nginx::source
342
+
343
+ v0.100.4
344
+ --------
345
+ - [COOK-1126] - source version bump to 1.0.14
346
+
347
+ v0.100.2
348
+ --------
349
+ - [COOK-1053] - Add :url attribute to nginx cookbook
350
+
351
+ v0.100.0
352
+ --------
353
+ - [COOK-818] - add "application/json" per RFC.
354
+ - [COOK-870] - bluepill init style support
355
+ - [COOK-957] - Compress application/javascript.
356
+ - [COOK-981] - Add reload support to NGINX service
357
+
358
+ v0.99.2
359
+ -------
360
+ - [COOK-809] - attribute to disable access logging
361
+ - [COOK-772] - update nginx download source location
362
+
363
+ <!--- The following link definition list is generated by PimpMyChangelog --->
364
+ [#174]: https://github.com/miketheman/nginx/issues/174
365
+ [#183]: https://github.com/miketheman/nginx/issues/183
366
+ [#184]: https://github.com/miketheman/nginx/issues/184
367
+ [#188]: https://github.com/miketheman/nginx/issues/188
368
+ [#200]: https://github.com/miketheman/nginx/issues/200
369
+ [#204]: https://github.com/miketheman/nginx/issues/204
370
+ [#205]: https://github.com/miketheman/nginx/issues/205
371
+ [#219]: https://github.com/miketheman/nginx/issues/219
372
+ [#220]: https://github.com/miketheman/nginx/issues/220
373
+ [#223]: https://github.com/miketheman/nginx/issues/223
374
+ [#225]: https://github.com/miketheman/nginx/issues/225
375
+ [#230]: https://github.com/miketheman/nginx/issues/230
376
+ [#236]: https://github.com/miketheman/nginx/issues/236
377
+ [#240]: https://github.com/miketheman/nginx/issues/240
378
+ [#243]: https://github.com/miketheman/nginx/issues/243
379
+ [#249]: https://github.com/miketheman/nginx/issues/249
380
+ [#252]: https://github.com/miketheman/nginx/issues/252
381
+ [#254]: https://github.com/miketheman/nginx/issues/254
382
+ [#259]: https://github.com/miketheman/nginx/issues/259
383
+ [#269]: https://github.com/miketheman/nginx/issues/269
384
+ [#279]: https://github.com/miketheman/nginx/issues/279
385
+ [#294]: https://github.com/miketheman/nginx/issues/294
386
+ [#298]: https://github.com/miketheman/nginx/issues/298
387
+ [#302]: https://github.com/miketheman/nginx/issues/302
388
+ [#305]: https://github.com/miketheman/nginx/issues/305
389
+ [#310]: https://github.com/miketheman/nginx/issues/310
390
+ [#312]: https://github.com/miketheman/nginx/issues/312
391
+ [#314]: https://github.com/miketheman/nginx/issues/314
392
+ [#318]: https://github.com/miketheman/nginx/issues/318
393
+ [#321]: https://github.com/miketheman/nginx/issues/321
394
+ [#325]: https://github.com/miketheman/nginx/issues/325
395
+ [#326]: https://github.com/miketheman/nginx/issues/326
396
+ [#327]: https://github.com/miketheman/nginx/issues/327
397
+ [#331]: https://github.com/miketheman/nginx/issues/331
398
+ [#332]: https://github.com/miketheman/nginx/issues/332
399
+ [#335]: https://github.com/miketheman/nginx/issues/335
400
+ [#338]: https://github.com/miketheman/nginx/issues/338
401
+ [@9minutesnooze]: https://github.com/9minutesnooze
402
+ [@CanOfSpam3bug324]: https://github.com/CanOfSpam3bug324
403
+ [@Mytho]: https://github.com/Mytho
404
+ [@adepue]: https://github.com/adepue
405
+ [@auth0]: https://github.com/auth0
406
+ [@bchrobot]: https://github.com/bchrobot
407
+ [@bkw]: https://github.com/bkw
408
+ [@dwradcliffe]: https://github.com/dwradcliffe
409
+ [@evertrue]: https://github.com/evertrue
410
+ [@ffuenf]: https://github.com/ffuenf
411
+ [@firmhouse]: https://github.com/firmhouse
412
+ [@gkra]: https://github.com/gkra
413
+ [@gregkare]: https://github.com/gregkare
414
+ [@irontoby]: https://github.com/irontoby
415
+ [@jalberto]: https://github.com/jalberto
416
+ [@jcoleman]: https://github.com/jcoleman
417
+ [@jenssegers]: https://github.com/jenssegers
418
+ [@josh-padnick]: https://github.com/josh-padnick
419
+ [@jujugrrr]: https://github.com/jujugrrr
420
+ [@karsten-bruckmann]: https://github.com/karsten-bruckmann
421
+ [@larkin]: https://github.com/larkin
422
+ [@miketheman]: https://github.com/miketheman
423
+ [@monsterstrike]: https://github.com/monsterstrike
424
+ [@morr]: https://github.com/morr
425
+ [@n1koo]: https://github.com/n1koo
426
+ [@nkadel-skyhook]: https://github.com/nkadel-skyhook
427
+ [@runningman84]: https://github.com/runningman84
428
+ [@shtouff]: https://github.com/shtouff
429
+ [@stevenolen]: https://github.com/stevenolen
430
+ [@thomasmeeus]: https://github.com/thomasmeeus
431
+ [@thommay]: https://github.com/thommay
432
+ [@tvdinner]: https://github.com/tvdinner
433
+ [@usertesting]: https://github.com/usertesting
434
+ [@whatcould]: https://github.com/whatcould
435
+ [@yveslaroche]: https://github.com/yveslaroche