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

influxdb (28) Versions 6.1.0

InfluxDB, a timeseries database

Policyfile
Berkshelf
Knife
cookbook 'influxdb', '= 6.1.0', :supermarket
cookbook 'influxdb', '= 6.1.0'
knife supermarket install influxdb
knife supermarket download influxdb
README
Dependencies
Changelog
Quality 71%

InfluxDB

wercker status

Chef cookbook to install and configure InfluxDB.

Support

Cookbook Version InfluxDB Version
v5.x.x >= v1.0.0
v4.4.1 < v1.0.0

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

Note : InfluxDB Enterprise uses different version naming schema and is
distributed in two packages: influxdb-data and influxdb-meta.
Install it this way:

node.default['influxdb']['version'] = "1.3.5-c1.3.5"
node.default['influxdb']['download_urls'] = {
  'debian' => 'https://dl.influxdata.com/enterprise/releases',
  'rhel' => 'https://dl.influxdata.com/enterprise/releases'
}

influxdb_install 'influxdb-meta' do
  install_version node['influxdb']['version']
  install_type 'file'
  checksum '87d99ba4a90487ee1a9'
  action [:install]
end

influxdb_install 'influxdb-data' do
  install_version node['influxdb']['version']
  install_type 'file'
  checksum '4c17e7d3bac8f565c140'
  action [:install]
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.

Note: in v1.0.0+ there is an auto-generated default profile called autogen.
To make your policy the default, you will want to set default parameter
true.

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.

If you need rewrite continuous query if it already exist set rewrite parametr to true.

influxdb_continuous_query "test_continuous_query" do
  database 'foodb'
  rewrite false
  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

rake publish

License

This project is licensed under the MIT license

Maintainers

Ben Dang me@bdang.it

E Camden Fisher fish@fishnix.net

Dependent cookbooks

nodejs >= 2.4.4
chef_handler >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Change Log

6.1.0 (2017-10-06)

Full Changelog

Closed issues:

  • No candidate version available for influxdb #144

Merged pull requests:

HISTORY

6.0.0

  • [major] Removed support for 12.1 thru 12.4.
  • [minor] Fix install of influxdb
    • node['influxdb']['include_repository'] was getting set to nil even though custom resource influxdb_install set include_repository default to false. To fix needed to set the node attribute to be set properly
    • fixed rubocop styling
    • fixed foodcritic lints
    • updated kitchen to test for Chef 13
    • updated wercker profile to use latest and greatest chefdk
  • [patch] Use Generator class instead of dump method for config generation [#143](../../pull/143) (contributed by @ton31337)
    • We are no longer using toml-rb and instead use toml

5.2.2

  • [patch] notifying influxes service after config change [#140](../../pull/140) (contributed by @nilroy)

5.2.1

  • [patch] Add a rake publish target

5.2.0

  • [minor] Add SSL support for API-based resources (contributed by @kjschnei001)

5.1.0

  • [minor] add ability to renew continuous query record if it exist by option rewrite in lwrp (contributed by @cyberflow)
  • [patch] fix #133 that prevented latest versions of influxdb to be installed installs of influxdb (contributed by @cyberflow)
  • [patch] clean up rubocop #136

5.0.3

  • [patch] Pass force options to package install to enable upgrades (contributed by @eheydrick)
  • [patch] install InfluxDB 1.0.2 (contributed by @eheydrick)

5.0.2

  • [patch] handle InfluxDB::Error when auth enabled without admin user (contributed by @jschnare)

5.0.1

  • [patch] relax apt and yum dependencies (contributed by @dpattmann)

5.0.0

  • [major] Support for 1.0.x which is not backward compatible
  • [major] Updated apt cookbook pin to ~> 4.0
  • [major] Updated yum cookbook pin to ~> 4.0
  • [minor] Reduce number of TK Cases to 12.1, 12.7 and 12.14.
  • [patch] removed specific branch used for compat_resource

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)

* This Change Log was automatically generated by github_changelog_generator

Collaborator Number Metric
            

6.1.0 passed this metric

Contributing File Metric
            

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

6.1.0 passed this metric

License Metric
            

6.1.0 passed this metric

No Binaries Metric
            

6.1.0 passed this metric

Testing File Metric
            

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

6.1.0 passed this metric