cookbook 'resource-weight', '~> 0.1.0'
resource-weight (1) Versions 0.1.0 Follow0
Allow to set weight on resources
cookbook 'resource-weight', '~> 0.1.0', :supermarket
knife supermarket install resource-weight
knife supermarket download resource-weight
resource-weight
This cookbook introduces weight property on resources.
This notion emerged during a discussion of London chef summit in Oct 2016.
Our need was to qualify resources with a high impact (i.e that cause downtime on the node) such as reboots, reinstallation, some service restarts. Those resources would be protected automatically by a choregraphie.
This would solve the necessity to manually manage lists of these resources.
Someone suggested to generalize the high impact flag by a weight property to use it for other use cases.
Example use cases:
- graph impact of chef-client run over time (weighting each resource)
- adopt rules to avoid running chef-client during peak hours if its impact has a weigh above a threshold
- simplify definitions of choregraphies
Note: The intent of this cookbook is to validate the interest of a feature that could be integrated in chef.
Usage
All resources now have a property weight.
In recipes:
```
service 'network' do
weight 5
action :start
end
execute 'something' do
action :restart, 'service[network]'
end
```
It is possible to add a default weight to all instances of a given resource.
In attributes:
default['resource-weight']['reboot']['default-weight'] = 5
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
Collaborator Number Metric
0.1.0 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.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
0.1.0 failed this metric
FC066: Ensure chef_version is set in metadata: resource-weight/metadata.rb:1
FC069: Ensure standardized license defined in metadata: resource-weight/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.0 passed this metric
Testing File Metric
0.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
0.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 include a tag that matches this cookbook version number
0.1.0 failed this metric
0.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
0.1.0 failed this metric
FC066: Ensure chef_version is set in metadata: resource-weight/metadata.rb:1
FC069: Ensure standardized license defined in metadata: resource-weight/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.0 passed this metric
Testing File Metric
0.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
0.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 include a tag that matches this cookbook version number
0.1.0 failed this metric
FC069: Ensure standardized license defined in metadata: resource-weight/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.1.0 passed this metric
Testing File Metric
0.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
0.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 include a tag that matches this cookbook version number
0.1.0 failed this metric
0.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 include a tag that matches this cookbook version number