Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

mcrouter (7) Versions 2.0.0

Installs/Configures mcrouter

Policyfile
Berkshelf
Knife
cookbook 'mcrouter', '= 2.0.0', :supermarket
cookbook 'mcrouter', '= 2.0.0'
knife supermarket install mcrouter
knife supermarket download mcrouter
README
Dependencies
Changelog
Quality 33%

mcrouter

Build Status
Coverage Status

Install mcrouter and its dependencies, and provide mechanisms to configure and start mcrouter.

This cookbook can, optionally, install a copy of memcached to use locally. This can be disabled by setting node['mcrouter']['local_memcached'] to false.

Requirements

  • apt cookbook
  • ark cookbook
  • memcached cookbook
  • magic cookbook

Usage

  • Include mcrouter::default in your node’s run list.

If you wish to customize any of the configuration for mcrouter, you will want to edit the two attributes used to populate the config file and the CLI arguments passed to mcrouter on service start:

  • node['mcrouter']['cli_opts']
    • Do not overwrite this completely; the values specified already are required, instead, either:
      • supply updated values for these in addition to your new options
      • specify your particular CLI option: set['mcrouter']['cli_opts']['async-dir']
  • node['mcrouter']['config']

Recipes

default

Wraps it all up with a nice bow.

  1. Set up & update apt using apt::default
  2. Install memcached using memcached::default if local memcached is enabled
  3. Include recipes from this cookbook to build, install, configure, and start mcrouter:
    • mcrouter::folly
    • mcrouter::install
    • mcrouter::configure
    • mcrouter::service

install

Handle the installation of mcrouter from source.

folly

Handle the installation of folly, a C++ lib Facebook developed.

configure

Configure mcrouter.

service

Set up, enable, and start services for mcrouter.

Author

Author:: EverTrue, Inc. (devops@evertrue.com)

Dependent cookbooks

apt >= 0.0.0
build-essential >= 0.0.0
ark >= 0.0.0
memcached ~> 1.7
magic ~> 1.1

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

CHANGELOG for mcrouter

[v2.0.0] (2015-08-17)

Breaking changes:

  • Folly version updated to v0.53.0
    • This is now adjustable via an attribute, node['folly']['version']
  • Mcrouter version set to v0.5.0
    • This is now adjustable via an attribute, node['mcrouter']['version']

Fixes

  • Packages needed for Folly/Mcrouter updated as per most recent Folly/Mcrouter docs

[v1.0.1] (2015-07-15)

Fixes:

  • Add dependency package: libssl-dev

[v1.0.0] (2015-07-09)

Breaking changes:

  • ['mcrouter']['src_dir'] no longer determines build location (that is now :file_cache_path), and as a result...
  • Builds are now done in :file_cache_path instead of /opt
  • mcrouter::folly is now included by mcrouter::install

Changes:

  • Vastly clean up the install process (e.g. now using ark for source install)
    • Stopped installing gtest
    • Pruned Apt package install list
    • Use ./configure defaults rather than specifying a zillion environment variables
    • Just do make install for mcrouter and use the default install location (rather than linking /usr/local/bin/mcrouter -> node['mcrouter']['install_dir']/bin/mcrouter)
    • Just install build-essentials with the cookbook rather than devoting half the cookbook to setting up the build system
    • Break package installs out into _deps recipe
  • Folly and McRouter now delete their build directories once they're finished installing
  • Update the README
  • Clean up the Upstart script a bit

Fixes:

  • Run ldconfig after make install on folly (addresses "library not found" issue with mcrouter)

[v0.2.2] (2015-02-28)

Fixes:

  • Subscribed service[mcrouter] to its own service script to restart on any changes to its CLI options

[v0.2.1] (2015-02-25)

Fixes:

  • Updated, clarified README

[v0.2.0] (2015-02-25)

Fixes:

  • Replace missed hard-coded ownership settings with node['mcrouter']['user']

Changes:

  • Switch from hard-coded CLI flags to an hash attribute-driven system, utilizing the magic cookbook

[v0.1.0] (2015-02-24)

Fixes:

  • Fix paths for dependent libraries for mcrouter build
  • Ensure dirs needed for mcrouter exist
  • Fix test assertion for mcrouter config

Changes:

  • Parameterize paths for folly & mcrouter
    • Makes for simpler configuration of builds
  • Fix path to optionally-installed double-conversion lib
  • Install & configure memcached to start on port 11811
    • mcrouter needs an instance of memcached somewhere to talk to; simplest thing is to just install it locally
  • Set up an Upstart service to manage mcrouter

[v0.0.1] (2015-02-19)

Changes:

  • Initial release:
    • Builds & installs mcrouter

Collaborator Number Metric
            

2.0.0 passed this metric

Contributing File Metric
            

2.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

2.0.0 failed this metric

FC122: Use the build_essential resource instead of the recipe: mcrouter/recipes/_deps.rb:1
Run with Foodcritic Version 14.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

No Binaries Metric
            

2.0.0 passed this metric

Testing File Metric
            

2.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

2.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number