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

influxdb (25) Versions 4.4.2

InfluxDB, a timeseries database

Berkshelf/Librarian
Policyfile
Knife
cookbook 'influxdb', '= 4.4.2'
cookbook 'influxdb', '= 4.4.2', :supermarket
knife cookbook site install influxdb
knife cookbook site download influxdb
README
Dependencies
Changelog
Quality 33%

InfluxDB

wercker status

Chef cookbook to install and configure InfluxDB.

Usage

To install InfluxDB and place its configuration file, include the influxdb::default recipe in your node's run_list. The default recipe installs the necessary dependencies to use the custom resources defined in this cookbook.

For rendering the config set the parameter under node['influxdb']['config']

default['influxdb']['config']['MyParameter'] = 'val'

Resources

The following gems are used by the custom resources and are installed by the default recipe:

This cookbook ships with five custom resources for managing the configuration file, users, databases, cluster admins, and retention policies:

influxdb_config

This resource writes a configuration file for InfluxDB based on the passed configuration hash:

influxdb_config node['influxdb']['config_file_path'] do
  config node['influxdb']['config']
  action :create
end

This resource is used by the default recipe to place the configuration defined in node['influxdb']['config'].

influxdb_database

Configures an InfluxDB database.

influxdb_database 'my_db' do
  action :create
end

influxdb_install

This resource sets up or removes the appropriate repositories and installs/removes the appropriate packages

influxdb_install 'influxdb' do
  arch_type 'amd64' # if undefined will auto detect
  include_repository true # default
  influxdb_key 'https://repos.influxdata.com/influxdb.key' # default
  action :install # default
end
influxdb_install 'influxdb' do
  action :remove
end

influxdb_user

This resources configures a user to interact with InfluxDB databases.

influxdb_user 'user' do
  password 'changeme'
  databases ['my_db']
  action :create
end

influxdb_admin

This resources configures a cluster admin to interact with InfluxDB.

influxdb_admin 'admin' do
  password 'changeme'
  action :create
end

influxdb_retention_policy

This resources configures a retention policy on a given database. The name attribute is not used, the database and policy name provide the unique names used by InfluxDB.

influxdb_retention_policy "foodb default retention policy" do
  policy_name 'default'
  database 'foodb'
  duration '1w'
  replication 1
  action :create
end

influxdb_continuous_query

This resources configures a continuous query on a given database.

influxdb_continuous_query "test_continuous_query" do
  database 'foodb'
  query 'SELECT min(mouse) INTO min_mouse FROM zoo GROUP BY time(30m)'
  action :create
end

Client Libraries

Right now, this cookbook only supports the Ruby and CLI client libraries so as not to add too many dependencies. That might change in the near future. By default both flavors are disabled. Enable e.g. Ruby via:

node.default['influxdb']['client']['ruby']['enable'] = true

Finally include the influxdb::client in your node's run_list to install the clients.

Tests

To run tests, install all dependencies with bundler:

bundle install

Then to run tests:

rake # Quick tests only (rubocop + minitest)
rake test:complete # All tests (rubocop + minitest + kitchen)

Release Steps

  1. Run through Deploy step in Wercker
  2. cd ..; knife supermarket share influxdb "Monitoring & Trending" -o .

License

This project is licensed under the MIT license

Maintainers

Ben Dang me@bdang.it

E Camden Fisher fish@fishnix.net

Dependent cookbooks

compat_resource >= 0.0.0
yum ~> 3.6
apt ~> 2.7
chef_handler >= 0.0.0
nodejs ~> 2.4

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

CHANGELOG

[unreleased]

4.4.2

  • Updated for compliance with toml-rb 1.0.0 gem

4.4.1

  • Add steps to cut release
  • Fix invalid property type 'nil' in continuous query options (contributed by @kentarosasaki)

4.4.0

  • Added support for file install type (contributed by @chrisduong)
  • Added extra continuous query options (contributed by @cyberflow)
  • Make docker default driver for Test Kitchen

4.3.0

  • Added influxdb_continuous_query (contributed by @cyberflow)

4.2.0

  • Added influxdb_install resource (contributed by @majormoses)

4.1.0

  • Updated attributes to support Influxdb 0.10.0
  • Set default resource actions (:create is default)
  • Fixed support for Chef-Client 12.6
  • Fixed rubocop styling
  • Added functional test to check restarts service restarts on config change

4.0.1

  • License update from Apache 2.0 to MIT
    • transfer of ownership

4.0.0

  • Support for RHEL
  • Support for Chef-Client 12.1+
  • Support 0.9.5+
  • Added ChefSpec Matchers
  • Use toml-rb instead of toml

3.0.0

  • Update to influxdb gem 0.2.x, which is not backwards compatible (contributed by @cmjosh)

2.7.0

  • Add :stop action, remove :delete action from influxdb resource (contributed by @alvaromorales)

2.6.2

  • Allow configuration options for databases (contributed by @wosc)

2.6.1

  • Enable custom version of influxdb gem (contributed by @kri5)

2.6.0

  • Support for 0.9.x release of InfluxDB (contributed by @rberger)

2.5.0

  • Move influxdb resource actions to an attribute (contributed by @directionless)

2.4.0

  • Update default config for 0.8.5 and up (contributed by @tjwallace)

2.3.0

  • Update checksums for 0.8.6 (contributed by @tjwallace)

2.2.2

  • Touch logfile if it does not exist (contributed by @odolbeau)

2.2.1

  • Updated latest checksum to be accurate (contributed by @nomadium)

2.2.0

  • Added dbadmin parameter to influxdb_user, allowing granular control of which users are admins for which databases (contributed by @BarthV)

2.1.1

  • User and admin deletion now idempotent (contributed by @flowboard)

2.1.0

  • Multiple style and testing updates (contribued by @odolbeau)

2.0.4

  • Default logfile path is now the Debian package default (contributed by @masarakki)

2.0.3

  • Fixed typo in cluster admin check per InfluxDB 0.6.0 (contributed by @Chelo)

License Metric
            

4.4.2 passed this metric

Supported Platforms Metric
            

4.4.2 failed this metric

influxdb should declare what platform(s) it supports.

Version Tag Metric
            

4.4.2 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