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

platformstack (31) Versions 4.0.0

Provides Rackspace base platform and managed support

Policyfile
Berkshelf
Knife
cookbook 'platformstack', '~> 4.0.0', :supermarket
cookbook 'platformstack', '~> 4.0.0'
knife supermarket install platformstack
knife supermarket download platformstack
README
Dependencies
Changelog
Quality 27%

Stories in Ready
Circle CI

PlatformStack

This cookbook installs and sets up commonly used things that we consider useful or standard (such as setting the timezone to UTC). This cookbook installs things that are and are NOT specific to DevOps support level at Rackspace. Much of the distinction is made in things named 'rackops' (managed) vs. 'platform' (managed and unmanaged). This cookbook was merged with one originally named 'rackops_rolebook' as part of RFC 006.

general notes

Most things can be toggled with an enabled attribute and some things are disabled by default. We lock down openssh pretty hard by default as well.

rackspace services

If you wish to use rackspace_cloudbackup or cloud monitoring you will need to set the following attributes:

node['rackspace']['cloud_credentials']['username']
node['rackspace']['cloud_credentials']['api_key']

specific notes

iptables

  • We only start iptables if node['platformstack']['rackconnect'] is false
  • We set up the rackconnect user and enable password auth via openssh if node['platformstack']['rackconnect'] is true
  • We allow ssh from the world by default (controled by the node['platformstack']['iptables']['allow_ssh_from_world'] attribute

locale

Fairly simple and set by the node['platformstack']['locale'] attribute

monitors

Sets up monitoring for the following by default:
- cpu
- disk
- load
- memory
- network
- filesystem
- for non-memory type filesystems by default
- service
- only enabled if set up via the node['platformstack']['cloud_monitoring']['service']['name'] attribute

You can set the period and timeout along with the critical and warning thresholds via attributes, as well as configure custom monitors. Check the cloud_monitoring attributes file for more info.

default

Sets the timezone to UTC by default.

We run last in the run list via a notification / ruby_block trick to run last so that we can collect all overrides for node attributes.

This cookbook sets up the following (default disabled will be noted by a '*')
- apt:: default if debian
- locale
- ntp
- timezone
- auto-patching
- chef-client
- postfix
- newrelic (if license exists)
- rackspace_cloudbackup
- *statsd
- *logstash_rsyslog client
- *client-rekey
- omnibus_updater
- monitors
- iptables
- openssh

Dependent cookbooks

apt ~> 2.6
auto-patch >= 0.0.0
chef-client >= 0.0.0
chef-sugar >= 0.0.0
client-rekey >= 0.0.0
consul >= 0.0.0
git >= 0.0.0
java >= 0.0.0
motd-tail ~> 2.0
newrelic >= 0.0.0
ntp >= 0.0.0
omnibus_updater >= 0.0.0
ohai ~> 2.0
openssh >= 0.0.0
postfix >= 0.0.0
rackspace_cloudbackup >= 0.0.0
rackspace_iptables ~> 1.7
rsyslog >= 0.0.0
statsd >= 0.0.0
sudo ~> 2.7
timezone-ii >= 0.0.0
user ~> 0.3
yum >= 0.0.0
slack_handler >= 0.0.0

Contingent cookbooks

elkstack Applicable Versions
jenkinsstack Applicable Versions
magentostack Applicable Versions
nodestack Applicable Versions
phpstack Applicable Versions
pythonstack Applicable Versions
rackops_rolebook Applicable Versions
stack_commons Applicable Versions

3.1.5

  • Run rackspace_cloudbackup normally (not in a ruby block at the end of the run)

3.1.4

  • Only install tmux on Ubuntu (#205).

3.1.3

  • Remove .blank? in favor of .empty?

3.1.2

  • Unpin git cookbook (#200)
  • Add additional packages (#201)
  • Do not pass false for NR license (#202)

3.1.1

3.1.0

  • node['openssh']['server']['subsystem'] supports more platforms
  • removed rest-client (removed in chef12 as well) in favor of net/http

3.0.4

3.0.3

  • Make sure nothing is done about cloud-monitoring if the the is set to false

3.0.2

  • Added enable/disable flag for slack_handler recipe.
  • Added a toggle for iptables, to enable/disable based on feature flag attribute

3.0.1

  • Added enable/disable flag for iptables recipe.

3.0.0

  • Due to the various problems it presents (circular dependencies, kibana Berksfile entries on every cookbook in a 3 mile radius, etc), we are no longer going to activate elkstack by default in platformstack. In order to include elkstack now, simply include_recipe 'elkstack::agent' on your node or add it to the runlist directly.

2.0.0

  • Merge with rackops_rolebook, keeping this cookbook as the result. See RFC 006 and the resulting PR for more information.

1.5.3

  • Disable force upgrade of omnibus

1.5.0

  • Setup remote-http monitors from attribute hash.

1.4.4

  • Remove now-unused logstash_commons references

1.4.3

  • Add missing dependency (wasn't an error since elkstack depends on it, but still)
  • Add a hash to use to configure custom logstash

1.4.2

  • Guard more of elkstack execution to be sure we don't do anything too early, undoes part of 1.4.2

1.4.2

  • Remove logic that is already in elkstack::agent

1.4.0

  • Bump to re-release due to Supermarket upload concerns

1.3.0

  • Allow wrappers to supply additional custom monitors (always intended, but wasn't implemented)

Collaborator Number Metric
            

4.0.0 failed this metric

Failure: Cookbook has 1 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

4.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
            

4.0.0 failed this metric

FC037: Invalid notification action: platformstack/recipes/monitors.rb:136
FC037: Invalid notification action: platformstack/recipes/monitors.rb:153
FC037: Invalid notification action: platformstack/recipes/monitors.rb:188
FC104: Use the :run action in ruby_block instead of :create: platformstack/recipes/default.rb:31
FC104: Use the :run action in ruby_block instead of :create: platformstack/recipes/rack_user.rb:15
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

No Binaries Metric
            

4.0.0 passed this metric

Testing File Metric
            

4.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
            

4.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