cookbook 'opsworks_ruby', '= 1.19.0'
opsworks_ruby
(45) Versions
1.19.0
-
Follow6
Set of chef recipes for OpsWorks based Ruby projects
cookbook 'opsworks_ruby', '= 1.19.0', :supermarket
knife supermarket install opsworks_ruby
knife supermarket download opsworks_ruby
opsworks_ruby Cookbook
A chef cookbook to deploy Ruby applications to Amazon OpsWorks.
Quick Start
Refer to Getting Started
guide in documentation.
Development
You can either install everything locally using rvm and pip
or use the Docker container which includes all necessary dependencies inside it.
Build documentation
docker-compose run cookbook bash -c "cd docs && make html"
Contributing
Please see CONTRIBUTING
for details.
Author and Contributors
Author: Igor Rzegocki (@ajgon)
Contributors
- Nick Marden (@nickmarden)
- Phong Si (@phongsi)
- Kevin Olbrich (@olbrich)
- Kevin Pheasey (@kpheasey)
- Nathan Flood (@npflood)
- Teruo Adachi (@interu)
- Marcos Beirigo (@marcosbeirigo)
- John Calvin Young (@johncalvinyoung)
- Rich Seviora (@richseviora)
- Josh Goodall (@inopinatus)
- Kazuki Fujii (@kazukifujii)
License
License: MIT
Dependent cookbooks
apt < 7.0 |
ark = 4.0.0 |
chef_client_updater ~> 3.6.0 |
logrotate = 2.2.1 |
nginx < 9.0 |
nodejs >= 0.0.0 |
ohai < 5.3 |
ruby-ng >= 0.0.0 |
s3_file >= 0.0.0 |
seven_zip ~> 2.0 |
sudo = 5.4.4 |
windows < 5.0 |
yarn >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
1.19.0 (2020-08-02)
Features
1.18.1 (2020-05-13)
Bug Fixes
1.18.0 (2020-02-29)
Bug Fixes
Features
- appserver: Add new appserver config params for passenger (#227) (0500521)
- setup: add support for fullstaq ruby repos (1489d01), closes #229
1.17.0 (2019-11-23)
Bug Fixes
Features
BREAKING CHANGES
-
app['global']['create_dirs_before_symlink']
,app['global']['purge_before_symlink']
andapp['global']['symlinks']
now overrides defaults instead of appending them. If you were relying on those options in your Custom JSON, you need to add missing defaults manually.
For example given:
{ "deploy": { "myapp": { "global": { "create_dirs_before_symlink": ["test/create"], "purge_before_symlink": ["test/purge"], "symlinks": { "test": "test/symlinks" } } } } }
you need to replace it to:
{ "deploy": { "myapp": { "global": { "create_dirs_before_symlink": ["tmp", "public", "config", "../../shared/cache", "../../shared/assets", "test/create"], "purge_before_symlink": ["log", "tmp/cache", "tmp/pids", "public/system", "public/assets", "test/purge"], "symlinks": { "system": "public/system", "assets": "public/assets", "cache": "tmp/cache", "pids": "tmp/pids", "log": "log", "test": "test/symlinks" } } } } }
1.16.0 (2019-09-11)
Bug Fixes
- webserver: remove default nginx config from conf.d (#220) (23929e3)
- keep the last
nginx
cookbook version compatible with chef 12 (b5b13d0), closes #222
Features
- setup: add chef version configuration option (ffe2b42)
1.15.0 (2019-07-09)
Bug Fixes
- apache: fix apache serving assets rather than proxying to app server (#210) (9dfdeed)
- appserver: Compare lockfiles instead of main Gemfile (c02af02)
- appserver: fix duplicate after_fork/on_worker_boot stanzas in appserver configs (c0b0e84)
- worker: adapted monit config for sidekiq 6.x (4a58654), closes #215
- worker: fix sidekiq quiet/shutdown scripts (59198b9), closes #217
- worker: quieting and stopping sidekiq (efc1231)
Features
- apache: apache configuration to use appserver’s port provided in custom json (b576788)
- setup: add global option for enabling/disabling nodejs (1f1fa4b)
- setup: support for webpacker (569b9bb)
- setup: use latest nodejs lts 10.15.3 (61bb605)
1.14.0 (2019-03-06)
Bug Fixes
- Ensure shared/system dir is created (#197) (7f8cb2e), closes /github.com/ajgon/opsworks_ruby/blob/6e2328941996d98316657d7a52c98de6982068a5/attributes/default.rb#L21
- Lock the windows cookbook dependency to maintain chef 12 compatibility (#196) (a2d4a8d)
- register gpg public key for nginx on ubuntu18.04LTS (#201) (1d4705d)
-
apache: fix infinite redirect loop on apache, when rails
force_ssl
is enabled (3df3a16), closes #206 - appserver: fixed Puma config compatibility with older versions of Puma (eebdc23), closes #207
-
nginx: add missing
nosniff
header for SSL sessions in nginx (e61b199) - setup: added support for bundler 2.x and rubygems 3.x (7b781bd), closes #203
- webserver: Align SSL directory between template & driver (414298e), closes #205
Features
- appserver: re-establish database connections when preloading app (db17de6), closes #198
- ruby: Added support for ruby 2.6 (27bad91)
1.13.0 (2018-11-09)
Bug Fixes
- db: Fix typo for aurora postgresql (1bb2fb5)
Features
- worker: Support Shoryuken worker library (5359679)
<a name="1.12.0"></a>
1.12.0 (2018-10-03)
Features
- appserver: add port configuration (6540201)
- database: added aurora-postgres as an accepted engine for Postgres RDS (626a11d)
-
webserver: add support for
force_ssl
attribute (2281047), closes #189
<a name="1.11.0"></a>
1.11.0 (2018-07-17)
Bug Fixes
- add Apache 2.4's "Require all granted" to apache2+passenger config file (#171) (f4e5871)
-
webserver: add
X-Content-Type-Options: nosniff
to assets served by rails for extra security (07d3336)
Features
- webserver: hardened security headers, disabled tls1.0 and tls1.1 for non-legacy SSL config (8351d58)
BREAKING CHANGES
-
webserver: If you are using SSL in your project, TLSv1.0 and
TLSv1.1 has been disabled for all responses - only TLSv1.2 is served. If
you still need older ciphers, consider using
app['webserver']['ssl_for_legacy_browsers']
configuration option.
<a name="1.10.1"></a>
1.10.1 (2018-06-24)
Bug Fixes
- do not read pidfile at each stop retry (prevent from early pidfile deletion) (c5f0fe4), closes #163
- framework: added environment variables context to bundle install (fe01d45), closes #167
Features
- appserver: support rails restart command on puma. (bb04fb4)
- db: added postgis driver (6b3c058), closes #165
<a name="1.10.0"></a>
1.10.0 (2018-06-10)
Bug Fixes
-
appserver: moved env files creation to
before_symlink
phase (2ed059d), closes #157 -
setup: Fixed
deployer
user setup (9af3651), closes #159
Features
- appserver: add additional puma configuration options (f994e2f)
-
ruby: introduced new
ruby-version
JSON parameter. (99798ce), closes #156
BREAKING CHANGES
-
ruby: If you were using
ruby-ng.ruby_version
JSON configuration parameter in your stack/layer configuration, please change it toruby-version
. Sinceruby-version
is set by default to the freshest version of ruby available, you may end up with unexpected upgrade of ruby on your system.
<a name="1.9.1"></a>
1.9.1 (2018-05-22)
Bug Fixes
- chef: Downgraded apt cookbook below version 7 (8ea8eee), closes #151
-
chef: Removed broken
deployer
cookbook (51a4942), closes #155
<a name="1.9.0"></a>
1.9.0 (2018-03-17)
Bug Fixes
- appserver: Wait up to 10 sec for graceful shutdown (def1c21), closes #127
- configure: Don't create pids symlink if it already exists (4671ac9), closes #126
- appserver: failed to start appserver. (#146) (4505890)
- source: remove temporary directories after deploy (b92417f)
- source: Subdirectories on S3 are now properly handled (9373173)
-
webserver: Switched
chef_nginx
back tonginx
cookbook (683f840), closes #148
Features
- ruby: Added support for ruby 2.5 (2fd887a)
- source: Added support for HTTP (34829f2)
- source: Added support for S3 (019c0ad), closes #133
BREAKING CHANGES
-
source:
app['scm']
has been renamed toapp['source']
. This only affects the Custom JSON files, so if you were using this block there, you should change it. If you were using OpsWorks git configurator (which is probably 99.99% true), this change wouldn't affect you.
<a name="1.8.0"></a>
1.8.0 (2017-10-23)
Bug Fixes
- moved all pid-related files from shared/pids to /run/lock (bc9daf0), closes #92
- db: Respect database port provided by RDS (#124) (7aeb78e), closes #123
- logrotate: remove duplicate log entry in config file generated from webserver service install (eabf207)
- worker: quiet_sidekiq now uses sidekiqctl instead of kill -USR1 which is deprectaed (1e9e32b), closes #93
Features
<a name="1.7.1"></a>
1.7.1 (2017-09-22)
Bug Fixes
- webserver: do not unnecessarily restart webserver (db15b26), closes #114
- webserver: Only remove default enabled sites (ef085a0), closes #111
Features
- webserver: remove version info on Apache/Nginx (6aba9f3)
<a name="1.7.0"></a>
1.7.0 (2017-09-05)
Bug Fixes
- appserver: passing USER and HOME environment variables to appserver process (43210bc), closes #85
- db: safer migration/setup command (19bf034), closes #58
- overcommit: disable fasterer warning that was causing commits to fail (7752706)
- missing databag caused maximum_override integration failure (1be29e1)
Features
- appserver+webserver: add apache2 + passenger support (43c61f9)
- database: support null database driver (29e1040), closes #98
- global: support per-application deploy directory (28cb797), closes #95
- logrotate: support arbitrary logrotate customization (fa95ab0), closes #107
- webserver: allow extensible webserver site customization (4efd130), closes #100
- webserver: server_tokens off on Nginx (#91) (5568f6c)
<a name="1.6.0"></a>
1.6.0 (2017-06-03)
Bug Fixes
Features
- webserver: Specify upgrade method for nginx (2624d04)
- logrotate: rotate all logs in app/log (4737b49)
BREAKING CHANGES
- Support for all legacy distributions has been dropped off. Currently, only Ubuntu 16.04 and Amazon Linux 2017.03 are supported.
This cookbook should work on earlier versions (especially on Ubuntu),
PR with fixes to them will be accepted, however the core team won't
include any patches for those distros by they own.
<a name="1.5.0"></a>
1.5.0 (2017-04-25)
Features
- framework: Allow increased timeout during deploy (#76) (e216972)
- logrotate: implement logrotate (86ebc10), closes #78
<a name="1.4.0"></a>
1.4.0 (2017-03-12)
Bug Fixes
- Bump faraday middleware version (d508928)
- Switched
nginx
cookbook to more actively developedchef_nginx
(0f4f64c), closes #65
Features
- webserver: Add app specific error log and location for nginx (a098279)
- worker: Safely quiet and shutdown sidekiq (c36652f)
BREAKING CHANGES
-
nginx
cookbook is not aopsworks_ruby
dependency anymore. Now it'schef_nginx
which is more actively developed. Please update your recipe repositories.
<a name="1.3.0"></a>
1.3.0 (2017-01-16)
Features
- appserver: Allowed deploy_before_restart on null appserver (b0375a6)
- database: Added aurora as allowed engine for mysql2 adapter (a2789f0)
- ruby: Added support for ruby 2.4 (a89451f)
BREAKING CHANGES
- ruby: Ruby 2.4 is now a default Ruby interpreter
<a name="1.2.1"></a>
1.2.1 (2016-11-27)
Bug Fixes
<a name="1.2.0"></a>
1.2.0 (2016-11-02)
Bug Fixes
- Moved global deploy parameters to
app['global']
section (b4f8d6b)
BREAKING CHANGES
-
app['create_dirs_before_symlink']
,app['purge_before_symlink']
,app['rollback_on_error']
andapp['symlinks']
are nowapp['global']['create_dirs_before_symlink']
,app['global']['purge_before_symlink']
,app['global']['rollback_on_error']
andapp['global']['symlink']
. The old format still works, but it shows DEPRECATION warning. It will be removed in one of the next major releases.
<a name="1.1.2"></a>
1.1.2 (2016-10-27)
Bug Fixes
Features
<a name="1.1.1"></a>
1.1.1 (2016-10-21)
Bug Fixes
- deploy: Fixed deploy callbacks launching order (81d31c9)
<a name="1.1.0"></a>
1.1.0 (2016-10-21)
Bug Fixes
- Application deployment fix (7ac4166)
BREAKING CHANGES
- node['applications'] becomes obsolete
<a name="1.0.0"></a>
1.0.0 (2016-10-04)
Bug Fixes
-
monit reload
andmonit restart
order (2c4a84a), closes #29 -
appserver: Removed
accept_filter
from unicorn configurator (76a7f36) -
framework: Added missing
deploy_environment
tonull
framework (673a21d) -
framework: Fixed
envs_in_console
forrails
(f8856c8)
Features
- appserver: "Puma" support added (f6e80ad), closes #38
- appserver: "Thin" support added (9667939), closes #39
-
appserver: Switched default appserver from
unicorn
topuma
(0e72200) - framework: "hanami.rb" support added (23fdd04), closes #43
- framework: "Null" support added (b9e7b63), closes #47
- framework: "Padrino" support added (a240d92), closes #44
-
framework: Environemnt variables in
rails console
(89252b3) -
global: Moved
app['environment']
toapp['global']['environment']
(432a21c), closes #50 - webserver: "Apache2" support added (1ca5b0b), closes #40
- worker: "delayed_job" support added (7235720), closes #42
- worker: "resque" support added (ccc13e4), closes #41
Performance Improvements
- Added
fasterer
gem to overcommit (c1ed974)
BREAKING CHANGES
- global: If you were using an
app['environment']
variable (for example to set env to staging), please update your stack/layer JSONs toapp['global']['environment']
. - appserver: Unicorn is no longer a default appserver, in favor of Puma. If you have a working
instances which were relying on that, you have to either set
app['appserver']['adapter'] = 'unicorn'
in your stack/layer JSON file, or switch the app server in your application - webserver:
sites-available
andsites-enabled
file names format changed. From this commit, the*.conf
extension is appended. If you plan to update your cookbooks on productional environments, don't forget to remove the old ones, otherwise you will end up with two the same configurations in different files, which causenginx
to fail.
If you start noticing duplicate upstream
errors, this is probably due
this case.
<a name="0.8.0"></a>
0.8.0 (2016-09-02)
Bug Fixes
Features
- Added GIT_SSH support for bundle install (232e8ac), closes #37
- Caches bundler installs to speed up deployments (baa0f44)
- Implemented configurable RAILS_ENV (2567b71), closes #34
<a name="0.7.0"></a>
0.7.0 (2016-08-29)
Bug Fixes
- Moved extra env files creation, later in the stack (before_restart) (8a5223f)
- Reload monit after restarting services (eaa2aab)
- Set the default DB adapter to
sqlite3
(b4b1ee4) - specify bundle path on bundle install (b9d4335)
Features
<a name="0.6.0"></a>
0.6.0 (2016-08-17)
BREAKING CHANGES
- Removed
application_ruby
cookbook dependency
<a name="0.5.0"></a>
0.5.0 (2016-07-21)
Features
- Added configuration for isolated worker servers w/o app/webserver (56642f1)
- Added monit compatibility with amazon linux (2ef12b9)
<a name="0.4.0"></a>
0.4.0 (2016-06-16)
Features
- Enables drivers to be attached to before_* and after_* deploy events (fa8e605)
<a name="0.3.1"></a>
0.3.1 (2016-06-16)
Bug Fixes
- Change path to 500.html to be in the "current" dir (4aeac7f)
- Support for multiple RDSes with multiple applications (a23df47)
<a name="0.3.0"></a>
0.3.0 (2016-06-08)
Features
- eliminate RDS requirement (daa4254)
BREAKING CHANGES
- Sqlite3 is no longer set as the default database adapter.
In order to use sqlite as the database adapter it must be defined
in the node.
<a name="0.2.1"></a>
0.2.1 (2016-05-11)
- Added environment variables support for assets precompile (f24e742)
- Added optional removal of scm files (82b25ec)
- Added support for custom configuration in nginx (448019a)
- Fixed deploy environment (bf843aa)
- Fixed nginx defaults order (af560db)
- Fixed sidekiq config builder (a32b410)
<a name="0.2.0"></a>
0.2.0 (2016-04-24)
- Added MariaDB Driver support (197b7de)
- Added multi-platform support (6118154)
- Added MySQL Driver support (72d4b9f)
- Added Sqlite Driver support (3ecb321)
- Minor bugfixes, resolves #19 (9f8615f), closes #19
<a name="0.1.0"></a>
0.1.0 (2016-04-23)
-
configure
recipe initial implementation (c57f71e) - Added assets precompilation support. Resolves #12 (b8d8ff5), closes #12
- Added auto-start of nginx to setup phase. Resolves #15 (fbb07dc), closes #15
- Added basic documentation (235519f)
- Added code quality tools (730857f)
- Added core_ext specs. Resolves #7 (b089eb3), closes #7
- Added DHparams and nginx version detection support. Resolves #8 and resolves #9 (4e60594), closes #8 #9
- Added missing specs (ff85e4f)
- Added nginx reload after deploy. Resolves #13 (f1bc277), closes #13
- Added ruby and bundler installation to setup phase (0182e70), closes #5 #6
- Added symlinking defaults. Resolves #16 (4a1edd9), closes #16
- Added travis config and coveralls support (a782a64)
- Added undeploy recipe (aba311b)
- Added webserver setup (nginx) (1581def)
- Added workers support. Resolves #18 (05e3a75), closes #18
- Appserver implemented (unicorn) (bbb79cc)
- Basic SCM support implemented (bcab3d7)
- Finished database support in recipes (cf955a0)
- Fixed appserver restart sequence (9a75f9c)
- Fixed nginx defaults. Resolves #14 and resolves #17 (8320f3b), closes #14 #17
- Fixes on bugs detected while deploying to real OpsWorks (035363b)
- Initial commit (d8bed5c)
- Initial version, with simple postgresql driver introduced (5d00083)
- Moved DB packages installation from configure to setup (e23f2d4)
- Moved libraries to flat directory structure, because AWS chef hates us (e6aa211)
- Rails deploy hooks implemented (79d2d64)
- Recipes cleanup: added missing actions and shutdown recipe (9eb9bb8)
- Reorganized appserver cookbooks, added bundle install to deploy (2e9947b)
Collaborator Number Metric
1.19.0 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
1.19.0 passed this metric
Foodcritic Metric
1.19.0 passed this metric
No Binaries Metric
1.19.0 passed this metric
Testing File Metric
1.19.0 passed this metric
Version Tag Metric
1.19.0 passed this metric
1.19.0 failed this metric
1.19.0 passed this metric
Foodcritic Metric
1.19.0 passed this metric
No Binaries Metric
1.19.0 passed this metric
Testing File Metric
1.19.0 passed this metric
Version Tag Metric
1.19.0 passed this metric
1.19.0 passed this metric
1.19.0 passed this metric
Testing File Metric
1.19.0 passed this metric
Version Tag Metric
1.19.0 passed this metric
1.19.0 passed this metric
1.19.0 passed this metric