cookbook 'dataloop_chef_client', '~> 0.1.17'
dataloop_chef_client (3) Versions 0.1.17 Follow0
Dataloop plugin for the chef-client in Nagios format
cookbook 'dataloop_chef_client', '~> 0.1.17', :supermarket
knife supermarket install dataloop_chef_client
knife supermarket download dataloop_chef_client
dataloop_chef_client
This cookbook provides a dataloop plugin that monitors the last check-in time
from chef clients. Please note that it does not install dataloop. It does,
however, expect that dataloop is installed in order for its file-based plugin
deployment to work properly.
Deployment
Simply add dataloop_chef_client the run-list. It will deploy a three resources:
- script: Executable file responsible for querying the ChefSever for the ohai_time and writing plugin output to file (/var/opt/dataloop_chef_client.out by default)
- plugin: Executable file resopnsible for reading the contents of the output file to be interpreted by dataloop, stored by default in /opt/dataloop/plugins
- cron: Executes the script on a given interval
Important attributes:
- default['dataloop-chef-client']['warning']: default 3600 seconds (1 hour)
- default['dataloop-chef-client']['critical']: default 86400 (1 day)
Tested Operating Systems
- Ubuntu 12.04
- Ubuntu 14.04
- Centos 6.7
- Centos 7.2
Tested Chef Clients
- 11.18.0
- 12.6.0
Development
Be sure to have a docker instance running. docker-machine is a good way to
ensure this. Installation instructions can be found
here
Next, execute the following in the root of this project:
docker-machine start
eval $(docker-machine env)
gem install bundler
bundle install
If all is well, you should have all dependencies installed. To test, simply
run rake. Integration tests are run under test-kitchen
using the kitchen-docker
provider.
Why a leverage a cron job?
The Chef-API needs read access to sensitive files, namely client.rb and
client.pem. Instead of granting the dataloop user access to these files, this
cookbook run the script under root and simply allows the dataloop user to read
the output of the script.
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
Collaborator Number Metric
0.1.17 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
0.1.17 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
0.1.17 failed this metric
FC064: Ensure issues_url is set in metadata: dataloop_chef_client/metadata.rb:1
FC065: Ensure source_url is set in metadata: dataloop_chef_client/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dataloop_chef_client/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dataloop_chef_client/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.17 passed this metric
Testing File Metric
0.1.17 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
0.1.17 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
0.1.17 failed this metric
0.1.17 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
0.1.17 failed this metric
FC064: Ensure issues_url is set in metadata: dataloop_chef_client/metadata.rb:1
FC065: Ensure source_url is set in metadata: dataloop_chef_client/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dataloop_chef_client/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dataloop_chef_client/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.17 passed this metric
Testing File Metric
0.1.17 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
0.1.17 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
0.1.17 failed this metric
FC065: Ensure source_url is set in metadata: dataloop_chef_client/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dataloop_chef_client/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dataloop_chef_client/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.1.17 passed this metric
Testing File Metric
0.1.17 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
0.1.17 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
0.1.17 failed this metric
0.1.17 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