cookbook 'supermarket', '= 3.0.0', :supermarket
The supermarket cookbook has been deprecated
The supermarket cookbook has been deprecated and is no longer being maintained by its authors. Use of the supermarket cookbook is no longer recommended. You may find that the supermarket-omnibus-cookbook cookbook is a suitable alternative.
Stands up the Supermarket application stack
cookbook 'supermarket', '= 3.0.0'
knife supermarket install supermarket
knife supermarket download supermarket
This cookbook deploys the Supermarket application.
This cookbook is split up into three different roles: Web, Redis, and Database. If you plan on running Supermarket on a single node, just add the default recipe to the run_list.
By default with all three roles applied to a single node Supermarket relies on PostgreSQL peer authentication so there is no database password set. If you need to connect to a separate PostgreSQL database server, you may override Supermarket's database configuration within the app/supermarket.json data bag to configure a host, username and password.
If you need to connect to a separate Redis server, you may override Supermarket's Sidekiq configuration within the app/supermarket.json data bag.
Issues and Pull Requests
Issues for this cookbook should be opened on Supermarket GitHub Issues. Pull requests can be opened on this repository, but it would be nice to have an associated issue on the Supermarket repository.
In order to make managing Supermarket-related issues and features easier for everybody, all issues are tracked on that repository.
License and Authors
- Author: Brett Chalupa (firstname.lastname@example.org)
- Author: Brian Cobb (email@example.com)
- Author: Seth Vargo (firstname.lastname@example.org)
- Author: Tristan O'Neil (email@example.com)
- Author: Joshua Timberman (firstname.lastname@example.org)
Author: Gleb M Borisov (email@example.com)
Copyright (C) 2014, Chef Software, Inc. (firstname.lastname@example.org)
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|rubies >= 0.0.0|
|runit >= 0.0.0|
|nginx >= 0.0.0|
|git >= 0.0.0|
|redisio >= 0.0.0|
|postgresql >= 0.0.0|
|nodejs >= 0.0.0|
|python >= 0.0.0|
|build-essential >= 0.0.0|
|apt >= 0.0.0|
|yum >= 0.0.0|
- [#79] Correct references to ssl cert and key path
- [#80] Update specs
- [#76] Add new URL variables
- [#81] Add privacy flag
- [#75] Lint and cleanup
- [#72] Travis CI integration
- [#78] Fixing missing references to deleted recipes
- [#74] Decouple Ruby recipe from application deployment
- [#73] Move to redisio cookbook for redis
- [#71] Fixes Specs and Redis Config
- [#62] Add RHEL/CentOS Support
- [#66] Add Configurable URLS
- [#68] Update Ruby to 2.1.3
- [#54] Add CHEF_OAUTH2_VERIFY_SSL flag
- [#65] Remove Segment.io
- [#55] StatsD environment variables
- [#56] CLA Report Email environment variable
- [#63] Upgrade to Ruby 2.1.3
- [#59] Run unicorn as the supermarket user, not root
- [#49] Graceful restarts with runit and unicorn
- [#57] Setting the max body size in nginx to 250m
- [#58] Update bundler to 1.7.2
- [#51] Add chef-vault support for the application data bag
- [#52] Add fieri configuration elements to ENV
- [#50] Fix broken symlink of .env.production
- [#48] Fix missing end statement
- [#44] Add unicorn configuration
- [#45] Allow CDN URL to be configured in apps databag
- [#47] Combine ENV feature flag variables into a single ENV variable
- [#46] Template missing in v2.6.0 on community site download is fixed
- [#42] Make the application repository configurable through the data bag
- [#43] Make the OAUTH2 URL configurable through the data bag
- Support ENV based app feature flags
- As a default, calculate the number of unicorn workers by # of CPUs
The "supermarket is live" release!
- Make use of
WEB_CONCURRENCYfor unicorn config to allow adjusting the number of workers based on the number of CPUs.
- Add an attribute to allow certain domains to not be redirected from http -> https.
- IMPORTANT Version 2.4.2 was tagged incorrectly.
- Add log rotation to avoid filling disk with rails and nginx logs
- No new code. Recovering from error.
- Add Curry Success label to .env.production template
- Allow Google Analytics ID to be configured (#27)
- Add CCLA and ICLA versions to the .env.production template (#30)
- Corrects supermarket::vagrant recipe missing _mysql
- Moves bundler vendored gems to a shared directory that does not get recreated during each deploy (#25)
- Adds sv log to runit service (#26)
- Add a .gemrc for the supermarket user (#23)
- Add Segment.IO key to .env.production template
- Allow protocol to be configured for things like email, etc. (#21)
- Install libarchive-dev (#20)
- Fix the order of mysql recipe (#17)
- In 2.1.0, the force_ssl attribute was added. During development it was previously enforce_ssl, but the template wasn't updated.
- Support enforcing HTTPS redirect
- Adds libmysql to make it so bundler completes
This release may not work properly if you currently define an empty database key in your apps data bag. Please remove it, if it is uneeded.
- Adds support for serving sitemaps via nginx
- Adds support for generating sitemaps after a deploy
- Refines the way database.yml is handled
- Allows COMMUNITY_SITE_DATABASE_URL to be set via the databag for imports from the old community site to be run.
- Updates .kitchen.cloud.yml to test 14.04
- Move postgres dev header package install to ruby recipe (required to build
- Ensure build-essential is installed so bundle can build gems' C extensions
- Add port option to database.yml
- Test on Ubuntu 14.04
- Create postgresql config directory
- Use link resources for ruby instead of update-alternatives
- Updates testing harness
supermarket::webrecipe for deploying web servers
node['supermarket']['data_bag']as an easy way to use a different data bag in prod.
Actual push to the community site
This is the initial version of the cookbook published to the community site.
3.0.0 passed this metric
3.0.0 passed this metric