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

RSS

platformstack (31) Versions 3.1.4

Provides Rackspace base platform and managed support

Berkshelf/Librarian
Policyfile
Knife
cookbook 'platformstack', '= 3.1.4'
cookbook 'platformstack', '= 3.1.4', :supermarket
knife cookbook site install platformstack
knife cookbook site download platformstack
README
Dependencies
Changelog
Quality

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

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

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

Foodcritic Metric
            

3.1.4 failed this metric

FC031: Cookbook without metadata file: /tmp/cook/ca98b4ac216d569156aaf466/platformstack/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/ca98b4ac216d569156aaf466/platformstack/metadata.rb:1