Initial Chef repository
This commit is contained in:
9
cookbooks/redis/.gitignore
vendored
Normal file
9
cookbooks/redis/.gitignore
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
*.tgz
|
||||
*.tar.gz
|
||||
vendor/bundle
|
||||
.bundle
|
||||
.DS_Store
|
||||
build/*
|
||||
tmp/
|
||||
*.lock
|
||||
.kitchen/*
|
||||
20
cookbooks/redis/.kitchen.yml
Normal file
20
cookbooks/redis/.kitchen.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
driver:
|
||||
require_chef_omnibus: <%= ENV.fetch("CHEF_VERSION", "latest") %>
|
||||
ssh_key: <%= File.expand_path("./test/support/keys/vagrant") %>
|
||||
name: vagrant
|
||||
|
||||
provisioner:
|
||||
name: chef_solo
|
||||
|
||||
platforms:
|
||||
- name: debian-6.0.8
|
||||
- name: debian-7.2.0
|
||||
- name: ubuntu-12.04
|
||||
- name: ubuntu-14.04
|
||||
|
||||
suites:
|
||||
- name: default
|
||||
run_list:
|
||||
- recipe[redis::server]
|
||||
- recipe[redis::client]
|
||||
# - recipe[minitest-handler]
|
||||
18
cookbooks/redis/.rubocop.yml
Normal file
18
cookbooks/redis/.rubocop.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
LineLength:
|
||||
Max: 80
|
||||
Exclude:
|
||||
- "**/attributes/*.rb"
|
||||
- "**/metadata.rb"
|
||||
|
||||
StringLiterals:
|
||||
EnforcedStyle: double_quotes
|
||||
|
||||
PercentLiteralDelimiters:
|
||||
PreferredDelimiters:
|
||||
"%w": "[]" # Arrays use brackets
|
||||
|
||||
SingleSpaceBeforeFirstArg:
|
||||
Enabled: false # too strict about metadata and certain formatting
|
||||
|
||||
inherit_from: test/support/rubocop/enabled.yml
|
||||
inherit_from: test/support/rubocop/disabled.yml
|
||||
1
cookbooks/redis/.ruby-gemset
Normal file
1
cookbooks/redis/.ruby-gemset
Normal file
@@ -0,0 +1 @@
|
||||
chef-redis
|
||||
1
cookbooks/redis/.ruby-version
Normal file
1
cookbooks/redis/.ruby-version
Normal file
@@ -0,0 +1 @@
|
||||
2.1.5
|
||||
19
cookbooks/redis/.travis.yml
Normal file
19
cookbooks/redis/.travis.yml
Normal file
@@ -0,0 +1,19 @@
|
||||
language: ruby
|
||||
bundler_args: --jobs 3 --without integration
|
||||
rvm:
|
||||
- 1.9.3
|
||||
- 2.0.0
|
||||
- 2.1.5
|
||||
before_script:
|
||||
- "gem install bundler-audit --no-rdoc --no-ri && bundle-audit update"
|
||||
script:
|
||||
- bundle-audit
|
||||
- bundle exec rake rubocop
|
||||
- bundle exec rake foodcritic
|
||||
- bundle exec rake chefspec
|
||||
- bundle exec rake kitchen:all
|
||||
- bundle exec license_finder --quiet
|
||||
env:
|
||||
matrix:
|
||||
- CHEF_VERSION: "10.30"
|
||||
- CHEF_VERSION: "11.16"
|
||||
7
cookbooks/redis/Berksfile
Normal file
7
cookbooks/redis/Berksfile
Normal file
@@ -0,0 +1,7 @@
|
||||
source "http://api.berkshelf.com"
|
||||
|
||||
metadata
|
||||
|
||||
group :integration do
|
||||
cookbook "minitest-handler"
|
||||
end
|
||||
20
cookbooks/redis/Gemfile
Normal file
20
cookbooks/redis/Gemfile
Normal file
@@ -0,0 +1,20 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
chef_version = ENV.fetch("CHEF_VERSION", "11.16")
|
||||
|
||||
gem "chef", "~> #{chef_version}"
|
||||
gem "chefspec", "~> 4.1.1" if chef_version =~ /^11/
|
||||
|
||||
gem "berkshelf", "~> 3.2.1"
|
||||
gem "foodcritic", "~> 4.0.0"
|
||||
gem "license_finder", "~> 1.2.0"
|
||||
gem "rake"
|
||||
gem "rubocop", "~> 0.27.1"
|
||||
gem "serverspec", "~> 2.3.1"
|
||||
|
||||
group :integration do
|
||||
gem "busser-serverspec", "~> 0.5.3"
|
||||
gem "guard-rspec", "~> 4.3.1"
|
||||
gem "kitchen-vagrant", "~> 0.15.0"
|
||||
gem "test-kitchen", "~> 1.2.1"
|
||||
end
|
||||
5
cookbooks/redis/Guardfile
Normal file
5
cookbooks/redis/Guardfile
Normal file
@@ -0,0 +1,5 @@
|
||||
guard :rspec, cmd: "rspec --color", all_on_start: false do
|
||||
watch(/^spec\/(.+)_spec\.rb$/)
|
||||
watch(/^recipes\/(.+)\.rb$/) { |m| "spec/#{m[1]}_spec.rb" }
|
||||
watch("spec/spec_helper.rb") { "spec" }
|
||||
end
|
||||
20
cookbooks/redis/LICENSE.txt
Normal file
20
cookbooks/redis/LICENSE.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
The MIT License (MIT)
|
||||
Copyright © 2012-2014 Phil Cohen <github@phlippers.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the “Software”), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
155
cookbooks/redis/README.md
Normal file
155
cookbooks/redis/README.md
Normal file
@@ -0,0 +1,155 @@
|
||||
# chef-redis [](https://travis-ci.org/phlipper/chef-redis)
|
||||
|
||||
## Description
|
||||
|
||||
This cookbook installs [Redis](http://redis.io) from Chris Lea's [ppa archive](https://launchpad.net/~chris-lea/+archive/redis-server).
|
||||
|
||||
Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.
|
||||
|
||||
|
||||
## Requirements
|
||||
|
||||
### Supported Platforms
|
||||
|
||||
The following platforms are supported by this cookbook, meaning that the recipes run on these platforms without error:
|
||||
|
||||
* Ubuntu 12.04+
|
||||
* Debian 6+
|
||||
|
||||
### Cookbooks
|
||||
|
||||
* [apt](http://community.opscode.com/cookbooks/apt)
|
||||
* [minitest-handler](http://community.opscode.com/cookbooks/minitest-handler) _(suggested, not required)_
|
||||
|
||||
|
||||
## Recipes
|
||||
|
||||
* `redis` - The default recipe. Setup apt with ppa details.
|
||||
* `redis::server` - Install the Redis server.
|
||||
* `redis::client` - Install the Redis client.
|
||||
|
||||
# Usage
|
||||
|
||||
This cookbook installs the Redis components if not present, and pulls updates if they are installed on the system.
|
||||
|
||||
|
||||
## Attributes
|
||||
|
||||
```ruby
|
||||
case node["platform"]
|
||||
when "debian"
|
||||
default["redis"]["apt_distribution"] = node["lsb"]["codename"]
|
||||
default["redis"]["apt_repository"] = "dotdeb"
|
||||
default["redis"]["apt_uri"] = "http://packages.dotdeb.org"
|
||||
default["redis"]["apt_components"] = ["all"]
|
||||
default["redis"]["apt_key"] = "http://www.dotdeb.org/dotdeb.gpg"
|
||||
when "ubuntu"
|
||||
default["redis"]["apt_distribution"] = node["lsb"]["codename"]
|
||||
default["redis"]["apt_repository"] = "chris-lea-redis-server"
|
||||
default["redis"]["apt_uri"] = "http://ppa.launchpad.net/chris-lea/redis-server/ubuntu"
|
||||
default["redis"]["apt_components"] = ["main"]
|
||||
default["redis"]["apt_keyserver"] = "keyserver.ubuntu.com"
|
||||
default["redis"]["apt_key"] = "C7917B12"
|
||||
end
|
||||
default["redis"]["pidfile"] = "/var/run/redis/redis-server.pid"
|
||||
default["redis"]["daemonize"] = "yes"
|
||||
default["redis"]["port"] = 6379
|
||||
default["redis"]["bind"] = "127.0.0.1"
|
||||
default["redis"]["unixsocket"] = "/var/run/redis/redis.sock"
|
||||
default["redis"]["unixsocketperm"] = 755
|
||||
default["redis"]["timeout"] = 300
|
||||
default["redis"]["loglevel"] = "notice"
|
||||
default["redis"]["logfile"] = "/var/log/redis/redis-server.log"
|
||||
default["redis"]["syslog_enabled"] = "no"
|
||||
default["redis"]["syslog_ident"] = "redis"
|
||||
default["redis"]["syslog_facility"] = "local0"
|
||||
default["redis"]["databases"] = 16
|
||||
default["redis"]["snapshots"] = {
|
||||
900 => 1,
|
||||
300 => 10,
|
||||
60 => 10000
|
||||
}
|
||||
default["redis"]["stop_writes_on_bgsave_error"] = "yes"
|
||||
default["redis"]["rdbcompression"] = "yes"
|
||||
default["redis"]["rdbchecksum"] = "yes"
|
||||
default["redis"]["dbfilename"] = "dump.rdb"
|
||||
default["redis"]["dir"] = "/var/lib/redis"
|
||||
default["redis"]["slaveof"] = ""
|
||||
default["redis"]["masterauth"] = ""
|
||||
default["redis"]["slave_serve_stale_data"] = "yes"
|
||||
default["redis"]["slave_read_only"] = "yes"
|
||||
default["redis"]["repl_ping_slave_period"] = 10
|
||||
default["redis"]["repl_timeout"] = 60
|
||||
default["redis"]["slave_priority"] = 100
|
||||
default["redis"]["requirepass"] = ""
|
||||
default["redis"]["rename_commands"] = []
|
||||
default["redis"]["maxclients"] = 128
|
||||
default["redis"]["maxmemory"] = "64mb"
|
||||
default["redis"]["maxmemory_policy"] = "volatile-lru"
|
||||
default["redis"]["maxmemory_samples"] = 3
|
||||
default["redis"]["appendonly"] = "no"
|
||||
default["redis"]["appendfilename"] = "appendonly.aof"
|
||||
default["redis"]["appendfsync"] = "everysec"
|
||||
default["redis"]["no_appendfsync_on_rewrite"] = "no"
|
||||
default["redis"]["auto_aof_rewrite_percentage"] = 100
|
||||
default["redis"]["auto_aof_rewrite_min_size"] = "64mb"
|
||||
default["redis"]["lua_time_limit"] = 5000
|
||||
default["redis"]["slowlog_log_slower_than"] = 10000
|
||||
default["redis"]["slowlog_max_len"] = 1024
|
||||
default["redis"]["hash_max_ziplist_entries"] = 512
|
||||
default["redis"]["hash_max_ziplist_value"] = 64
|
||||
default["redis"]["list_max_ziplist_entries"] = 512
|
||||
default["redis"]["list_max_ziplist_value"] = 64
|
||||
default["redis"]["set_max_intset_entries"] = 512
|
||||
default["redis"]["zset_max_ziplist_entries"] = 128
|
||||
default["redis"]["zset_max_ziplist_value"] = 64
|
||||
default["redis"]["activerehashing"] = "yes"
|
||||
default["redis"]["client_output_buffer_limit"] = {
|
||||
"normal" => "0 0 0",
|
||||
"slave" => "256mb 64mb 60",
|
||||
"pubsub" => "32mb 8mb 60"
|
||||
}
|
||||
default["redis"]["include_config_files"] = []
|
||||
default["redis"]["ulimit"] = ""
|
||||
default["redis"]["auto_upgrade"] = false
|
||||
```
|
||||
|
||||
|
||||
## Basic Settings
|
||||
|
||||
* `node["redis"]["ulimit"]` - Sets the maximum number of file descriptors for the Redis process. If this is unset or empty, the limit is the system default. The default may not be high enough to handle a large number of concurrent connections. See [Redis Clients Handling](http://redis.io/topics/clients).
|
||||
|
||||
|
||||
## Contributors
|
||||
|
||||
Many thanks go to the following [contributors](https://github.com/phlipper/chef-redis/graphs/contributors) who have helped to make this cookbook even better:
|
||||
|
||||
* **[@smoil](https://github.com/smoil)**
|
||||
* `redis.conf` updates for Redis 2.6
|
||||
* **[@svend](https://github.com/svend)**
|
||||
* add attribute to set ulimit
|
||||
* **[@maciej](https://github.com/maciej)**
|
||||
* ensure `node["redis"]["dir"]` exists
|
||||
* **[@dwradcliffe](https://github.com/dwradcliffe)**
|
||||
* allow bind to all interfaces
|
||||
* **[@duggan](https://github.com/duggan)**
|
||||
* allow customizable apt sources
|
||||
|
||||
## Contributing
|
||||
|
||||
This cookbook could have way more personality... Help make it so!
|
||||
|
||||
1. Fork it
|
||||
2. Create your feature branch (`git checkout -b my-new-feature`)
|
||||
3. Commit your changes (`git commit -am 'Added some feature'`)
|
||||
4. Push to the branch (`git push origin my-new-feature`)
|
||||
5. Create new Pull Request
|
||||
|
||||
|
||||
## License
|
||||
|
||||
**chef-redis**
|
||||
|
||||
* Freely distributable and licensed under the [MIT license](http://phlipper.mit-license.org/2012-2014/license.html).
|
||||
* Copyright (c) 2012-2014 Phil Cohen (github@phlippers.net) [](http://coderwall.com/phlipper) [](https://www.gittip.com/phlipper/)
|
||||
* http://phlippers.net/
|
||||
31
cookbooks/redis/Rakefile
Normal file
31
cookbooks/redis/Rakefile
Normal file
@@ -0,0 +1,31 @@
|
||||
task default: "test"
|
||||
|
||||
desc "Run all tests except `kitchen`"
|
||||
task test: [:rubocop, :foodcritic, :chefspec]
|
||||
|
||||
desc "Run all tests"
|
||||
task all_tests: [:rubocop, :foodcritic, :chefspec, "kitchen:all"]
|
||||
|
||||
# rubocop style checker
|
||||
require "rubocop/rake_task"
|
||||
RuboCop::RakeTask.new
|
||||
|
||||
# foodcritic chef lint
|
||||
require "foodcritic"
|
||||
FoodCritic::Rake::LintTask.new do |t|
|
||||
t.options = { fail_tags: ["any"] }
|
||||
end
|
||||
|
||||
# chefspec unit tests
|
||||
require "rspec/core/rake_task"
|
||||
RSpec::Core::RakeTask.new(:chefspec) do |t|
|
||||
t.rspec_opts = "--color --format progress"
|
||||
end
|
||||
|
||||
# test-kitchen integration tests
|
||||
begin
|
||||
require "kitchen/rake_tasks"
|
||||
Kitchen::RakeTasks.new
|
||||
rescue LoadError
|
||||
task("kitchen:all") { puts "Unable to run `test-kitchen`" }
|
||||
end
|
||||
77
cookbooks/redis/attributes/default.rb
Normal file
77
cookbooks/redis/attributes/default.rb
Normal file
@@ -0,0 +1,77 @@
|
||||
case node["platform"]
|
||||
when "debian"
|
||||
default["redis"]["apt_distribution"] = node["lsb"]["codename"]
|
||||
default["redis"]["apt_repository"] = "dotdeb"
|
||||
default["redis"]["apt_uri"] = "http://packages.dotdeb.org"
|
||||
default["redis"]["apt_components"] = ["all"]
|
||||
default["redis"]["apt_key"] = "http://www.dotdeb.org/dotdeb.gpg"
|
||||
when "ubuntu"
|
||||
default["redis"]["apt_distribution"] = node["lsb"]["codename"]
|
||||
default["redis"]["apt_repository"] = "chris-lea-redis-server"
|
||||
default["redis"]["apt_uri"] = "http://ppa.launchpad.net/chris-lea/redis-server/ubuntu"
|
||||
default["redis"]["apt_components"] = ["main"]
|
||||
default["redis"]["apt_keyserver"] = "keyserver.ubuntu.com"
|
||||
default["redis"]["apt_key"] = "C7917B12"
|
||||
end
|
||||
|
||||
default["redis"]["pidfile"] = "/var/run/redis/redis-server.pid"
|
||||
default["redis"]["daemonize"] = "yes"
|
||||
default["redis"]["port"] = 6379
|
||||
default["redis"]["bind"] = "127.0.0.1"
|
||||
default["redis"]["unixsocket"] = "/var/run/redis/redis.sock"
|
||||
default["redis"]["unixsocketperm"] = 755
|
||||
default["redis"]["timeout"] = 300
|
||||
default["redis"]["loglevel"] = "notice"
|
||||
default["redis"]["logfile"] = "/var/log/redis/redis-server.log"
|
||||
default["redis"]["syslog_enabled"] = "no"
|
||||
default["redis"]["syslog_ident"] = "redis"
|
||||
default["redis"]["syslog_facility"] = "local0"
|
||||
default["redis"]["databases"] = 16
|
||||
default["redis"]["snapshots"] = {
|
||||
900 => 1,
|
||||
300 => 10,
|
||||
60 => 10_000
|
||||
}
|
||||
default["redis"]["stop_writes_on_bgsave_error"] = "yes"
|
||||
default["redis"]["rdbcompression"] = "yes"
|
||||
default["redis"]["rdbchecksum"] = "yes"
|
||||
default["redis"]["dbfilename"] = "dump.rdb"
|
||||
default["redis"]["dir"] = "/var/lib/redis"
|
||||
default["redis"]["slaveof"] = ""
|
||||
default["redis"]["masterauth"] = ""
|
||||
default["redis"]["slave_serve_stale_data"] = "yes"
|
||||
default["redis"]["slave_read_only"] = "yes"
|
||||
default["redis"]["repl_ping_slave_period"] = 10
|
||||
default["redis"]["repl_timeout"] = 60
|
||||
default["redis"]["slave_priority"] = 100
|
||||
default["redis"]["requirepass"] = ""
|
||||
default["redis"]["rename_commands"] = []
|
||||
default["redis"]["maxclients"] = 128
|
||||
default["redis"]["maxmemory"] = "64mb"
|
||||
default["redis"]["maxmemory_policy"] = "volatile-lru"
|
||||
default["redis"]["maxmemory_samples"] = 3
|
||||
default["redis"]["appendonly"] = "no"
|
||||
default["redis"]["appendfilename"] = "appendonly.aof"
|
||||
default["redis"]["appendfsync"] = "everysec"
|
||||
default["redis"]["no_appendfsync_on_rewrite"] = "no"
|
||||
default["redis"]["auto_aof_rewrite_percentage"] = 100
|
||||
default["redis"]["auto_aof_rewrite_min_size"] = "64mb"
|
||||
default["redis"]["lua_time_limit"] = 5000
|
||||
default["redis"]["slowlog_log_slower_than"] = 10_000
|
||||
default["redis"]["slowlog_max_len"] = 1024
|
||||
default["redis"]["hash_max_ziplist_entries"] = 512
|
||||
default["redis"]["hash_max_ziplist_value"] = 64
|
||||
default["redis"]["list_max_ziplist_entries"] = 512
|
||||
default["redis"]["list_max_ziplist_value"] = 64
|
||||
default["redis"]["set_max_intset_entries"] = 512
|
||||
default["redis"]["zset_max_ziplist_entries"] = 128
|
||||
default["redis"]["zset_max_ziplist_value"] = 64
|
||||
default["redis"]["activerehashing"] = "yes"
|
||||
default["redis"]["client_output_buffer_limit"] = {
|
||||
"normal" => "0 0 0",
|
||||
"slave" => "256mb 64mb 60",
|
||||
"pubsub" => "32mb 8mb 60"
|
||||
}
|
||||
default["redis"]["include_config_files"] = []
|
||||
default["redis"]["ulimit"] = ""
|
||||
default["redis"]["auto_upgrade"] = false
|
||||
11
cookbooks/redis/config/license_finder.yml
Normal file
11
cookbooks/redis/config/license_finder.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
---
|
||||
whitelist:
|
||||
- Apache 2.0
|
||||
- Apache v2
|
||||
- BSD
|
||||
- BSD-3
|
||||
- ISC
|
||||
- MIT
|
||||
- Ruby
|
||||
dependencies_file_dir: doc/license_finder
|
||||
project_name: chef-redis
|
||||
105
cookbooks/redis/doc/license_finder/dependencies.csv
Normal file
105
cookbooks/redis/doc/license_finder/dependencies.csv
Normal file
@@ -0,0 +1,105 @@
|
||||
addressable, 2.3.6, Apache 2.0
|
||||
ast, 2.0.0, MIT
|
||||
astrolabe, 1.3.0, MIT
|
||||
berkshelf, 3.2.1, Apache 2.0
|
||||
berkshelf-api-client, 1.2.0, Apache 2.0
|
||||
buff-config, 1.0.1, Apache 2.0
|
||||
buff-extensions, 1.0.0, Apache 2.0
|
||||
buff-ignore, 1.1.1, Apache 2.0
|
||||
buff-ruby_engine, 0.1.0, Apache 2.0
|
||||
buff-shell_out, 0.2.0, Apache 2.0
|
||||
bundler, 1.7.6, MIT
|
||||
busser, 0.6.0, Apache 2.0
|
||||
busser-serverspec, 0.5.3, Apache 2.0
|
||||
celluloid, 0.16.0, MIT
|
||||
celluloid-io, 0.16.1, MIT
|
||||
chef, 11.16.4, Apache 2.0
|
||||
chef-zero, 2.2.1, Apache 2.0
|
||||
chefspec, 4.1.1, MIT
|
||||
cleanroom, 1.0.0, Apache 2.0
|
||||
coderay, 1.1.0, MIT
|
||||
dep-selector-libgecode, 1.0.2, MIT, Apache 2.0
|
||||
dep_selector, 1.0.3, Apache v2
|
||||
diff-lcs, 1.2.5, MIT, Perl Artistic v2, GNU GPL v2
|
||||
erubis, 2.7.0, MIT
|
||||
faraday, 0.9.0, MIT
|
||||
fauxhai, 2.2.0, MIT
|
||||
ffi, 1.9.6, BSD
|
||||
ffi-yajl, 1.3.0, Apache 2.0
|
||||
foodcritic, 4.0.0, MIT
|
||||
formatador, 0.2.5, MIT
|
||||
gherkin, 2.12.2, MIT
|
||||
guard, 2.8.2, MIT
|
||||
guard-rspec, 4.3.1, MIT
|
||||
hashie, 2.1.2, MIT
|
||||
highline, 1.6.21, ruby
|
||||
hitimes, 1.2.2, ISC
|
||||
httparty, 0.13.3, MIT
|
||||
ipaddress, 0.8.0, MIT
|
||||
json, 1.8.1, ruby
|
||||
kitchen-vagrant, 0.15.0, Apache 2.0
|
||||
libyajl2, 1.2.0, Apache 2.0
|
||||
license_finder, 1.2, MIT
|
||||
listen, 2.8.0, MIT
|
||||
lumberjack, 1.0.9, MIT
|
||||
method_source, 0.8.2, MIT
|
||||
mime-types, 1.25.1, MIT, Artistic 2.0, GPL-2
|
||||
mini_portile, 0.6.1, MIT
|
||||
minitar, 0.5.4, ruby
|
||||
mixlib-authentication, 1.3.0, Apache 2.0
|
||||
mixlib-cli, 1.5.0, Apache 2.0
|
||||
mixlib-config, 2.1.0, Apache 2.0
|
||||
mixlib-log, 1.6.0, Apache 2.0
|
||||
mixlib-shellout, 1.6.0, Apache 2.0
|
||||
multi_json, 1.10.1, MIT
|
||||
multi_xml, 0.5.5, MIT
|
||||
multipart-post, 2.0.0, MIT
|
||||
net-http-persistent, 2.9.4, MIT
|
||||
net-scp, 1.2.1, MIT
|
||||
net-ssh, 2.9.1, MIT
|
||||
net-ssh-gateway, 1.2.0, MIT
|
||||
net-ssh-multi, 1.2.0, MIT
|
||||
nio4r, 1.0.1, MIT
|
||||
nokogiri, 1.6.4.1, MIT
|
||||
octokit, 3.5.2, MIT
|
||||
ohai, 7.4.0, Apache 2.0
|
||||
parser, 2.2.0.pre.8, MIT
|
||||
plist, 3.1.0, MIT
|
||||
polyglot, 0.3.5, MIT
|
||||
powerpack, 0.0.9, MIT
|
||||
pry, 0.10.1, MIT
|
||||
rack, 1.5.2, MIT
|
||||
rainbow, 2.0.0, MIT
|
||||
rake, 10.3.2, MIT
|
||||
rb-fsevent, 0.9.4, MIT
|
||||
rb-inotify, 0.9.5, MIT
|
||||
rest-client, 1.6.7, MIT
|
||||
retryable, 1.3.6, MIT
|
||||
ridley, 4.1.0, Apache 2.0
|
||||
rspec, 3.1.0, MIT
|
||||
rspec-core, 3.1.7, MIT
|
||||
rspec-expectations, 3.1.2, MIT
|
||||
rspec-its, 1.1.0, MIT
|
||||
rspec-mocks, 3.1.3, MIT
|
||||
rspec-support, 3.1.2, MIT
|
||||
rubocop, 0.27.1, MIT
|
||||
ruby-progressbar, 1.7.0, MIT
|
||||
rufus-lru, 1.0.5, MIT
|
||||
safe_yaml, 1.0.4, MIT
|
||||
sawyer, 0.5.5, MIT
|
||||
semverse, 1.2.1, Apache 2.0
|
||||
sequel, 4.16.0, MIT
|
||||
serverspec, 2.3.1, MIT
|
||||
slop, 3.6.0, MIT
|
||||
solve, 1.2.1, Apache 2.0
|
||||
specinfra, 2.5.0, MIT
|
||||
sqlite3, 1.3.10, New BSD
|
||||
systemu, 2.6.4, ruby
|
||||
test-kitchen, 1.2.1, Apache 2.0
|
||||
thor, 0.19.1, MIT
|
||||
timers, 4.0.1, MIT
|
||||
treetop, 1.5.3, MIT
|
||||
varia_model, 0.4.0, Apache 2.0
|
||||
wmi-lite, 1.0.0, Apache 2.0
|
||||
xml-simple, 1.1.4, ruby
|
||||
yajl-ruby, 1.2.1, MIT
|
||||
|
BIN
cookbooks/redis/doc/license_finder/dependencies.db
Normal file
BIN
cookbooks/redis/doc/license_finder/dependencies.db
Normal file
Binary file not shown.
2509
cookbooks/redis/doc/license_finder/dependencies.html
Normal file
2509
cookbooks/redis/doc/license_finder/dependencies.html
Normal file
File diff suppressed because one or more lines are too long
991
cookbooks/redis/doc/license_finder/dependencies.md
Normal file
991
cookbooks/redis/doc/license_finder/dependencies.md
Normal file
@@ -0,0 +1,991 @@
|
||||
# chef-redis
|
||||
|
||||
As of November 22, 2014 9:37pm. 105 total
|
||||
|
||||
## Summary
|
||||
* 65 MIT
|
||||
* 28 Apache 2.0
|
||||
* 5 ruby
|
||||
* 1 Apache 2.0, MIT
|
||||
* 1 BSD
|
||||
* 1 Apache v2
|
||||
* 1 ISC
|
||||
* 1 Artistic 2.0, GPL-2, MIT
|
||||
* 1 GNU GPL v2, MIT, Perl Artistic v2
|
||||
* 1 New BSD
|
||||
|
||||
|
||||
|
||||
## Items
|
||||
|
||||
|
||||
<a name="addressable"></a>
|
||||
### <a href="http://addressable.rubyforge.org/">addressable</a> v2.3.6
|
||||
#### URI Implementation
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Addressable is a replacement for the URI implementation that is part of
|
||||
Ruby's standard library. It more closely conforms to the relevant RFCs and
|
||||
adds support for IRIs and URI templates.
|
||||
|
||||
|
||||
<a name="ast"></a>
|
||||
### <a href="https://whitequark.github.io/ast/">ast</a> v2.0.0
|
||||
#### A library for working with Abstract Syntax Trees.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A library for working with Abstract Syntax Trees.
|
||||
|
||||
<a name="astrolabe"></a>
|
||||
### <a href="https://github.com/yujinakayama/astrolabe">astrolabe</a> v1.3.0
|
||||
#### An object-oriented AST extension for Parser
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
An object-oriented AST extension for Parser
|
||||
|
||||
<a name="berkshelf"></a>
|
||||
### <a href="http://berkshelf.com">berkshelf</a> v3.2.1 (default)
|
||||
#### Manages a Cookbook's, or an Application's, Cookbook dependencies
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Manages a Cookbook's, or an Application's, Cookbook dependencies
|
||||
|
||||
<a name="berkshelf-api-client"></a>
|
||||
### <a href="http://berkshelf.com">berkshelf-api-client</a> v1.2.0
|
||||
#### API Client for communicating with a Berkshelf API server
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
API Client for communicating with a Berkshelf API server
|
||||
|
||||
<a name="buff-config"></a>
|
||||
### <a href="https://github.com/RiotGames/buff-config">buff-config</a> v1.0.1
|
||||
#### A simple configuration class
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A simple configuration class
|
||||
|
||||
<a name="buff-extensions"></a>
|
||||
### <a href="https://github.com/RiotGames/buff-extensions">buff-extensions</a> v1.0.0
|
||||
#### Extensions to Core Ruby classes
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Extensions to Core Ruby classes
|
||||
|
||||
<a name="buff-ignore"></a>
|
||||
### <a href="https://github.com/sethvargo/buff-ignore">buff-ignore</a> v1.1.1
|
||||
#### A Ruby library for parsing lists of files and applying pattern matching exclusion (such as .gitignore)
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Parse ignore files with Ruby
|
||||
|
||||
<a name="buff-ruby_engine"></a>
|
||||
### <a href="https://github.com/RiotGames/buff-ruby_engine">buff-ruby_engine</a> v0.1.0
|
||||
#### Buff up your code with a mixin for querying the platform running Ruby
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A mixin for querying the platform running Ruby
|
||||
|
||||
<a name="buff-shell_out"></a>
|
||||
### <a href="https://github.com/RiotGames/buff-shell_out">buff-shell_out</a> v0.2.0
|
||||
#### Buff up your code with a mixin for issuing shell commands and collecting the output
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A mixin for issuing shell commands and collecting the output
|
||||
|
||||
<a name="bundler"></a>
|
||||
### bundler v1.7.6
|
||||
####
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
|
||||
<a name="busser"></a>
|
||||
### <a href="https://github.com/fnichol/busser">busser</a> v0.6.0
|
||||
#### Kitchen Busser - Runs tests for projects in test-kitchen
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Kitchen Busser - Runs tests for projects in test-kitchen
|
||||
|
||||
<a name="busser-serverspec"></a>
|
||||
### <a href="https://github.com/test-kitchen/busser-serverspec">busser-serverspec</a> v0.5.3 (integration)
|
||||
#### A Busser runner plugin for Serverspec
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A Busser runner plugin for Serverspec
|
||||
|
||||
<a name="celluloid"></a>
|
||||
### <a href="https://github.com/celluloid/celluloid">celluloid</a> v0.16.0
|
||||
#### Actor-based concurrent object framework for Ruby
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Celluloid enables people to build concurrent programs out of concurrent objects just as easily as they build sequential programs out of sequential objects
|
||||
|
||||
<a name="celluloid-io"></a>
|
||||
### <a href="http://github.com/celluloid/celluloid-io">celluloid-io</a> v0.16.1
|
||||
#### Celluloid::IO allows you to monitor multiple IO objects within a Celluloid actor
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Evented IO for Celluloid actors
|
||||
|
||||
<a name="chef"></a>
|
||||
### <a href="http://wiki.opscode.com/display/chef">chef</a> v11.16.4 (default)
|
||||
#### A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.
|
||||
|
||||
<a name="chef-zero"></a>
|
||||
### <a href="http://www.opscode.com">chef-zero</a> v2.2.1
|
||||
#### Self-contained, easy-setup, fast-start in-memory Chef server for testing and solo setup purposes
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Self-contained, easy-setup, fast-start in-memory Chef server for testing and solo setup purposes
|
||||
|
||||
<a name="chefspec"></a>
|
||||
### <a href="http://code.sethvargo.com/chefspec">chefspec</a> v4.1.1 (default)
|
||||
#### Write RSpec examples and generate coverage reports for Chef recipes!
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
ChefSpec is a unit testing and resource coverage (code coverage) framework for testing Chef cookbooks ChefSpec makes it easy to write examples and get fast feedback on cookbook changes without the need for virtual machines or cloud servers.
|
||||
|
||||
<a name="cleanroom"></a>
|
||||
### <a href="https://github.com/sethvargo/cleanroom">cleanroom</a> v1.0.0
|
||||
#### (More) safely evaluate Ruby DSLs with cleanroom
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Ruby is an excellent programming language for creating and managing custom DSLs, but how can you securely evaluate a DSL while explicitly controlling the methods exposed to the user? Our good friends instance_eval and instance_exec are great, but they expose all methods - public, protected, and private - to the user. Even worse, they expose the ability to accidentally or intentionally alter the behavior of the system! The cleanroom pattern is a safer, more convenient, Ruby-like approach for limiting the information exposed by a DSL while giving users the ability to write awesome code!
|
||||
|
||||
<a name="coderay"></a>
|
||||
### <a href="http://coderay.rubychan.de">coderay</a> v1.1.0
|
||||
#### Fast syntax highlighting for selected languages.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth integration and LOC counter.
|
||||
|
||||
<a name="dep-selector-libgecode"></a>
|
||||
### dep-selector-libgecode v1.0.2
|
||||
#### Installs a vendored copy of Gecode suitable for use with dep-selector
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a>, <a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Installs a vendored copy of Gecode suitable for use with dep-selector
|
||||
|
||||
<a name="dep_selector"></a>
|
||||
### <a href="http://github.com/opscode/dep-selector">dep_selector</a> v1.0.3
|
||||
#### Given packages, versions, and a dependency graph, find a valid assignment of package versions
|
||||
|
||||
Apache v2 whitelisted
|
||||
|
||||
Given packages, versions, and a dependency graph, find a valid assignment of package versions
|
||||
|
||||
<a name="diff-lcs"></a>
|
||||
### <a href="http://diff-lcs.rubyforge.org/">diff-lcs</a> v1.2.5
|
||||
#### Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a>, Perl Artistic v2, GNU GPL v2 whitelisted
|
||||
|
||||
Diff::LCS computes the difference between two Enumerable sequences using the
|
||||
McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities
|
||||
to create a simple HTML diff output format and a standard diff-like tool.
|
||||
|
||||
This is release 1.2.4, fixing a bug introduced after diff-lcs 1.1.3 that did
|
||||
not properly prune common sequences at the beginning of a comparison set.
|
||||
Thanks to Paul Kunysch for fixing this issue.
|
||||
|
||||
Coincident with the release of diff-lcs 1.2.3, we reported an issue with
|
||||
Rubinius in 1.9 mode
|
||||
({rubinius/rubinius#2268}[https://github.com/rubinius/rubinius/issues/2268]).
|
||||
We are happy to report that this issue has been resolved.
|
||||
|
||||
<a name="erubis"></a>
|
||||
### <a href="http://www.kuwata-lab.com/erubis/">erubis</a> v2.7.0
|
||||
#### a fast and extensible eRuby implementation which supports multi-language
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Erubis is an implementation of eRuby and has the following features:
|
||||
|
||||
* Very fast, almost three times faster than ERB and about 10% faster than eruby.
|
||||
* Multi-language support (Ruby/PHP/C/Java/Scheme/Perl/Javascript)
|
||||
* Auto escaping support
|
||||
* Auto trimming spaces around '<% %>'
|
||||
* Embedded pattern changeable (default '<% %>')
|
||||
* Enable to handle Processing Instructions (PI) as embedded pattern (ex. '<?rb ... ?>')
|
||||
* Context object available and easy to combine eRuby template with YAML datafile
|
||||
* Print statement available
|
||||
* Easy to extend and customize in subclass
|
||||
* Ruby on Rails support
|
||||
|
||||
|
||||
<a name="faraday"></a>
|
||||
### <a href="https://github.com/lostisland/faraday">faraday</a> v0.9.0
|
||||
#### HTTP/REST API client library.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
|
||||
<a name="fauxhai"></a>
|
||||
### <a href="https://github.com/customink/fauxhai">fauxhai</a> v2.2.0
|
||||
#### Fauxhai provides an easy way to mock out your ohai data for testing with chefspec!
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Easily mock out ohai data
|
||||
|
||||
<a name="ffi"></a>
|
||||
### <a href="http://wiki.github.com/ffi/ffi">ffi</a> v1.9.6
|
||||
#### Ruby FFI
|
||||
|
||||
<a href="http://en.wikipedia.org/wiki/BSD_licenses#4-clause_license_.28original_.22BSD_License.22.29">BSD</a> whitelisted
|
||||
|
||||
Ruby FFI library
|
||||
|
||||
<a name="ffi-yajl"></a>
|
||||
### <a href="http://github.com/opscode/ffi-yajl">ffi-yajl</a> v1.3.0
|
||||
#### Ruby FFI wrapper around YAJL 2.x
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Ruby FFI wrapper around YAJL 2.x
|
||||
|
||||
<a name="foodcritic"></a>
|
||||
### <a href="http://foodcritic.io">foodcritic</a> v4.0.0 (default)
|
||||
#### foodcritic-4.0.0
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Lint tool for Opscode Chef cookbooks.
|
||||
|
||||
<a name="formatador"></a>
|
||||
### <a href="http://github.com/geemus/formatador">formatador</a> v0.2.5
|
||||
#### Ruby STDOUT text formatting
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
STDOUT text formatting
|
||||
|
||||
<a name="gherkin"></a>
|
||||
### <a href="http://github.com/cucumber/gherkin">gherkin</a> v2.12.2
|
||||
#### gherkin-2.12.2
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.
|
||||
|
||||
<a name="guard"></a>
|
||||
### <a href="http://guardgem.org">guard</a> v2.8.2
|
||||
#### Guard keeps an eye on your file modifications
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Guard is a command line tool to easily handle events on file system modifications.
|
||||
|
||||
<a name="guard-rspec"></a>
|
||||
### <a href="https://rubygems.org/gems/guard-rspec">guard-rspec</a> v4.3.1 (integration)
|
||||
#### Guard gem for RSpec
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Guard::RSpec automatically run your specs (much like autotest).
|
||||
|
||||
<a name="hashie"></a>
|
||||
### <a href="https://github.com/intridea/hashie">hashie</a> v2.1.2
|
||||
#### Your friendly neighborhood hash library.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Hashie is a collection of classes and mixins that make hashes more powerful.
|
||||
|
||||
<a name="highline"></a>
|
||||
### <a href="http://highline.rubyforge.org">highline</a> v1.6.21
|
||||
#### HighLine is a high-level command-line IO library.
|
||||
|
||||
<a href="http://www.ruby-lang.org/en/LICENSE.txt">ruby</a> whitelisted
|
||||
|
||||
A high-level IO library that provides validation, type conversion, and more for
|
||||
command-line interfaces. HighLine also includes a complete menu system that can
|
||||
crank out anything from simple list selection to complete shells with just
|
||||
minutes of work.
|
||||
|
||||
|
||||
<a name="hitimes"></a>
|
||||
### <a href="http://github.com/copiousfreetime/hitimes">hitimes</a> v1.2.2
|
||||
#### Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible.
|
||||
|
||||
<a href="http://en.wikipedia.org/wiki/ISC_license">ISC</a> whitelisted
|
||||
|
||||
Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible. It currently supports any of the following systems: * any system with the POSIX call `clock_gettime()` * Mac OS X * Windows * JRuby Using Hitimes can be faster than using a series of `Time.new` calls, and it will have a much higher granularity. It is definitely faster than using `Process.times`.
|
||||
|
||||
<a name="httparty"></a>
|
||||
### <a href="http://jnunemaker.github.com/httparty">httparty</a> v0.13.3
|
||||
#### Makes http fun! Also, makes consuming restful web services dead easy.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Makes http fun! Also, makes consuming restful web services dead easy.
|
||||
|
||||
<a name="ipaddress"></a>
|
||||
### <a href="http://github.com/bluemonk/ipaddress">ipaddress</a> v0.8.0
|
||||
#### IPv4/IPv6 addresses manipulation library
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
IPAddress is a Ruby library designed to make manipulation
|
||||
of IPv4 and IPv6 addresses both powerful and simple. It mantains
|
||||
a layer of compatibility with Ruby's own IPAddr, while
|
||||
addressing many of its issues.
|
||||
|
||||
|
||||
<a name="json"></a>
|
||||
### json v1.8.1
|
||||
#### This json is bundled with Ruby
|
||||
|
||||
<a href="http://www.ruby-lang.org/en/LICENSE.txt">ruby</a> whitelisted
|
||||
|
||||
|
||||
<a name="kitchen-vagrant"></a>
|
||||
### <a href="https://github.com/test-kitchen/kitchen-vagrant/">kitchen-vagrant</a> v0.15.0 (integration)
|
||||
#### Kitchen::Driver::Vagrant - A Vagrant Driver for Test Kitchen.
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Kitchen::Driver::Vagrant - A Vagrant Driver for Test Kitchen.
|
||||
|
||||
<a name="libyajl2"></a>
|
||||
### <a href="https://github.com/opscode/libyajl2-gem">libyajl2</a> v1.2.0
|
||||
#### Installs a vendored copy of libyajl2 for distributions which lack it
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Installs a vendored copy of libyajl2 for distributions which lack it
|
||||
|
||||
<a name="license_finder"></a>
|
||||
### <a href="https://github.com/pivotal/LicenseFinder">license_finder</a> v1.2 (default)
|
||||
#### Audit the OSS licenses of your application's dependencies.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
LicenseFinder works with your package managers to find
|
||||
dependencies, detect the licenses of the packages in them, compare
|
||||
those licenses against a user-defined whitelist, and give you an
|
||||
actionable exception report.
|
||||
|
||||
|
||||
<a name="listen"></a>
|
||||
### <a href="https://github.com/guard/listen">listen</a> v2.8.0
|
||||
#### Listen to file modifications
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
The Listen gem listens to file modifications and notifies you about the changes. Works everywhere!
|
||||
|
||||
<a name="lumberjack"></a>
|
||||
### <a href="http://github.com/bdurand/lumberjack">lumberjack</a> v1.0.9
|
||||
#### A simple, powerful, and very fast logging utility that can be a drop in replacement for Logger or ActiveSupport::BufferedLogger.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A simple, powerful, and very fast logging utility that can be a drop in replacement for Logger or ActiveSupport::BufferedLogger. Provides support for automatically rolling log files even with multiple processes writing the same log file.
|
||||
|
||||
<a name="method_source"></a>
|
||||
### <a href="http://banisterfiend.wordpress.com">method_source</a> v0.8.2
|
||||
#### retrieve the sourcecode for a method
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
retrieve the sourcecode for a method
|
||||
|
||||
<a name="mime-types"></a>
|
||||
### <a href="http://mime-types.rubyforge.org/">mime-types</a> v1.25.1
|
||||
#### This library allows for the identification of a file's likely MIME content type
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a>, Artistic 2.0, GPL-2 whitelisted
|
||||
|
||||
This library allows for the identification of a file's likely MIME content
|
||||
type. This is release 1.25.1, fixing an issue with priority comparison for
|
||||
mime-types 1.x. The current release is 2.0, which only supports Ruby 1.9 or
|
||||
later.
|
||||
|
||||
Release 1.25.1 contains all features of 1.25, including the experimental
|
||||
caching and lazy loading functionality. The caching and lazy loading features
|
||||
were initially implemented by Greg Brockman (gdb). As these features are
|
||||
experimental, they are disabled by default and must be enabled through the use
|
||||
of environment variables. The cache is invalidated on a per-version basis; the
|
||||
cache for version 1.25 will not be reused for any later version.
|
||||
|
||||
To use lazy loading, set the environment variable +RUBY_MIME_TYPES_LAZY_LOAD+
|
||||
to any value other than 'false'. When using lazy loading, the initial startup
|
||||
of MIME::Types is around 12–25× faster than normal startup (on my system,
|
||||
normal startup is about 90 ms; lazy startup is about 4 ms). This isn't
|
||||
generally useful, however, as the MIME::Types database has not been loaded.
|
||||
Lazy startup and load is just *slightly* faster—around 1 ms. The real advantage
|
||||
comes from using the cache.
|
||||
|
||||
To enable the cache, set the environment variable +RUBY_MIME_TYPES_CACHE+ to a
|
||||
filename where MIME::Types will have read-write access. The first time a new
|
||||
version of MIME::Types is run using this file, it will be created, taking a
|
||||
little longer than normal. Subsequent loads using the same cache file will be
|
||||
approximately 3½× faster (25 ms) than normal loads. This can be combined with
|
||||
+RUBY_MIME_TYPES_LAZY_LOAD+, but this is *not* recommended in a multithreaded
|
||||
or multiprocess environment where all threads or processes will be using the
|
||||
same cache file.
|
||||
|
||||
As the caching interface is still experimental, the only values cached are the
|
||||
default MIME::Types database, not any custom MIME::Types added by users.
|
||||
|
||||
MIME types are used in MIME-compliant communications, as in e-mail or HTTP
|
||||
traffic, to indicate the type of content which is transmitted. MIME::Types
|
||||
provides the ability for detailed information about MIME entities (provided as
|
||||
a set of MIME::Type objects) to be determined and used programmatically. There
|
||||
are many types defined by RFCs and vendors, so the list is long but not
|
||||
complete; don't hesitate to ask to add additional information. This library
|
||||
follows the IANA collection of MIME types (see below for reference).
|
||||
|
||||
MIME::Types for Ruby was originally based on MIME::Types for Perl by Mark
|
||||
Overmeer, copyright 2001 - 2009.
|
||||
|
||||
MIME::Types is built to conform to the MIME types of RFCs 2045 and 2231. It
|
||||
tracks the {IANA registry}[http://www.iana.org/assignments/media-types/]
|
||||
({ftp}[ftp://ftp.iana.org/assignments/media-types]) with some unofficial types
|
||||
added from the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp]
|
||||
and added by the users of MIME::Types.
|
||||
|
||||
<a name="mini_portile"></a>
|
||||
### <a href="http://github.com/luislavena/mini_portile">mini_portile</a> v0.6.1
|
||||
#### Simplistic port-like solution for developers
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Simplistic port-like solution for developers. It provides a standard and simplified way to compile against dependency libraries without messing up your system.
|
||||
|
||||
<a name="minitar"></a>
|
||||
### <a href="http://www.github.com/atoulme/minitar">minitar</a> v0.5.4
|
||||
#### Provides POSIX tarchive management from Ruby programs.
|
||||
|
||||
<a href="http://www.ruby-lang.org/en/LICENSE.txt">ruby</a> whitelisted
|
||||
|
||||
Archive::Tar::Minitar is a pure-Ruby library and command-line utility that provides the ability to deal with POSIX tar(1) archive files. The implementation is based heavily on Mauricio Ferna'ndez's implementation in rpa-base, but has been reorganised to promote reuse in other projects. Antoine Toulme forked the original project on rubyforge to place it on github, under http://www.github.com/atoulme/minitar
|
||||
|
||||
<a name="mixlib-authentication"></a>
|
||||
### <a href="http://www.opscode.com">mixlib-authentication</a> v1.3.0
|
||||
#### Mixes in simple per-request authentication
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Mixes in simple per-request authentication
|
||||
|
||||
<a name="mixlib-cli"></a>
|
||||
### <a href="http://www.opscode.com">mixlib-cli</a> v1.5.0
|
||||
#### A simple mixin for CLI interfaces, including option parsing
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A simple mixin for CLI interfaces, including option parsing
|
||||
|
||||
<a name="mixlib-config"></a>
|
||||
### <a href="http://www.opscode.com">mixlib-config</a> v2.1.0
|
||||
#### A class based configuration library
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A class based configuration library
|
||||
|
||||
<a name="mixlib-log"></a>
|
||||
### <a href="http://www.opscode.com">mixlib-log</a> v1.6.0
|
||||
#### A gem that provides a simple mixin for log functionality
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
|
||||
<a name="mixlib-shellout"></a>
|
||||
### <a href="http://wiki.opscode.com/">mixlib-shellout</a> v1.6.0
|
||||
#### Run external commands on Unix or Windows
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Run external commands on Unix or Windows
|
||||
|
||||
<a name="multi_json"></a>
|
||||
### <a href="http://github.com/intridea/multi_json">multi_json</a> v1.10.1
|
||||
#### A common interface to multiple JSON libraries.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A common interface to multiple JSON libraries, including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem, NSJSONSerialization, gson.rb, JrJackson, and OkJson.
|
||||
|
||||
<a name="multi_xml"></a>
|
||||
### <a href="https://github.com/sferik/multi_xml">multi_xml</a> v0.5.5
|
||||
#### A generic swappable back-end for XML parsing
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Provides swappable XML backends utilizing LibXML, Nokogiri, Ox, or REXML.
|
||||
|
||||
<a name="multipart-post"></a>
|
||||
### <a href="https://github.com/nicksieger/multipart-post">multipart-post</a> v2.0.0
|
||||
#### A multipart form post accessory for Net::HTTP.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Use with Net::HTTP to do multipart form posts. IO values that have #content_type, #original_filename, and #local_path will be posted as a binary file.
|
||||
|
||||
<a name="net-http-persistent"></a>
|
||||
### <a href="http://docs.seattlerb.org/net-http-persistent">net-http-persistent</a> v2.9.4
|
||||
#### Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8.
|
||||
It's thread-safe too!
|
||||
|
||||
Using persistent HTTP connections can dramatically increase the speed of HTTP.
|
||||
Creating a new HTTP connection for every request involves an extra TCP
|
||||
round-trip and causes TCP congestion avoidance negotiation to start over.
|
||||
|
||||
Net::HTTP supports persistent connections with some API methods but does not
|
||||
handle reconnection gracefully. Net::HTTP::Persistent supports reconnection
|
||||
and retry according to RFC 2616.
|
||||
|
||||
<a name="net-scp"></a>
|
||||
### <a href="https://github.com/net-ssh/net-scp">net-scp</a> v1.2.1
|
||||
#### A pure Ruby implementation of the SCP client protocol
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A pure Ruby implementation of the SCP client protocol
|
||||
|
||||
<a name="net-ssh"></a>
|
||||
### <a href="https://github.com/net-ssh/net-ssh">net-ssh</a> v2.9.1
|
||||
#### Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs that invoke and interact with processes on remote servers, via SSH2.
|
||||
|
||||
<a name="net-ssh-gateway"></a>
|
||||
### <a href="https://github.com/net-ssh/net-scp">net-ssh-gateway</a> v1.2.0
|
||||
#### A simple library to assist in establishing tunneled Net::SSH connections
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A simple library to assist in establishing tunneled Net::SSH connections
|
||||
|
||||
<a name="net-ssh-multi"></a>
|
||||
### <a href="https://github.com/net-ssh/net-scp">net-ssh-multi</a> v1.2.0
|
||||
#### Control multiple Net::SSH connections via a single interface.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Control multiple Net::SSH connections via a single interface.
|
||||
|
||||
<a name="nio4r"></a>
|
||||
### <a href="https://github.com/celluloid/nio4r">nio4r</a> v1.0.1
|
||||
#### NIO provides a high performance selector API for monitoring IO objects
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
New IO for Ruby
|
||||
|
||||
<a name="nokogiri"></a>
|
||||
### <a href="http://nokogiri.org">nokogiri</a> v1.6.4.1
|
||||
#### Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's
|
||||
many features is the ability to search documents via XPath or CSS3 selectors.
|
||||
|
||||
XML is like violence - if it doesn’t solve your problems, you are not using
|
||||
enough of it.
|
||||
|
||||
<a name="octokit"></a>
|
||||
### <a href="https://github.com/octokit/octokit.rb">octokit</a> v3.5.2
|
||||
#### Ruby toolkit for working with the GitHub API
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Simple wrapper for the GitHub API
|
||||
|
||||
<a name="ohai"></a>
|
||||
### <a href="http://wiki.opscode.com/display/chef/Ohai">ohai</a> v7.4.0
|
||||
#### Ohai profiles your system and emits JSON
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Ohai profiles your system and emits JSON
|
||||
|
||||
<a name="parser"></a>
|
||||
### <a href="http://github.com/whitequark/parser">parser</a> v2.2.0.pre.8
|
||||
#### A Ruby parser written in pure Ruby.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A Ruby parser written in pure Ruby.
|
||||
|
||||
<a name="plist"></a>
|
||||
### <a href="http://plist.rubyforge.org">plist</a> v3.1.0
|
||||
#### All-purpose Property List manipulation library.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Plist is a library to manipulate Property List files, also known as plists. It can parse plist files into native Ruby data structures as well as generating new plist files from your Ruby objects.
|
||||
|
||||
|
||||
<a name="polyglot"></a>
|
||||
### <a href="http://github.com/cjheath/polyglot">polyglot</a> v0.3.5
|
||||
#### Augment 'require' to load non-Ruby file types
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
|
||||
The Polyglot library allows a Ruby module to register a loader
|
||||
for the file type associated with a filename extension, and it
|
||||
augments 'require' to find and load matching files.
|
||||
|
||||
<a name="powerpack"></a>
|
||||
### <a href="https://github.com/bbatsov/powerpack">powerpack</a> v0.0.9
|
||||
#### A few useful extensions to core Ruby classes.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A few useful extensions to core Ruby classes.
|
||||
|
||||
<a name="pry"></a>
|
||||
### <a href="http://pryrepl.org">pry</a> v0.10.1
|
||||
#### An IRB alternative and runtime developer console
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
An IRB alternative and runtime developer console
|
||||
|
||||
<a name="rack"></a>
|
||||
### <a href="http://rack.github.com/">rack</a> v1.5.2
|
||||
#### a modular Ruby webserver interface
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Rack provides a minimal, modular and adaptable interface for developing
|
||||
web applications in Ruby. By wrapping HTTP requests and responses in
|
||||
the simplest way possible, it unifies and distills the API for web
|
||||
servers, web frameworks, and software in between (the so-called
|
||||
middleware) into a single method call.
|
||||
|
||||
Also see http://rack.github.com/.
|
||||
|
||||
|
||||
<a name="rainbow"></a>
|
||||
### <a href="https://github.com/sickill/rainbow">rainbow</a> v2.0.0
|
||||
#### Colorize printed text on ANSI terminals
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Colorize printed text on ANSI terminals
|
||||
|
||||
<a name="rake"></a>
|
||||
### <a href="https://github.com/jimweirich/rake">rake</a> v10.3.2 (default)
|
||||
#### Rake is a Make-like program implemented in Ruby
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
|
||||
specified in standard Ruby syntax.
|
||||
|
||||
Rake has the following features:
|
||||
|
||||
* Rakefiles (rake's version of Makefiles) are completely defined in
|
||||
standard Ruby syntax. No XML files to edit. No quirky Makefile
|
||||
syntax to worry about (is that a tab or a space?)
|
||||
|
||||
* Users can specify tasks with prerequisites.
|
||||
|
||||
* Rake supports rule patterns to synthesize implicit tasks.
|
||||
|
||||
* Flexible FileLists that act like arrays but know about manipulating
|
||||
file names and paths.
|
||||
|
||||
* A library of prepackaged tasks to make building rakefiles easier. For example,
|
||||
tasks for building tarballs and publishing to FTP or SSH sites. (Formerly
|
||||
tasks for building RDoc and Gems were included in rake but they're now
|
||||
available in RDoc and RubyGems respectively.)
|
||||
|
||||
* Supports parallel execution of tasks.
|
||||
|
||||
<a name="rb-fsevent"></a>
|
||||
### <a href="http://rubygems.org/gems/rb-fsevent">rb-fsevent</a> v0.9.4
|
||||
#### Very simple & usable FSEvents API
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
FSEvents API with Signals catching (without RubyCocoa)
|
||||
|
||||
<a name="rb-inotify"></a>
|
||||
### <a href="http://github.com/nex3/rb-inotify">rb-inotify</a> v0.9.5
|
||||
#### A Ruby wrapper for Linux's inotify, using FFI
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A Ruby wrapper for Linux's inotify, using FFI
|
||||
|
||||
<a name="rest-client"></a>
|
||||
### <a href="http://github.com/archiloque/rest-client">rest-client</a> v1.6.7
|
||||
#### Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete.
|
||||
|
||||
<a name="retryable"></a>
|
||||
### <a href="http://github.com/nfedyashev/retryable">retryable</a> v1.3.6
|
||||
#### Kernel#retryable, allow for retrying of code blocks.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Kernel#retryable, allow for retrying of code blocks.
|
||||
|
||||
<a name="ridley"></a>
|
||||
### <a href="https://github.com/RiotGames/ridley">ridley</a> v4.1.0
|
||||
#### A reliable Chef API client with a clean syntax
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A reliable Chef API client with a clean syntax
|
||||
|
||||
<a name="rspec"></a>
|
||||
### <a href="http://github.com/rspec">rspec</a> v3.1.0
|
||||
#### rspec-3.1.0
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
BDD for Ruby
|
||||
|
||||
<a name="rspec-core"></a>
|
||||
### <a href="http://github.com/rspec/rspec-core">rspec-core</a> v3.1.7
|
||||
#### rspec-core-3.1.7
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
BDD for Ruby. RSpec runner and example groups.
|
||||
|
||||
<a name="rspec-expectations"></a>
|
||||
### <a href="http://github.com/rspec/rspec-expectations">rspec-expectations</a> v3.1.2
|
||||
#### rspec-expectations-3.1.2
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
rspec-expectations provides a simple, readable API to express expected outcomes of a code example.
|
||||
|
||||
<a name="rspec-its"></a>
|
||||
### <a href="https://github.com/rspec/rspec-its">rspec-its</a> v1.1.0
|
||||
#### Provides "its" method formally part of rspec-core
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
RSpec extension gem for attribute matching
|
||||
|
||||
<a name="rspec-mocks"></a>
|
||||
### <a href="http://github.com/rspec/rspec-mocks">rspec-mocks</a> v3.1.3
|
||||
#### rspec-mocks-3.1.3
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
RSpec's 'test double' framework, with support for stubbing and mocking
|
||||
|
||||
<a name="rspec-support"></a>
|
||||
### <a href="https://github.com/rspec/rspec-support">rspec-support</a> v3.1.2
|
||||
#### rspec-support-3.1.2
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Support utilities for RSpec gems
|
||||
|
||||
<a name="rubocop"></a>
|
||||
### <a href="http://github.com/bbatsov/rubocop">rubocop</a> v0.27.1 (default)
|
||||
#### Automatic Ruby code style checking tool.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Automatic Ruby code style checking tool.
|
||||
Aims to enforce the community-driven Ruby Style Guide.
|
||||
|
||||
|
||||
<a name="ruby-progressbar"></a>
|
||||
### <a href="https://github.com/jfelchner/ruby-progressbar">ruby-progressbar</a> v1.7.0
|
||||
#### Ruby/ProgressBar is a flexible text progress bar library for Ruby.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Ruby/ProgressBar is an extremely flexible text progress bar library for Ruby.
|
||||
The output can be customized with a flexible formatting system including:
|
||||
percentage, bars of various formats, elapsed time and estimated time remaining.
|
||||
|
||||
|
||||
<a name="rufus-lru"></a>
|
||||
### <a href="http://github.com/jmettraux/rufus-lru">rufus-lru</a> v1.0.5
|
||||
#### A Hash with a max size, controlled by a LRU mechanism
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
LruHash class, a Hash with a max size, controlled by a LRU mechanism
|
||||
|
||||
<a name="safe_yaml"></a>
|
||||
### <a href="https://github.com/dtao/safe_yaml">safe_yaml</a> v1.0.4
|
||||
#### SameYAML provides an alternative implementation of YAML.load suitable for accepting user input in Ruby applications.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Parse YAML safely
|
||||
|
||||
<a name="sawyer"></a>
|
||||
### <a href="https://github.com/lostisland/sawyer">sawyer</a> v0.5.5
|
||||
#### Secret User Agent of HTTP
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
|
||||
<a name="semverse"></a>
|
||||
### <a href="https://github.com/berkshelf/semverse">semverse</a> v1.2.1
|
||||
#### An elegant library for representing and comparing SemVer versions and constraints
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
An elegant library for representing and comparing SemVer versions and constraints
|
||||
|
||||
<a name="sequel"></a>
|
||||
### <a href="http://sequel.jeremyevans.net">sequel</a> v4.16.0
|
||||
#### The Database Toolkit for Ruby
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
The Database Toolkit for Ruby
|
||||
|
||||
<a name="serverspec"></a>
|
||||
### <a href="http://serverspec.org/">serverspec</a> v2.3.1 (default)
|
||||
#### RSpec tests for your servers configured by Puppet, Chef or anything else
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
RSpec tests for your servers configured by Puppet, Chef or anything else
|
||||
|
||||
<a name="slop"></a>
|
||||
### <a href="http://github.com/leejarvis/slop">slop</a> v3.6.0
|
||||
#### Simple Lightweight Option Parsing
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
A simple DSL for gathering options and parsing the command line
|
||||
|
||||
<a name="solve"></a>
|
||||
### <a href="https://github.com/berkshelf/solve">solve</a> v1.2.1
|
||||
#### A Ruby version constraint solver implementing Semantic Versioning 2.0.0-rc.1
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A Ruby version constraint solver
|
||||
|
||||
<a name="specinfra"></a>
|
||||
### specinfra v2.5.0
|
||||
#### Common layer for serverspec and itamae
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Common layer for serverspec and itamae
|
||||
|
||||
<a name="sqlite3"></a>
|
||||
### <a href="https://github.com/sparklemotion/sqlite3-ruby">sqlite3</a> v1.3.10
|
||||
#### This module allows Ruby programs to interface with the SQLite3 database engine (http://www.sqlite.org)
|
||||
|
||||
<a href="http://opensource.org/licenses/BSD-3-Clause">New BSD</a> whitelisted
|
||||
|
||||
This module allows Ruby programs to interface with the SQLite3
|
||||
database engine (http://www.sqlite.org). You must have the
|
||||
SQLite engine installed in order to build this module.
|
||||
|
||||
Note that this module is only compatible with SQLite 3.6.16 or newer.
|
||||
|
||||
<a name="systemu"></a>
|
||||
### <a href="https://github.com/ahoward/systemu">systemu</a> v2.6.4
|
||||
#### systemu
|
||||
|
||||
<a href="http://www.ruby-lang.org/en/LICENSE.txt">ruby</a> whitelisted
|
||||
|
||||
universal capture of stdout and stderr and handling of child process pid for windows, *nix, etc.
|
||||
|
||||
<a name="test-kitchen"></a>
|
||||
### <a href="http://kitchen.ci">test-kitchen</a> v1.2.1 (integration)
|
||||
#### Test Kitchen is an integration tool for developing and testing infrastructure code and software on isolated target platforms.
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
Test Kitchen is an integration tool for developing and testing infrastructure code and software on isolated target platforms.
|
||||
|
||||
<a name="thor"></a>
|
||||
### <a href="http://whatisthor.com/">thor</a> v0.19.1
|
||||
#### Thor is a toolkit for building powerful command-line interfaces.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Thor is a toolkit for building powerful command-line interfaces.
|
||||
|
||||
<a name="timers"></a>
|
||||
### <a href="https://github.com/celluloid/timers">timers</a> v4.0.1
|
||||
#### Schedule procs to run after a certain time, or at periodic intervals, using any API that accepts a timeout
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
Pure Ruby one-shot and periodic timers
|
||||
|
||||
<a name="treetop"></a>
|
||||
### <a href="https://github.com/cjheath/treetop">treetop</a> v1.5.3
|
||||
#### A Ruby-based text parsing and interpretation DSL
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
|
||||
<a name="varia_model"></a>
|
||||
### <a href="https://github.com/RiotGames/varia_model">varia_model</a> v0.4.0
|
||||
#### A mixin to provide objects with magic attribute reading and writing
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A mixin to provide objects with magic attribute reading and writing
|
||||
|
||||
<a name="wmi-lite"></a>
|
||||
### <a href="https://github.com/opscode/wmi-lite">wmi-lite</a> v1.0.0
|
||||
#### A lightweight utility library for accessing basic WMI (Windows Management Instrumentation) functionality on Windows
|
||||
|
||||
<a href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2.0</a> whitelisted
|
||||
|
||||
A lightweight utility over win32ole for accessing basic WMI (Windows Management Instrumentation) functionality in the Microsoft Windows operating system. It has no runtime dependencies other than Ruby, so it can be used without concerns around dependency issues.
|
||||
|
||||
<a name="xml-simple"></a>
|
||||
### <a href="https://github.com/maik/xml-simple">xml-simple</a> v1.1.4
|
||||
#### A simple API for XML processing.
|
||||
|
||||
<a href="http://www.ruby-lang.org/en/LICENSE.txt">ruby</a> whitelisted
|
||||
|
||||
|
||||
<a name="yajl-ruby"></a>
|
||||
### <a href="http://github.com/brianmario/yajl-ruby">yajl-ruby</a> v1.2.1
|
||||
#### Ruby C bindings to the excellent Yajl JSON stream-based parser library.
|
||||
|
||||
<a href="http://opensource.org/licenses/mit-license">MIT</a> whitelisted
|
||||
|
||||
234
cookbooks/redis/doc/license_finder/dependencies_detailed.csv
Normal file
234
cookbooks/redis/doc/license_finder/dependencies_detailed.csv
Normal file
@@ -0,0 +1,234 @@
|
||||
addressable,2.3.6,Apache 2.0,URI Implementation,"Addressable is a replacement for the URI implementation that is part of
|
||||
Ruby's standard library. It more closely conforms to the relevant RFCs and
|
||||
adds support for IRIs and URI templates."
|
||||
ast,2.0.0,MIT,A library for working with Abstract Syntax Trees.,A library for working with Abstract Syntax Trees.
|
||||
astrolabe,1.3.0,MIT,An object-oriented AST extension for Parser,An object-oriented AST extension for Parser
|
||||
berkshelf,3.2.1,Apache 2.0,"Manages a Cookbook's, or an Application's, Cookbook dependencies","Manages a Cookbook's, or an Application's, Cookbook dependencies"
|
||||
berkshelf-api-client,1.2.0,Apache 2.0,API Client for communicating with a Berkshelf API server,API Client for communicating with a Berkshelf API server
|
||||
buff-config,1.0.1,Apache 2.0,A simple configuration class,A simple configuration class
|
||||
buff-extensions,1.0.0,Apache 2.0,Extensions to Core Ruby classes,Extensions to Core Ruby classes
|
||||
buff-ignore,1.1.1,Apache 2.0,A Ruby library for parsing lists of files and applying pattern matching exclusion (such as .gitignore),Parse ignore files with Ruby
|
||||
buff-ruby_engine,0.1.0,Apache 2.0,Buff up your code with a mixin for querying the platform running Ruby,A mixin for querying the platform running Ruby
|
||||
buff-shell_out,0.2.0,Apache 2.0,Buff up your code with a mixin for issuing shell commands and collecting the output,A mixin for issuing shell commands and collecting the output
|
||||
bundler,1.7.6,MIT,"",""
|
||||
busser,0.6.0,Apache 2.0,Kitchen Busser - Runs tests for projects in test-kitchen,Kitchen Busser - Runs tests for projects in test-kitchen
|
||||
busser-serverspec,0.5.3,Apache 2.0,A Busser runner plugin for Serverspec,A Busser runner plugin for Serverspec
|
||||
celluloid,0.16.0,MIT,Actor-based concurrent object framework for Ruby,Celluloid enables people to build concurrent programs out of concurrent objects just as easily as they build sequential programs out of sequential objects
|
||||
celluloid-io,0.16.1,MIT,Celluloid::IO allows you to monitor multiple IO objects within a Celluloid actor,Evented IO for Celluloid actors
|
||||
chef,11.16.4,Apache 2.0,"A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.","A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure."
|
||||
chef-zero,2.2.1,Apache 2.0,"Self-contained, easy-setup, fast-start in-memory Chef server for testing and solo setup purposes","Self-contained, easy-setup, fast-start in-memory Chef server for testing and solo setup purposes"
|
||||
chefspec,4.1.1,MIT,Write RSpec examples and generate coverage reports for Chef recipes!,ChefSpec is a unit testing and resource coverage (code coverage) framework for testing Chef cookbooks ChefSpec makes it easy to write examples and get fast feedback on cookbook changes without the need for virtual machines or cloud servers.
|
||||
cleanroom,1.0.0,Apache 2.0,(More) safely evaluate Ruby DSLs with cleanroom,"Ruby is an excellent programming language for creating and managing custom DSLs, but how can you securely evaluate a DSL while explicitly controlling the methods exposed to the user? Our good friends instance_eval and instance_exec are great, but they expose all methods - public, protected, and private - to the user. Even worse, they expose the ability to accidentally or intentionally alter the behavior of the system! The cleanroom pattern is a safer, more convenient, Ruby-like approach for limiting the information exposed by a DSL while giving users the ability to write awesome code!"
|
||||
coderay,1.1.0,MIT,Fast syntax highlighting for selected languages.,"Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth integration and LOC counter."
|
||||
dep-selector-libgecode,1.0.2,"MIT,Apache 2.0",Installs a vendored copy of Gecode suitable for use with dep-selector,Installs a vendored copy of Gecode suitable for use with dep-selector
|
||||
dep_selector,1.0.3,Apache v2,"Given packages, versions, and a dependency graph, find a valid assignment of package versions","Given packages, versions, and a dependency graph, find a valid assignment of package versions"
|
||||
diff-lcs,1.2.5,"MIT,Perl Artistic v2,GNU GPL v2",Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm,"Diff::LCS computes the difference between two Enumerable sequences using the
|
||||
McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities
|
||||
to create a simple HTML diff output format and a standard diff-like tool.
|
||||
|
||||
This is release 1.2.4, fixing a bug introduced after diff-lcs 1.1.3 that did
|
||||
not properly prune common sequences at the beginning of a comparison set.
|
||||
Thanks to Paul Kunysch for fixing this issue.
|
||||
|
||||
Coincident with the release of diff-lcs 1.2.3, we reported an issue with
|
||||
Rubinius in 1.9 mode
|
||||
({rubinius/rubinius#2268}[https://github.com/rubinius/rubinius/issues/2268]).
|
||||
We are happy to report that this issue has been resolved."
|
||||
erubis,2.7.0,MIT,a fast and extensible eRuby implementation which supports multi-language,"Erubis is an implementation of eRuby and has the following features:
|
||||
|
||||
* Very fast, almost three times faster than ERB and about 10% faster than eruby.
|
||||
* Multi-language support (Ruby/PHP/C/Java/Scheme/Perl/Javascript)
|
||||
* Auto escaping support
|
||||
* Auto trimming spaces around '<% %>'
|
||||
* Embedded pattern changeable (default '<% %>')
|
||||
* Enable to handle Processing Instructions (PI) as embedded pattern (ex. '<?rb ... ?>')
|
||||
* Context object available and easy to combine eRuby template with YAML datafile
|
||||
* Print statement available
|
||||
* Easy to extend and customize in subclass
|
||||
* Ruby on Rails support"
|
||||
faraday,0.9.0,MIT,HTTP/REST API client library.,""
|
||||
fauxhai,2.2.0,MIT,Fauxhai provides an easy way to mock out your ohai data for testing with chefspec!,Easily mock out ohai data
|
||||
ffi,1.9.6,BSD,Ruby FFI,Ruby FFI library
|
||||
ffi-yajl,1.3.0,Apache 2.0,Ruby FFI wrapper around YAJL 2.x,Ruby FFI wrapper around YAJL 2.x
|
||||
foodcritic,4.0.0,MIT,foodcritic-4.0.0,Lint tool for Opscode Chef cookbooks.
|
||||
formatador,0.2.5,MIT,Ruby STDOUT text formatting,STDOUT text formatting
|
||||
gherkin,2.12.2,MIT,gherkin-2.12.2,A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.
|
||||
guard,2.8.2,MIT,Guard keeps an eye on your file modifications,Guard is a command line tool to easily handle events on file system modifications.
|
||||
guard-rspec,4.3.1,MIT,Guard gem for RSpec,Guard::RSpec automatically run your specs (much like autotest).
|
||||
hashie,2.1.2,MIT,Your friendly neighborhood hash library.,Hashie is a collection of classes and mixins that make hashes more powerful.
|
||||
highline,1.6.21,ruby,HighLine is a high-level command-line IO library.,"A high-level IO library that provides validation, type conversion, and more for
|
||||
command-line interfaces. HighLine also includes a complete menu system that can
|
||||
crank out anything from simple list selection to complete shells with just
|
||||
minutes of work."
|
||||
hitimes,1.2.2,ISC,"Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible.","Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible. It currently supports any of the following systems: * any system with the POSIX call `clock_gettime()` * Mac OS X * Windows * JRuby Using Hitimes can be faster than using a series of `Time.new` calls, and it will have a much higher granularity. It is definitely faster than using `Process.times`."
|
||||
httparty,0.13.3,MIT,"Makes http fun! Also, makes consuming restful web services dead easy.","Makes http fun! Also, makes consuming restful web services dead easy."
|
||||
ipaddress,0.8.0,MIT,IPv4/IPv6 addresses manipulation library,"IPAddress is a Ruby library designed to make manipulation
|
||||
of IPv4 and IPv6 addresses both powerful and simple. It mantains
|
||||
a layer of compatibility with Ruby's own IPAddr, while
|
||||
addressing many of its issues."
|
||||
json,1.8.1,ruby,This json is bundled with Ruby,""
|
||||
kitchen-vagrant,0.15.0,Apache 2.0,Kitchen::Driver::Vagrant - A Vagrant Driver for Test Kitchen.,Kitchen::Driver::Vagrant - A Vagrant Driver for Test Kitchen.
|
||||
libyajl2,1.2.0,Apache 2.0,Installs a vendored copy of libyajl2 for distributions which lack it,Installs a vendored copy of libyajl2 for distributions which lack it
|
||||
license_finder,1.2,MIT,Audit the OSS licenses of your application's dependencies.,"LicenseFinder works with your package managers to find
|
||||
dependencies, detect the licenses of the packages in them, compare
|
||||
those licenses against a user-defined whitelist, and give you an
|
||||
actionable exception report."
|
||||
listen,2.8.0,MIT,Listen to file modifications,The Listen gem listens to file modifications and notifies you about the changes. Works everywhere!
|
||||
lumberjack,1.0.9,MIT,"A simple, powerful, and very fast logging utility that can be a drop in replacement for Logger or ActiveSupport::BufferedLogger.","A simple, powerful, and very fast logging utility that can be a drop in replacement for Logger or ActiveSupport::BufferedLogger. Provides support for automatically rolling log files even with multiple processes writing the same log file."
|
||||
method_source,0.8.2,MIT,retrieve the sourcecode for a method,retrieve the sourcecode for a method
|
||||
mime-types,1.25.1,"MIT,Artistic 2.0,GPL-2",This library allows for the identification of a file's likely MIME content type,"This library allows for the identification of a file's likely MIME content
|
||||
type. This is release 1.25.1, fixing an issue with priority comparison for
|
||||
mime-types 1.x. The current release is 2.0, which only supports Ruby 1.9 or
|
||||
later.
|
||||
|
||||
Release 1.25.1 contains all features of 1.25, including the experimental
|
||||
caching and lazy loading functionality. The caching and lazy loading features
|
||||
were initially implemented by Greg Brockman (gdb). As these features are
|
||||
experimental, they are disabled by default and must be enabled through the use
|
||||
of environment variables. The cache is invalidated on a per-version basis; the
|
||||
cache for version 1.25 will not be reused for any later version.
|
||||
|
||||
To use lazy loading, set the environment variable +RUBY_MIME_TYPES_LAZY_LOAD+
|
||||
to any value other than 'false'. When using lazy loading, the initial startup
|
||||
of MIME::Types is around 12–25× faster than normal startup (on my system,
|
||||
normal startup is about 90 ms; lazy startup is about 4 ms). This isn't
|
||||
generally useful, however, as the MIME::Types database has not been loaded.
|
||||
Lazy startup and load is just *slightly* faster—around 1 ms. The real advantage
|
||||
comes from using the cache.
|
||||
|
||||
To enable the cache, set the environment variable +RUBY_MIME_TYPES_CACHE+ to a
|
||||
filename where MIME::Types will have read-write access. The first time a new
|
||||
version of MIME::Types is run using this file, it will be created, taking a
|
||||
little longer than normal. Subsequent loads using the same cache file will be
|
||||
approximately 3½× faster (25 ms) than normal loads. This can be combined with
|
||||
+RUBY_MIME_TYPES_LAZY_LOAD+, but this is *not* recommended in a multithreaded
|
||||
or multiprocess environment where all threads or processes will be using the
|
||||
same cache file.
|
||||
|
||||
As the caching interface is still experimental, the only values cached are the
|
||||
default MIME::Types database, not any custom MIME::Types added by users.
|
||||
|
||||
MIME types are used in MIME-compliant communications, as in e-mail or HTTP
|
||||
traffic, to indicate the type of content which is transmitted. MIME::Types
|
||||
provides the ability for detailed information about MIME entities (provided as
|
||||
a set of MIME::Type objects) to be determined and used programmatically. There
|
||||
are many types defined by RFCs and vendors, so the list is long but not
|
||||
complete; don't hesitate to ask to add additional information. This library
|
||||
follows the IANA collection of MIME types (see below for reference).
|
||||
|
||||
MIME::Types for Ruby was originally based on MIME::Types for Perl by Mark
|
||||
Overmeer, copyright 2001 - 2009.
|
||||
|
||||
MIME::Types is built to conform to the MIME types of RFCs 2045 and 2231. It
|
||||
tracks the {IANA registry}[http://www.iana.org/assignments/media-types/]
|
||||
({ftp}[ftp://ftp.iana.org/assignments/media-types]) with some unofficial types
|
||||
added from the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp]
|
||||
and added by the users of MIME::Types."
|
||||
mini_portile,0.6.1,MIT,Simplistic port-like solution for developers,Simplistic port-like solution for developers. It provides a standard and simplified way to compile against dependency libraries without messing up your system.
|
||||
minitar,0.5.4,ruby,Provides POSIX tarchive management from Ruby programs.,"Archive::Tar::Minitar is a pure-Ruby library and command-line utility that provides the ability to deal with POSIX tar(1) archive files. The implementation is based heavily on Mauricio Ferna'ndez's implementation in rpa-base, but has been reorganised to promote reuse in other projects. Antoine Toulme forked the original project on rubyforge to place it on github, under http://www.github.com/atoulme/minitar"
|
||||
mixlib-authentication,1.3.0,Apache 2.0,Mixes in simple per-request authentication,Mixes in simple per-request authentication
|
||||
mixlib-cli,1.5.0,Apache 2.0,"A simple mixin for CLI interfaces, including option parsing","A simple mixin for CLI interfaces, including option parsing"
|
||||
mixlib-config,2.1.0,Apache 2.0,A class based configuration library,A class based configuration library
|
||||
mixlib-log,1.6.0,Apache 2.0,A gem that provides a simple mixin for log functionality,""
|
||||
mixlib-shellout,1.6.0,Apache 2.0,Run external commands on Unix or Windows,Run external commands on Unix or Windows
|
||||
multi_json,1.10.1,MIT,A common interface to multiple JSON libraries.,"A common interface to multiple JSON libraries, including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem, NSJSONSerialization, gson.rb, JrJackson, and OkJson."
|
||||
multi_xml,0.5.5,MIT,A generic swappable back-end for XML parsing,"Provides swappable XML backends utilizing LibXML, Nokogiri, Ox, or REXML."
|
||||
multipart-post,2.0.0,MIT,A multipart form post accessory for Net::HTTP.,"Use with Net::HTTP to do multipart form posts. IO values that have #content_type, #original_filename, and #local_path will be posted as a binary file."
|
||||
net-http-persistent,2.9.4,MIT,Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8,"Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8.
|
||||
It's thread-safe too!
|
||||
|
||||
Using persistent HTTP connections can dramatically increase the speed of HTTP.
|
||||
Creating a new HTTP connection for every request involves an extra TCP
|
||||
round-trip and causes TCP congestion avoidance negotiation to start over.
|
||||
|
||||
Net::HTTP supports persistent connections with some API methods but does not
|
||||
handle reconnection gracefully. Net::HTTP::Persistent supports reconnection
|
||||
and retry according to RFC 2616."
|
||||
net-scp,1.2.1,MIT,A pure Ruby implementation of the SCP client protocol,A pure Ruby implementation of the SCP client protocol
|
||||
net-ssh,2.9.1,MIT,Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.,"Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs that invoke and interact with processes on remote servers, via SSH2."
|
||||
net-ssh-gateway,1.2.0,MIT,A simple library to assist in establishing tunneled Net::SSH connections,A simple library to assist in establishing tunneled Net::SSH connections
|
||||
net-ssh-multi,1.2.0,MIT,Control multiple Net::SSH connections via a single interface.,Control multiple Net::SSH connections via a single interface.
|
||||
nio4r,1.0.1,MIT,NIO provides a high performance selector API for monitoring IO objects,New IO for Ruby
|
||||
nokogiri,1.6.4.1,MIT,"Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser","Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's
|
||||
many features is the ability to search documents via XPath or CSS3 selectors.
|
||||
|
||||
XML is like violence - if it doesn’t solve your problems, you are not using
|
||||
enough of it."
|
||||
octokit,3.5.2,MIT,Ruby toolkit for working with the GitHub API,Simple wrapper for the GitHub API
|
||||
ohai,7.4.0,Apache 2.0,Ohai profiles your system and emits JSON,Ohai profiles your system and emits JSON
|
||||
parser,2.2.0.pre.8,MIT,A Ruby parser written in pure Ruby.,A Ruby parser written in pure Ruby.
|
||||
plist,3.1.0,MIT,All-purpose Property List manipulation library.,"Plist is a library to manipulate Property List files, also known as plists. It can parse plist files into native Ruby data structures as well as generating new plist files from your Ruby objects."
|
||||
polyglot,0.3.5,MIT,Augment 'require' to load non-Ruby file types,"The Polyglot library allows a Ruby module to register a loader
|
||||
for the file type associated with a filename extension, and it
|
||||
augments 'require' to find and load matching files."
|
||||
powerpack,0.0.9,MIT,A few useful extensions to core Ruby classes.,A few useful extensions to core Ruby classes.
|
||||
pry,0.10.1,MIT,An IRB alternative and runtime developer console,An IRB alternative and runtime developer console
|
||||
rack,1.5.2,MIT,a modular Ruby webserver interface,"Rack provides a minimal, modular and adaptable interface for developing
|
||||
web applications in Ruby. By wrapping HTTP requests and responses in
|
||||
the simplest way possible, it unifies and distills the API for web
|
||||
servers, web frameworks, and software in between (the so-called
|
||||
middleware) into a single method call.
|
||||
|
||||
Also see http://rack.github.com/."
|
||||
rainbow,2.0.0,MIT,Colorize printed text on ANSI terminals,Colorize printed text on ANSI terminals
|
||||
rake,10.3.2,MIT,Rake is a Make-like program implemented in Ruby,"Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
|
||||
specified in standard Ruby syntax.
|
||||
|
||||
Rake has the following features:
|
||||
|
||||
* Rakefiles (rake's version of Makefiles) are completely defined in
|
||||
standard Ruby syntax. No XML files to edit. No quirky Makefile
|
||||
syntax to worry about (is that a tab or a space?)
|
||||
|
||||
* Users can specify tasks with prerequisites.
|
||||
|
||||
* Rake supports rule patterns to synthesize implicit tasks.
|
||||
|
||||
* Flexible FileLists that act like arrays but know about manipulating
|
||||
file names and paths.
|
||||
|
||||
* A library of prepackaged tasks to make building rakefiles easier. For example,
|
||||
tasks for building tarballs and publishing to FTP or SSH sites. (Formerly
|
||||
tasks for building RDoc and Gems were included in rake but they're now
|
||||
available in RDoc and RubyGems respectively.)
|
||||
|
||||
* Supports parallel execution of tasks."
|
||||
rb-fsevent,0.9.4,MIT,Very simple & usable FSEvents API,FSEvents API with Signals catching (without RubyCocoa)
|
||||
rb-inotify,0.9.5,MIT,"A Ruby wrapper for Linux's inotify, using FFI","A Ruby wrapper for Linux's inotify, using FFI"
|
||||
rest-client,1.6.7,MIT,"Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.","A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete."
|
||||
retryable,1.3.6,MIT,"Kernel#retryable, allow for retrying of code blocks.","Kernel#retryable, allow for retrying of code blocks."
|
||||
ridley,4.1.0,Apache 2.0,A reliable Chef API client with a clean syntax,A reliable Chef API client with a clean syntax
|
||||
rspec,3.1.0,MIT,rspec-3.1.0,BDD for Ruby
|
||||
rspec-core,3.1.7,MIT,rspec-core-3.1.7,BDD for Ruby. RSpec runner and example groups.
|
||||
rspec-expectations,3.1.2,MIT,rspec-expectations-3.1.2,"rspec-expectations provides a simple, readable API to express expected outcomes of a code example."
|
||||
rspec-its,1.1.0,MIT,"Provides ""its"" method formally part of rspec-core",RSpec extension gem for attribute matching
|
||||
rspec-mocks,3.1.3,MIT,rspec-mocks-3.1.3,"RSpec's 'test double' framework, with support for stubbing and mocking"
|
||||
rspec-support,3.1.2,MIT,rspec-support-3.1.2,Support utilities for RSpec gems
|
||||
rubocop,0.27.1,MIT,Automatic Ruby code style checking tool.,"Automatic Ruby code style checking tool.
|
||||
Aims to enforce the community-driven Ruby Style Guide."
|
||||
ruby-progressbar,1.7.0,MIT,Ruby/ProgressBar is a flexible text progress bar library for Ruby.,"Ruby/ProgressBar is an extremely flexible text progress bar library for Ruby.
|
||||
The output can be customized with a flexible formatting system including:
|
||||
percentage, bars of various formats, elapsed time and estimated time remaining."
|
||||
rufus-lru,1.0.5,MIT,"A Hash with a max size, controlled by a LRU mechanism","LruHash class, a Hash with a max size, controlled by a LRU mechanism"
|
||||
safe_yaml,1.0.4,MIT,SameYAML provides an alternative implementation of YAML.load suitable for accepting user input in Ruby applications.,Parse YAML safely
|
||||
sawyer,0.5.5,MIT,Secret User Agent of HTTP,""
|
||||
semverse,1.2.1,Apache 2.0,An elegant library for representing and comparing SemVer versions and constraints,An elegant library for representing and comparing SemVer versions and constraints
|
||||
sequel,4.16.0,MIT,The Database Toolkit for Ruby,The Database Toolkit for Ruby
|
||||
serverspec,2.3.1,MIT,"RSpec tests for your servers configured by Puppet, Chef or anything else","RSpec tests for your servers configured by Puppet, Chef or anything else"
|
||||
slop,3.6.0,MIT,Simple Lightweight Option Parsing,A simple DSL for gathering options and parsing the command line
|
||||
solve,1.2.1,Apache 2.0,A Ruby version constraint solver implementing Semantic Versioning 2.0.0-rc.1,A Ruby version constraint solver
|
||||
specinfra,2.5.0,MIT,Common layer for serverspec and itamae,Common layer for serverspec and itamae
|
||||
sqlite3,1.3.10,New BSD,This module allows Ruby programs to interface with the SQLite3 database engine (http://www.sqlite.org),"This module allows Ruby programs to interface with the SQLite3
|
||||
database engine (http://www.sqlite.org). You must have the
|
||||
SQLite engine installed in order to build this module.
|
||||
|
||||
Note that this module is only compatible with SQLite 3.6.16 or newer."
|
||||
systemu,2.6.4,ruby,systemu,"universal capture of stdout and stderr and handling of child process pid for windows, *nix, etc."
|
||||
test-kitchen,1.2.1,Apache 2.0,Test Kitchen is an integration tool for developing and testing infrastructure code and software on isolated target platforms.,Test Kitchen is an integration tool for developing and testing infrastructure code and software on isolated target platforms.
|
||||
thor,0.19.1,MIT,Thor is a toolkit for building powerful command-line interfaces.,Thor is a toolkit for building powerful command-line interfaces.
|
||||
timers,4.0.1,MIT,"Schedule procs to run after a certain time, or at periodic intervals, using any API that accepts a timeout",Pure Ruby one-shot and periodic timers
|
||||
treetop,1.5.3,MIT,A Ruby-based text parsing and interpretation DSL,""
|
||||
varia_model,0.4.0,Apache 2.0,A mixin to provide objects with magic attribute reading and writing,A mixin to provide objects with magic attribute reading and writing
|
||||
wmi-lite,1.0.0,Apache 2.0,A lightweight utility library for accessing basic WMI (Windows Management Instrumentation) functionality on Windows,"A lightweight utility over win32ole for accessing basic WMI (Windows Management Instrumentation) functionality in the Microsoft Windows operating system. It has no runtime dependencies other than Ruby, so it can be used without concerns around dependency issues."
|
||||
xml-simple,1.1.4,ruby,A simple API for XML processing.,""
|
||||
yajl-ruby,1.2.1,MIT,Ruby C bindings to the excellent Yajl JSON stream-based parser library.,""
|
||||
|
@@ -0,0 +1,7 @@
|
||||
require_relative "test_helper"
|
||||
|
||||
describe_recipe "redis::client" do
|
||||
it "installed the `redis-tools` package" do
|
||||
package("redis-tools").must_be_installed
|
||||
end
|
||||
end
|
||||
19
cookbooks/redis/files/default/tests/minitest/default_test.rb
Normal file
19
cookbooks/redis/files/default/tests/minitest/default_test.rb
Normal file
@@ -0,0 +1,19 @@
|
||||
require_relative "test_helper"
|
||||
|
||||
describe_recipe "redis::default" do
|
||||
let(:apt_path) do
|
||||
"/etc/apt/sources.list.d"
|
||||
end
|
||||
|
||||
it "set up an apt repository" do
|
||||
repo = {
|
||||
"debian" => { name: "dotdeb", content: "dotdeb" },
|
||||
"ubuntu" => { name: "chris-lea-redis-server", content: "chris-lea" }
|
||||
}[node["platform"]]
|
||||
|
||||
apt_file = "#{apt_path}/#{repo[:name]}.list"
|
||||
|
||||
file(apt_file).must_exist
|
||||
file(apt_file).must_include repo[:content]
|
||||
end
|
||||
end
|
||||
48
cookbooks/redis/files/default/tests/minitest/server_test.rb
Normal file
48
cookbooks/redis/files/default/tests/minitest/server_test.rb
Normal file
@@ -0,0 +1,48 @@
|
||||
require_relative "test_helper"
|
||||
|
||||
describe_recipe "redis::server" do
|
||||
it "installed the `redis-server` package" do
|
||||
package("redis-server").must_be_installed
|
||||
end
|
||||
|
||||
it "enabled the `redis-server` service" do
|
||||
service("redis-server").must_be_enabled
|
||||
end
|
||||
|
||||
it "started the `redis-server` service" do
|
||||
service("redis-server").must_be_running
|
||||
end
|
||||
|
||||
describe "data directory" do
|
||||
let(:dir) do
|
||||
directory node["redis"]["dir"]
|
||||
end
|
||||
|
||||
it { dir.must_exist }
|
||||
it { dir.must_have :owner, "redis" }
|
||||
it { dir.must_have :group, "redis" }
|
||||
it { dir.must_have :mode, "750" }
|
||||
end
|
||||
|
||||
describe "redis.conf" do
|
||||
let(:conf) do
|
||||
file "/etc/redis/redis.conf"
|
||||
end
|
||||
|
||||
it { conf.must_exist }
|
||||
it { conf.must_have :owner, "root" }
|
||||
it { conf.must_have :group, "root" }
|
||||
it { conf.must_have :mode, "644" }
|
||||
end
|
||||
|
||||
describe "`default` file" do
|
||||
let(:default) do
|
||||
file "/etc/default/redis-server"
|
||||
end
|
||||
|
||||
it { default.must_exist }
|
||||
it { default.must_have :owner, "root" }
|
||||
it { default.must_have :group, "root" }
|
||||
it { default.must_have :mode, "644" }
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,5 @@
|
||||
require "minitest/spec"
|
||||
|
||||
include MiniTest::Chef::Assertions
|
||||
include MiniTest::Chef::Context
|
||||
include MiniTest::Chef::Resources
|
||||
15
cookbooks/redis/metadata.rb
Normal file
15
cookbooks/redis/metadata.rb
Normal file
@@ -0,0 +1,15 @@
|
||||
name "redis"
|
||||
maintainer "Phil Cohen"
|
||||
maintainer_email "github@phlippers.net"
|
||||
license "MIT"
|
||||
description "Installs and configures Redis"
|
||||
version "0.5.6"
|
||||
|
||||
recipe "redis::default", "Sets up ppa apt repository"
|
||||
recipe "redis::server", "Installs redis server"
|
||||
recipe "redis::client", "Installs redis client"
|
||||
|
||||
supports "debian"
|
||||
supports "ubuntu"
|
||||
|
||||
depends "apt"
|
||||
10
cookbooks/redis/recipes/client.rb
Normal file
10
cookbooks/redis/recipes/client.rb
Normal file
@@ -0,0 +1,10 @@
|
||||
#
|
||||
# Cookbook Name:: redis
|
||||
# Recipe:: client
|
||||
#
|
||||
|
||||
include_recipe "redis::default"
|
||||
|
||||
package "redis-tools" do
|
||||
action node["redis"]["auto_upgrade"] ? :upgrade : :install
|
||||
end
|
||||
11
cookbooks/redis/recipes/default.rb
Normal file
11
cookbooks/redis/recipes/default.rb
Normal file
@@ -0,0 +1,11 @@
|
||||
#
|
||||
# Cookbook Name:: redis
|
||||
# Recipe:: default
|
||||
#
|
||||
apt_repository node["redis"]["apt_repository"] do
|
||||
uri node["redis"]["apt_uri"]
|
||||
distribution node["redis"]["apt_distribution"]
|
||||
components node["redis"]["apt_components"]
|
||||
keyserver node["redis"]["apt_keyserver"]
|
||||
key node["redis"]["apt_key"]
|
||||
end
|
||||
38
cookbooks/redis/recipes/server.rb
Normal file
38
cookbooks/redis/recipes/server.rb
Normal file
@@ -0,0 +1,38 @@
|
||||
#
|
||||
# Cookbook Name:: redis
|
||||
# Recipe:: server
|
||||
#
|
||||
|
||||
include_recipe "redis::default"
|
||||
|
||||
package "redis-server" do
|
||||
action node["redis"]["auto_upgrade"] ? :upgrade : :install
|
||||
end
|
||||
|
||||
directory node["redis"]["dir"] do
|
||||
owner "redis"
|
||||
group "redis"
|
||||
mode "0750"
|
||||
recursive true
|
||||
end
|
||||
|
||||
service "redis-server" do
|
||||
supports restart: true
|
||||
action [:enable, :start]
|
||||
end
|
||||
|
||||
template "/etc/redis/redis.conf" do
|
||||
source "redis.conf.erb"
|
||||
owner "root"
|
||||
group "root"
|
||||
mode "0644"
|
||||
notifies :restart, "service[redis-server]"
|
||||
end
|
||||
|
||||
template "/etc/default/redis-server" do
|
||||
source "default_redis-server.erb"
|
||||
owner "root"
|
||||
group "root"
|
||||
mode "0644"
|
||||
notifies :restart, "service[redis-server]"
|
||||
end
|
||||
27
cookbooks/redis/spec/client_spec.rb
Normal file
27
cookbooks/redis/spec/client_spec.rb
Normal file
@@ -0,0 +1,27 @@
|
||||
require "spec_helper"
|
||||
|
||||
describe "redis::client" do
|
||||
let(:chef_run) do
|
||||
ChefSpec::SoloRunner.new.converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to include_recipe("redis::default") }
|
||||
|
||||
describe "package installation" do
|
||||
describe "default action" do
|
||||
it { expect(chef_run).to install_package("redis-tools") }
|
||||
it { expect(chef_run).to_not upgrade_package("redis-tools") }
|
||||
end
|
||||
|
||||
describe "when `auto_upgrade` is `true`" do
|
||||
let(:chef_run) do
|
||||
ChefSpec::SoloRunner.new do |node|
|
||||
node.set["redis"]["auto_upgrade"] = true
|
||||
end.converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to_not install_package("redis-tools") }
|
||||
it { expect(chef_run).to upgrade_package("redis-tools") }
|
||||
end
|
||||
end
|
||||
end
|
||||
19
cookbooks/redis/spec/default_spec.rb
Normal file
19
cookbooks/redis/spec/default_spec.rb
Normal file
@@ -0,0 +1,19 @@
|
||||
require "spec_helper"
|
||||
|
||||
describe "redis::default" do
|
||||
let(:chef_run) do
|
||||
ChefSpec::SoloRunner.new.converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to add_apt_repository("chris-lea-redis-server") }
|
||||
|
||||
# debian family setup
|
||||
context "using debian platform" do
|
||||
let(:chef_run) do
|
||||
env_options = { platform: "debian", version: "6.0.5" }
|
||||
ChefSpec::SoloRunner.new(env_options).converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to add_apt_repository("dotdeb") }
|
||||
end
|
||||
end
|
||||
69
cookbooks/redis/spec/server_spec.rb
Normal file
69
cookbooks/redis/spec/server_spec.rb
Normal file
@@ -0,0 +1,69 @@
|
||||
require "spec_helper"
|
||||
|
||||
describe "redis::server" do
|
||||
let(:chef_run) do
|
||||
ChefSpec::SoloRunner.new.converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to include_recipe("redis::default") }
|
||||
|
||||
describe "package installation" do
|
||||
describe "default action" do
|
||||
it { expect(chef_run).to install_package("redis-server") }
|
||||
it { expect(chef_run).to_not upgrade_package("redis-server") }
|
||||
end
|
||||
|
||||
describe "when `auto_upgrade` is `true`" do
|
||||
let(:chef_run) do
|
||||
ChefSpec::SoloRunner.new do |node|
|
||||
node.set["redis"]["auto_upgrade"] = true
|
||||
end.converge(described_recipe)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to_not install_package("redis-server") }
|
||||
it { expect(chef_run).to upgrade_package("redis-server") }
|
||||
end
|
||||
end
|
||||
|
||||
it "creates the data directory" do
|
||||
expect(chef_run).to create_directory("/var/lib/redis").with(
|
||||
owner: "redis",
|
||||
group: "redis",
|
||||
mode: "0750",
|
||||
recursive: true
|
||||
)
|
||||
end
|
||||
|
||||
it { expect(chef_run).to enable_service("redis-server") }
|
||||
it { expect(chef_run).to start_service("redis-server") }
|
||||
|
||||
it "creates `/etc/redis/redis.conf`" do
|
||||
path = "/etc/redis/redis.conf"
|
||||
|
||||
expect(chef_run).to create_template(path).with(
|
||||
source: "redis.conf.erb",
|
||||
owner: "root",
|
||||
group: "root",
|
||||
mode: "0644"
|
||||
)
|
||||
|
||||
expect(chef_run.template(path)).to(
|
||||
notify("service[redis-server]").to(:restart)
|
||||
)
|
||||
end
|
||||
|
||||
it "creates `/etc/default/redis-server`" do
|
||||
path = "/etc/default/redis-server"
|
||||
|
||||
expect(chef_run).to create_template(path).with(
|
||||
source: "default_redis-server.erb",
|
||||
owner: "root",
|
||||
group: "root",
|
||||
mode: "0644"
|
||||
)
|
||||
|
||||
expect(chef_run.template(path)).to(
|
||||
notify("service[redis-server]").to(:restart)
|
||||
)
|
||||
end
|
||||
end
|
||||
20
cookbooks/redis/spec/spec_helper.rb
Normal file
20
cookbooks/redis/spec/spec_helper.rb
Normal file
@@ -0,0 +1,20 @@
|
||||
begin
|
||||
require "chefspec"
|
||||
require "chefspec/berkshelf"
|
||||
rescue LoadError
|
||||
puts "Unable to run `chefspec`"
|
||||
exit
|
||||
end
|
||||
|
||||
RSpec.configure do |config|
|
||||
config.platform = "ubuntu"
|
||||
config.version = "12.04"
|
||||
config.log_level = :error
|
||||
config.raise_errors_for_deprecations!
|
||||
end
|
||||
|
||||
def add_apt_repository(resource_name)
|
||||
ChefSpec::Matchers::ResourceMatcher.new(:apt_repository, :add, resource_name)
|
||||
end
|
||||
|
||||
at_exit { ChefSpec::Coverage.report! }
|
||||
12
cookbooks/redis/templates/default/default_redis-server.erb
Normal file
12
cookbooks/redis/templates/default/default_redis-server.erb
Normal file
@@ -0,0 +1,12 @@
|
||||
# redis-server configure options
|
||||
|
||||
# ULIMIT: Call ulimit -n with this argument prior to invoking Redis itself.
|
||||
# This may be required for high-concurrency environments. Redis itself cannot
|
||||
# alter its limits as it is not being run as root. (default: do not call
|
||||
# ulimit)
|
||||
#
|
||||
<% if node["redis"]["ulimit"] && !node["redis"]["ulimit"].empty? %>
|
||||
ULIMIT=<%= node["redis"]["ulimit"] %>
|
||||
<% else %>
|
||||
# ULIMIT=65536
|
||||
<% end %>
|
||||
556
cookbooks/redis/templates/default/redis.conf.erb
Normal file
556
cookbooks/redis/templates/default/redis.conf.erb
Normal file
@@ -0,0 +1,556 @@
|
||||
# Redis configuration file example
|
||||
|
||||
# Note on units: when memory size is needed, it is possible to specifiy
|
||||
# it in the usual form of 1k 5GB 4M and so forth:
|
||||
#
|
||||
# 1k => 1000 bytes
|
||||
# 1kb => 1024 bytes
|
||||
# 1m => 1000000 bytes
|
||||
# 1mb => 1024*1024 bytes
|
||||
# 1g => 1000000000 bytes
|
||||
# 1gb => 1024*1024*1024 bytes
|
||||
#
|
||||
# units are case insensitive so 1GB 1Gb 1gB are all the same.
|
||||
|
||||
# By default Redis does not run as a daemon. Use 'yes' if you need it.
|
||||
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
|
||||
daemonize <%= node["redis"]["daemonize"] %>
|
||||
|
||||
# When running daemonized, Redis writes a pid file in /var/run/redis.pid by
|
||||
# default. You can specify a custom pid file location here.
|
||||
pidfile <%= node["redis"]["pidfile"] %>
|
||||
|
||||
# Accept connections on the specified port, default is 6379.
|
||||
# If port 0 is specified Redis will not listen on a TCP socket.
|
||||
port <%= node["redis"]["port"] %>
|
||||
|
||||
# If you want you can bind a single interface, if the bind option is not
|
||||
# specified all the interfaces will listen for incoming connections.
|
||||
#
|
||||
<% unless node["redis"]["bind"].empty? %>
|
||||
bind <%= node["redis"]["bind"] %>
|
||||
<% end %>
|
||||
|
||||
# Specify the path for the unix socket that will be used to listen for
|
||||
# incoming connections. There is no default, so Redis will not listen
|
||||
# on a unix socket when not specified.
|
||||
#
|
||||
<% unless node["redis"]["unixsocket"].empty? %>
|
||||
unixsocket <%= node["redis"]["unixsocket"] %>
|
||||
unixsocketperm <%= node["redis"]["unixsocketperm"] %>
|
||||
<% end %>
|
||||
|
||||
# Close the connection after a client is idle for N seconds (0 to disable)
|
||||
timeout <%= node["redis"]["timeout"] %>
|
||||
|
||||
# Set server verbosity to 'debug'
|
||||
# it can be one of:
|
||||
# debug (a lot of information, useful for development/testing)
|
||||
# verbose (many rarely useful info, but not a mess like the debug level)
|
||||
# notice (moderately verbose, what you want in production probably)
|
||||
# warning (only very important / critical messages are logged)
|
||||
loglevel <%= node["redis"]["loglevel"] %>
|
||||
|
||||
# Specify the log file name. Also 'stdout' can be used to force
|
||||
# Redis to log on the standard output. Note that if you use standard
|
||||
# output for logging but daemonize, logs will be sent to /dev/null
|
||||
logfile <%= node["redis"]["logfile"] %>
|
||||
|
||||
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
|
||||
# and optionally update the other syslog parameters to suit your needs.
|
||||
syslog-enabled <%= node["redis"]["syslog_enabled"] %>
|
||||
|
||||
<% if node["redis"]["syslog_enabled"] == "yes" %>
|
||||
# Specify the syslog identity.
|
||||
syslog-ident <%= node["redis"]["syslog_ident"] %>
|
||||
|
||||
# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
|
||||
syslog-facility <%= node["redis"]["syslog_facility"] %>
|
||||
<% end %>
|
||||
|
||||
# Set the number of databases. The default database is DB 0, you can select
|
||||
# a different one on a per-connection basis using SELECT <dbid> where
|
||||
# dbid is a number between 0 and 'databases'-1
|
||||
databases <%= node["redis"]["databases"] %>
|
||||
|
||||
################################ SNAPSHOTTING #################################
|
||||
#
|
||||
# Save the DB on disk:
|
||||
#
|
||||
# save <seconds> <changes>
|
||||
#
|
||||
# Will save the DB if both the given number of seconds and the given
|
||||
# number of write operations against the DB occurred.
|
||||
#
|
||||
# In the example below the behaviour will be to save:
|
||||
# after 900 sec (15 min) if at least 1 key changed
|
||||
# after 300 sec (5 min) if at least 10 keys changed
|
||||
# after 60 sec if at least 10000 keys changed
|
||||
#
|
||||
# Note: you can disable saving at all commenting all the "save" lines.
|
||||
#
|
||||
# It is also possible to remove all the previously configured save
|
||||
# points by adding a save directive with a single empty string argument
|
||||
# like in the following example:
|
||||
#
|
||||
# save ""
|
||||
|
||||
<% node["redis"]["snapshots"].each do |interval, keys| %>
|
||||
save <%= "#{interval} #{keys}" %>
|
||||
<% end %>
|
||||
|
||||
# By default Redis will stop accepting writes if RDB snapshots are enabled
|
||||
# (at least one save point) and the latest background save failed.
|
||||
# This will make the user aware (in an hard way) that data is not persisting
|
||||
# on disk properly, otherwise chances are that no one will notice and some
|
||||
# distater will happen.
|
||||
#
|
||||
# If the background saving process will start working again Redis will
|
||||
# automatically allow writes again.
|
||||
#
|
||||
# However if you have setup your proper monitoring of the Redis server
|
||||
# and persistence, you may want to disable this feature so that Redis will
|
||||
# continue to work as usually even if there are problems with disk,
|
||||
# permissions, and so forth.
|
||||
stop-writes-on-bgsave-error <%= node["redis"]["stop_writes_on_bgsave_error"] %>
|
||||
|
||||
# Compress string objects using LZF when dump .rdb databases?
|
||||
# For default that's set to 'yes' as it's almost always a win.
|
||||
# If you want to save some CPU in the saving child set it to 'no' but
|
||||
# the dataset will likely be bigger if you have compressible values or keys.
|
||||
rdbcompression <%= node["redis"]["rdbcompression"] %>
|
||||
|
||||
# Since verison 5 of RDB a CRC64 checksum is placed at the end of the file.
|
||||
# This makes the format more resistant to corruption but there is a performance
|
||||
# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
|
||||
# for maximum performances.
|
||||
#
|
||||
# RDB files created with checksum disabled have a checksum of zero that will
|
||||
# tell the loading code to skip the check.
|
||||
rdbchecksum <%= node["redis"]["rdbchecksum"] %>
|
||||
|
||||
# The filename where to dump the DB
|
||||
dbfilename <%= node["redis"]["dbfilename"] %>
|
||||
|
||||
# The working directory.
|
||||
#
|
||||
# The DB will be written inside this directory, with the filename specified
|
||||
# above using the 'dbfilename' configuration directive.
|
||||
#
|
||||
# Also the Append Only File will be created inside this directory.
|
||||
#
|
||||
# Note that you must specify a directory here, not a file name.
|
||||
dir <%= node["redis"]["dir"] %>
|
||||
|
||||
################################# REPLICATION #################################
|
||||
|
||||
# Master-Slave replication. Use slaveof to make a Redis instance a copy of
|
||||
# another Redis server. Note that the configuration is local to the slave
|
||||
# so for example it is possible to configure the slave to save the DB with a
|
||||
# different interval, or to listen to another port, and so on.
|
||||
#
|
||||
# slaveof <masterip> <masterport>
|
||||
<% if node["redis"]["slaveof"] && !node["redis"]["slaveof"].empty? %>
|
||||
slaveof <%= node["redis"]["slaveof"] %>
|
||||
<% end %>
|
||||
|
||||
# If the master is password protected (using the "requirepass" configuration
|
||||
# directive below) it is possible to tell the slave to authenticate before
|
||||
# starting the replication synchronization process, otherwise the master will
|
||||
# refuse the slave request.
|
||||
#
|
||||
# masterauth <master-password>
|
||||
<% if node["redis"]["masterauth"] && !node["redis"]["masterauth"].empty? %>
|
||||
masterauth <%= node["redis"]["masterauth"] %>
|
||||
<% end %>
|
||||
|
||||
# When a slave lost the connection with the master, or when the replication
|
||||
# is still in progress, the slave can act in two different ways:
|
||||
#
|
||||
# 1) if slave-serve-stale-data is set to 'yes' (the default) the slave will
|
||||
# still reply to client requests, possibly with out of data data, or the
|
||||
# data set may just be empty if this is the first synchronization.
|
||||
#
|
||||
# 2) if slave-serve-stale data is set to 'no' the slave will reply with
|
||||
# an error "SYNC with master in progress" to all the kind of commands
|
||||
# but to INFO and SLAVEOF.
|
||||
#
|
||||
slave-serve-stale-data <%= node["redis"]["slave_serve_stale_data"] %>
|
||||
|
||||
# You can configure a slave instance to accept writes or not. Writing against
|
||||
# a slave instance may be useful to store some ephemeral data (because data
|
||||
# written on a slave will be easily deleted after resync with the master) but
|
||||
# may also cause problems if clients are writing to it because of a
|
||||
# misconfiguration.
|
||||
#
|
||||
# Since Redis 2.6 by default slaves are read-only.
|
||||
#
|
||||
# Note: read only slaves are not designed to be exposed to untrusted clients
|
||||
# on the internet. It's just a protection layer against misuse of the instance.
|
||||
# Still a read only slave exports by default all the administrative commands
|
||||
# such as CONFIG, DEBUG, and so forth. To a limited extend you can improve
|
||||
# security of read only slaves using 'rename-command' to shadow all the
|
||||
# administrative / dangerous commands.
|
||||
slave-read-only <%= node["redis"]["slave_read_only"] %>
|
||||
|
||||
# Slaves send PINGs to server in a predefined interval. It's possible to change
|
||||
# this interval with the repl_ping_slave_period option. The default value is 10
|
||||
# seconds.
|
||||
#
|
||||
repl-ping-slave-period <%= node["redis"]["repl_ping_slave_period"] %>
|
||||
|
||||
# The following option sets a timeout for both Bulk transfer I/O timeout and
|
||||
# master data or ping response timeout. The default value is 60 seconds.
|
||||
#
|
||||
# It is important to make sure that this value is greater than the value
|
||||
# specified for repl-ping-slave-period otherwise a timeout will be detected
|
||||
# every time there is low traffic between the master and the slave.
|
||||
#
|
||||
repl-timeout <%= node["redis"]["repl_timeout"] %>
|
||||
|
||||
# The slave priority is an integer number published by Redis in the INFO output.
|
||||
# It is used by Redis Sentinel in order to select a slave to promote into a
|
||||
# master if the master is no longer working correctly.
|
||||
#
|
||||
# A slave with a low priority number is considered better for promotion, so
|
||||
# for instance if there are three slaves with priority 10, 100, 25 Sentinel will
|
||||
# pick the one wtih priority 10, that is the lowest.
|
||||
#
|
||||
# However a special priority of 0 marks the slave as not able to perform the
|
||||
# role of master, so a slave with priority of 0 will never be selected by
|
||||
# Redis Sentinel for promotion.
|
||||
#
|
||||
# By default the priority is 100.
|
||||
slave-priority <%= node["redis"]["slave_priority"] %>
|
||||
|
||||
################################## SECURITY ###################################
|
||||
|
||||
# Require clients to issue AUTH <PASSWORD> before processing any other
|
||||
# commands. This might be useful in environments in which you do not trust
|
||||
# others with access to the host running redis-server.
|
||||
#
|
||||
# This should stay commented out for backward compatibility and because most
|
||||
# people do not need auth (e.g. they run their own servers).
|
||||
#
|
||||
# Warning: since Redis is pretty fast an outside user can try up to
|
||||
# 150k passwords per second against a good box. This means that you should
|
||||
# use a very strong password otherwise it will be very easy to break.
|
||||
#
|
||||
# requirepass foobared
|
||||
<% if node["redis"]["requirepass"] && !node["redis"]["requirepass"].empty? %>
|
||||
requirepass <%= node["redis"]["requirepass"] %>
|
||||
<% end %>
|
||||
|
||||
# Command renaming.
|
||||
#
|
||||
# It is possilbe to change the name of dangerous commands in a shared
|
||||
# environment. For instance the CONFIG command may be renamed into something
|
||||
# of hard to guess so that it will be still available for internal-use
|
||||
# tools but not available for general clients.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
|
||||
#
|
||||
# It is also possilbe to completely kill a command renaming it into
|
||||
# an empty string:
|
||||
#
|
||||
# rename-command CONFIG ""
|
||||
<% node["redis"]["rename_commands"].each do |command| %>
|
||||
rename-command <%= command %>
|
||||
<% end %>
|
||||
|
||||
################################### LIMITS ####################################
|
||||
|
||||
# Set the max number of connected clients at the same time. By default there
|
||||
# is no limit, and it's up to the number of file descriptors the Redis process
|
||||
# is able to open. The special value '0' means no limits.
|
||||
# Once the limit is reached Redis will close all the new connections sending
|
||||
# an error 'max number of clients reached'.
|
||||
#
|
||||
maxclients <%= node["redis"]["maxclients"] %>
|
||||
|
||||
# Don't use more memory than the specified amount of bytes.
|
||||
# When the memory limit is reached Redis will try to remove keys
|
||||
# accordingly to the eviction policy selected (see maxmemmory-policy).
|
||||
#
|
||||
# If Redis can't remove keys according to the policy, or if the policy is
|
||||
# set to 'noeviction', Redis will start to reply with errors to commands
|
||||
# that would use more memory, like SET, LPUSH, and so on, and will continue
|
||||
# to reply to read-only commands like GET.
|
||||
#
|
||||
# This option is usually useful when using Redis as an LRU cache, or to set
|
||||
# an hard memory limit for an instance (using the 'noeviction' policy).
|
||||
#
|
||||
# WARNING: If you have slaves attached to an instance with maxmemory on,
|
||||
# the size of the output buffers needed to feed the slaves are subtracted
|
||||
# from the used memory count, so that network problems / resyncs will
|
||||
# not trigger a loop where keys are evicted, and in turn the output
|
||||
# buffer of slaves is full with DELs of keys evicted triggering the deletion
|
||||
# of more keys, and so forth until the database is completely emptied.
|
||||
#
|
||||
# In short... if you have slaves attached it is suggested that you set a lower
|
||||
# limit for maxmemory so that there is some free RAM on the system for slave
|
||||
# output buffers (but this is not needed if the policy is 'noeviction').
|
||||
#
|
||||
maxmemory <%= node["redis"]["maxmemory"] %>
|
||||
|
||||
# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
|
||||
# is reached? You can select among five behavior:
|
||||
#
|
||||
# volatile-lru -> remove the key with an expire set using an LRU algorithm
|
||||
# allkeys-lru -> remove any key accordingly to the LRU algorithm
|
||||
# volatile-random -> remove a random key with an expire set
|
||||
# allkeys->random -> remove a random key, any key
|
||||
# volatile-ttl -> remove the key with the nearest expire time (minor TTL)
|
||||
# noeviction -> don't expire at all, just return an error on write operations
|
||||
#
|
||||
# Note: with all the kind of policies, Redis will return an error on write
|
||||
# operations, when there are not suitable keys for eviction.
|
||||
#
|
||||
# At the date of writing this commands are: set setnx setex append
|
||||
# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
|
||||
# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
|
||||
# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
|
||||
# getset mset msetnx exec sort
|
||||
#
|
||||
# The default is:
|
||||
#
|
||||
# maxmemory-policy volatile-lru
|
||||
maxmemory-policy <%= node["redis"]["maxmemory_policy"] %>
|
||||
|
||||
# LRU and minimal TTL algorithms are not precise algorithms but approximated
|
||||
# algorithms (in order to save memory), so you can select as well the sample
|
||||
# size to check. For instance for default Redis will check three keys and
|
||||
# pick the one that was used less recently, you can change the sample size
|
||||
# using the following configuration directive.
|
||||
#
|
||||
# maxmemory-samples 3
|
||||
maxmemory-samples <%= node["redis"]["maxmemory_samples"] %>
|
||||
|
||||
############################## APPEND ONLY MODE ###############################
|
||||
|
||||
# By default Redis asynchronously dumps the dataset on disk. If you can live
|
||||
# with the idea that the latest records will be lost if something like a crash
|
||||
# happens this is the preferred way to run Redis. If instead you care a lot
|
||||
# about your data and don't want to that a single record can get lost you should
|
||||
# enable the append only mode: when this mode is enabled Redis will append
|
||||
# every write operation received in the file appendonly.aof. This file will
|
||||
# be read on startup in order to rebuild the full dataset in memory.
|
||||
#
|
||||
# Note that you can have both the async dumps and the append only file if you
|
||||
# like (you have to comment the "save" statements above to disable the dumps).
|
||||
# Still if append only mode is enabled Redis will load the data from the
|
||||
# log file at startup ignoring the dump.rdb file.
|
||||
#
|
||||
# IMPORTANT: Check the BGREWRITEAOF to check how to rewrite the append
|
||||
# log file in background when it gets too big.
|
||||
|
||||
appendonly <%= node["redis"]["appendonly"] %>
|
||||
|
||||
# The name of the append only file (default: "appendonly.aof")
|
||||
appendfilename <%= node["redis"]["appendfilename"] %>
|
||||
|
||||
# The fsync() call tells the Operating System to actually write data on disk
|
||||
# instead to wait for more data in the output buffer. Some OS will really flush
|
||||
# data on disk, some other OS will just try to do it ASAP.
|
||||
#
|
||||
# Redis supports three different modes:
|
||||
#
|
||||
# no: don't fsync, just let the OS flush the data when it wants. Faster.
|
||||
# always: fsync after every write to the append only log . Slow, Safest.
|
||||
# everysec: fsync only if one second passed since the last fsync. Compromise.
|
||||
#
|
||||
# The default is "everysec" that's usually the right compromise between
|
||||
# speed and data safety. It's up to you to understand if you can relax this to
|
||||
# "no" that will will let the operating system flush the output buffer when
|
||||
# it wants, for better performances (but if you can live with the idea of
|
||||
# some data loss consider the default persistence mode that's snapshotting),
|
||||
# or on the contrary, use "always" that's very slow but a bit safer than
|
||||
# everysec.
|
||||
#
|
||||
# If unsure, use "everysec".
|
||||
|
||||
# appendfsync always
|
||||
appendfsync <%= node["redis"]["appendfsync"] %>
|
||||
# appendfsync no
|
||||
|
||||
# When the AOF fsync policy is set to always or everysec, and a background
|
||||
# saving process (a background save or AOF log background rewriting) is
|
||||
# performing a lot of I/O against the disk, in some Linux configurations
|
||||
# Redis may block too long on the fsync() call. Note that there is no fix for
|
||||
# this currently, as even performing fsync in a different thread will block
|
||||
# our synchronous write(2) call.
|
||||
#
|
||||
# In order to mitigate this problem it's possible to use the following option
|
||||
# that will prevent fsync() from being called in the main process while a
|
||||
# BGSAVE or BGREWRITEAOF is in progress.
|
||||
#
|
||||
# This means that while another child is saving the durability of Redis is
|
||||
# the same as "appendfsync none", that in pratical terms means that it is
|
||||
# possible to lost up to 30 seconds of log in the worst scenario (with the
|
||||
# default Linux settings).
|
||||
#
|
||||
# If you have latency problems turn this to "yes". Otherwise leave it as
|
||||
# "no" that is the safest pick from the point of view of durability.
|
||||
no-appendfsync-on-rewrite <%= node["redis"]["no_appendfsync_on_rewrite"] %>
|
||||
|
||||
# Automatic rewrite of the append only file.
|
||||
# Redis is able to automatically rewrite the log file implicitly calling
|
||||
# BGREWRITEAOF when the AOF log size will growth by the specified percentage.
|
||||
#
|
||||
# This is how it works: Redis remembers the size of the AOF file after the
|
||||
# latest rewrite (or if no rewrite happened since the restart, the size of
|
||||
# the AOF at startup is used).
|
||||
#
|
||||
# This base size is compared to the current size. If the current size is
|
||||
# bigger than the specified percentage, the rewrite is triggered. Also
|
||||
# you need to specify a minimal size for the AOF file to be rewritten, this
|
||||
# is useful to avoid rewriting the AOF file even if the percentage increase
|
||||
# is reached but it is still pretty small.
|
||||
#
|
||||
# Specify a precentage of zero in order to disable the automatic AOF
|
||||
# rewrite feature.
|
||||
|
||||
auto-aof-rewrite-percentage <%= node["redis"]["auto_aof_rewrite_percentage"] %>
|
||||
auto-aof-rewrite-min-size <%= node["redis"]["auto_aof_rewrite_min_size"] %>
|
||||
|
||||
################################ LUA SCRIPTING ###############################
|
||||
|
||||
# Max execution time of a Lua script in milliseconds.
|
||||
#
|
||||
# If the maximum execution time is reached Redis will log that a script is
|
||||
# still in execution after the maximum allowed time and will start to
|
||||
# reply to queries with an error.
|
||||
#
|
||||
# When a long running script exceed the maximum execution time only the
|
||||
# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
|
||||
# used to stop a script that did not yet called write commands. The second
|
||||
# is the only way to shut down the server in the case a write commands was
|
||||
# already issue by the script but the user don't want to wait for the natural
|
||||
# termination of the script.
|
||||
#
|
||||
# Set it to 0 or a negative value for unlimited execution without warnings.
|
||||
lua-time-limit <%= node["redis"]["lua_time_limit"] %>
|
||||
|
||||
################################## SLOW LOG ###################################
|
||||
|
||||
# The Redis Slow Log is a system to log queries that exceeded a specified
|
||||
# execution time. The execution time does not include the I/O operations
|
||||
# like talking with the client, sending the reply and so forth,
|
||||
# but just the time needed to actually execute the command (this is the only
|
||||
# stage of command execution where the thread is blocked and can not serve
|
||||
# other requests in the meantime).
|
||||
#
|
||||
# You can configure the slow log with two parameters: one tells Redis
|
||||
# what is the execution time, in microseconds, to exceed in order for the
|
||||
# command to get logged, and the other parameter is the length of the
|
||||
# slow log. When a new command is logged the oldest one is removed from the
|
||||
# queue of logged commands.
|
||||
|
||||
# The following time is expressed in microseconds, so 1000000 is equivalent
|
||||
# to one second. Note that a negative number disables the slow log, while
|
||||
# a value of zero forces the logging of every command.
|
||||
slowlog-log-slower-than <%= node["redis"]["slowlog_log_slower_than"] %>
|
||||
|
||||
# There is no limit to this length. Just be aware that it will consume memory.
|
||||
# You can reclaim memory used by the slow log with SLOWLOG RESET.
|
||||
slowlog-max-len <%= node["redis"]["slowlog_max_len"] %>
|
||||
|
||||
|
||||
############################### ADVANCED CONFIG ###############################
|
||||
|
||||
# Hashes are encoded using a memory efficient data structure when they have a
|
||||
# small number of entries, and the biggest entry does not exceed a given
|
||||
# threshold. These thresholds can be configured using the following directives.
|
||||
hash-max-ziplist-entries <%= node["redis"]["hash_max_ziplist_entries"] %>
|
||||
hash-max-ziplist-value <%= node["redis"]["hash_max_ziplist_value"] %>
|
||||
|
||||
# Similarly to hashes, small lists are also encoded in a special way in order
|
||||
# to save a lot of space. The special representation is only used when
|
||||
# you are under the following limits:
|
||||
list-max-ziplist-entries <%= node["redis"]["list_max_ziplist_entries"] %>
|
||||
list-max-ziplist-value <%= node["redis"]["list_max_ziplist_value"] %>
|
||||
|
||||
# Sets have a special encoding in just one case: when a set is composed
|
||||
# of just strings that happens to be integers in radix 10 in the range
|
||||
# of 64 bit signed integers.
|
||||
# The following configuration setting sets the limit in the size of the
|
||||
# set in order to use this special memory saving encoding.
|
||||
set-max-intset-entries <%= node["redis"]["set_max_intset_entries"] %>
|
||||
|
||||
# Similarly to hashes and lists, sorted sets are also specially encoded in
|
||||
# order to save a lot of space. This encoding is only used when the length and
|
||||
# elements of a sorted set are below the following limits:
|
||||
zset-max-ziplist-entries <%= node["redis"]["zset_max_ziplist_entries"] %>
|
||||
zset-max-ziplist-value <%= node["redis"]["zset_max_ziplist_value"] %>
|
||||
|
||||
# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
|
||||
# order to help rehashing the main Redis hash table (the one mapping top-level
|
||||
# keys to values). The hash table implementation redis uses (see dict.c)
|
||||
# performs a lazy rehashing: the more operation you run into an hash table
|
||||
# that is rhashing, the more rehashing "steps" are performed, so if the
|
||||
# server is idle the rehashing is never complete and some more memory is used
|
||||
# by the hash table.
|
||||
#
|
||||
# The default is to use this millisecond 10 times every second in order to
|
||||
# active rehashing the main dictionaries, freeing memory when possible.
|
||||
#
|
||||
# If unsure:
|
||||
# use "activerehashing no" if you have hard latency requirements and it is
|
||||
# not a good thing in your environment that Redis can reply form time to time
|
||||
# to queries with 2 milliseconds delay.
|
||||
#
|
||||
# use "activerehashing yes" if you don't have such hard requirements but
|
||||
# want to free memory asap when possible.
|
||||
activerehashing <%= node["redis"]["activerehashing"] %>
|
||||
|
||||
# The client output buffer limits can be used to force disconnection of clients
|
||||
# that are not reading data from the server fast enough for some reason (a
|
||||
# common reason is that a Pub/Sub client can't consume messages as fast as the
|
||||
# publisher can produce them).
|
||||
#
|
||||
# The limit can be set differently for the three different classes of clients:
|
||||
#
|
||||
# normal -> normal clients
|
||||
# slave -> slave clients and MONITOR clients
|
||||
# pubsub -> clients subcribed to at least one pubsub channel or pattern
|
||||
#
|
||||
# The syntax of every client-output-buffer-limit directive is the following:
|
||||
#
|
||||
# client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>
|
||||
#
|
||||
# A client is immediately disconnected once the hard limit is reached, or if
|
||||
# the soft limit is reached and remains reached for the specified number of
|
||||
# seconds (continuously).
|
||||
# So for instance if the hard limit is 32 megabytes and the soft limit is
|
||||
# 16 megabytes / 10 seconds, the client will get disconnected immediately
|
||||
# if the size of the output buffers reach 32 megabytes, but will also get
|
||||
# disconnected if the client reaches 16 megabytes and continuously overcomes
|
||||
# the limit for 10 seconds.
|
||||
#
|
||||
# By default normal clients are not limited because they don't receive data
|
||||
# without asking (in a push way), but just after a request, so only
|
||||
# asynchronous clients may create a scenario where data is requested faster
|
||||
# than it can read.
|
||||
#
|
||||
# Instead there is a default limit for pubsub and slave clients, since
|
||||
# subscribers and slaves receive data in a push fashion.
|
||||
#
|
||||
# Both the hard or the soft limit can be disabled just setting it to zero.
|
||||
client-output-buffer-limit normal <%= node["redis"]["client_output_buffer_limit"]["normal"] %>
|
||||
client-output-buffer-limit slave <%= node["redis"]["client_output_buffer_limit"]["slave"] %>
|
||||
client-output-buffer-limit pubsub <%= node["redis"]["client_output_buffer_limit"]["pubsub"] %>
|
||||
|
||||
################################## INCLUDES ###################################
|
||||
|
||||
# Include one or more other config files here. This is useful if you
|
||||
# have a standard template that goes to all redis server but also need
|
||||
# to customize a few per-server settings. Include files can include
|
||||
# other files, so use this wisely.
|
||||
#
|
||||
# include /path/to/local.conf
|
||||
# include /path/to/other.conf
|
||||
<% node["redis"]["include_config_files"].each do |file| %>
|
||||
include <%= file %>
|
||||
<% end %>
|
||||
2
cookbooks/redis/test/.chef/knife.rb
Normal file
2
cookbooks/redis/test/.chef/knife.rb
Normal file
@@ -0,0 +1,2 @@
|
||||
cache_type "BasicFile"
|
||||
cache_options(path: "#{ENV["HOME"]}/.chef/checksums")
|
||||
@@ -0,0 +1,41 @@
|
||||
require "serverspec"
|
||||
|
||||
set :backend, :exec
|
||||
|
||||
describe "Redis client installation" do
|
||||
describe package("redis-tools") do
|
||||
it { should be_installed }
|
||||
end
|
||||
end
|
||||
|
||||
describe "Redis server installation" do
|
||||
describe package("redis-server") do
|
||||
it { should be_installed }
|
||||
end
|
||||
|
||||
describe file("/var/lib/redis") do
|
||||
it { should be_a_directory }
|
||||
it { should be_owned_by "redis" }
|
||||
it { should be_grouped_into "redis" }
|
||||
it { should be_mode 750 }
|
||||
end
|
||||
|
||||
describe service("redis-server") do
|
||||
it { should be_enabled }
|
||||
it { should be_running }
|
||||
end
|
||||
|
||||
describe file("/etc/redis/redis.conf") do
|
||||
it { should be_a_file }
|
||||
it { should be_owned_by "root" }
|
||||
it { should be_grouped_into "root" }
|
||||
it { should be_mode 644 }
|
||||
end
|
||||
|
||||
describe file("/etc/default/redis-server") do
|
||||
it { should be_a_file }
|
||||
it { should be_owned_by "root" }
|
||||
it { should be_grouped_into "root" }
|
||||
it { should be_mode 644 }
|
||||
end
|
||||
end
|
||||
17
cookbooks/redis/test/support/keys/README.md
Normal file
17
cookbooks/redis/test/support/keys/README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# Insecure Keypair
|
||||
|
||||
These keys are the "insecure" public/private keypair we offer to
|
||||
[base box creators](http://docs.vagrantup.com/v1/docs/base_boxes.html) for use in their base boxes so that
|
||||
vagrant installations can automatically SSH into the boxes.
|
||||
|
||||
If you're working with a team or company or with a custom box and
|
||||
you want more secure SSH, you should create your own keypair
|
||||
and configure the private key in the Vagrantfile with
|
||||
`config.ssh.private_key_path`
|
||||
|
||||
# Putty
|
||||
|
||||
If you are using Vagrant on windows, the .ppk file contained here, in the keys directory,
|
||||
has been generated from the private key and should be used to connect Putty to any VMs that
|
||||
are leveraging the default key pair. See [guide](http://docs.vagrantup.com/v1/docs/getting-started/ssh.html)
|
||||
in the documentation for more details on using Putty with Vagrant.
|
||||
27
cookbooks/redis/test/support/keys/vagrant
Normal file
27
cookbooks/redis/test/support/keys/vagrant
Normal file
@@ -0,0 +1,27 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEogIBAAKCAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzI
|
||||
w+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoP
|
||||
kcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2
|
||||
hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NO
|
||||
Td0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcW
|
||||
yLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQIBIwKCAQEA4iqWPJXtzZA68mKd
|
||||
ELs4jJsdyky+ewdZeNds5tjcnHU5zUYE25K+ffJED9qUWICcLZDc81TGWjHyAqD1
|
||||
Bw7XpgUwFgeUJwUlzQurAv+/ySnxiwuaGJfhFM1CaQHzfXphgVml+fZUvnJUTvzf
|
||||
TK2Lg6EdbUE9TarUlBf/xPfuEhMSlIE5keb/Zz3/LUlRg8yDqz5w+QWVJ4utnKnK
|
||||
iqwZN0mwpwU7YSyJhlT4YV1F3n4YjLswM5wJs2oqm0jssQu/BT0tyEXNDYBLEF4A
|
||||
sClaWuSJ2kjq7KhrrYXzagqhnSei9ODYFShJu8UWVec3Ihb5ZXlzO6vdNQ1J9Xsf
|
||||
4m+2ywKBgQD6qFxx/Rv9CNN96l/4rb14HKirC2o/orApiHmHDsURs5rUKDx0f9iP
|
||||
cXN7S1uePXuJRK/5hsubaOCx3Owd2u9gD6Oq0CsMkE4CUSiJcYrMANtx54cGH7Rk
|
||||
EjFZxK8xAv1ldELEyxrFqkbE4BKd8QOt414qjvTGyAK+OLD3M2QdCQKBgQDtx8pN
|
||||
CAxR7yhHbIWT1AH66+XWN8bXq7l3RO/ukeaci98JfkbkxURZhtxV/HHuvUhnPLdX
|
||||
3TwygPBYZFNo4pzVEhzWoTtnEtrFueKxyc3+LjZpuo+mBlQ6ORtfgkr9gBVphXZG
|
||||
YEzkCD3lVdl8L4cw9BVpKrJCs1c5taGjDgdInQKBgHm/fVvv96bJxc9x1tffXAcj
|
||||
3OVdUN0UgXNCSaf/3A/phbeBQe9xS+3mpc4r6qvx+iy69mNBeNZ0xOitIjpjBo2+
|
||||
dBEjSBwLk5q5tJqHmy/jKMJL4n9ROlx93XS+njxgibTvU6Fp9w+NOFD/HvxB3Tcz
|
||||
6+jJF85D5BNAG3DBMKBjAoGBAOAxZvgsKN+JuENXsST7F89Tck2iTcQIT8g5rwWC
|
||||
P9Vt74yboe2kDT531w8+egz7nAmRBKNM751U/95P9t88EDacDI/Z2OwnuFQHCPDF
|
||||
llYOUI+SpLJ6/vURRbHSnnn8a/XG+nzedGH5JGqEJNQsz+xT2axM0/W/CRknmGaJ
|
||||
kda/AoGANWrLCz708y7VYgAtW2Uf1DPOIYMdvo6fxIB5i9ZfISgcJ/bbCUkFrhoH
|
||||
+vq/5CIWxCPp0f85R4qxxQ5ihxJ0YDQT9Jpx4TMss4PSavPaBH3RXow5Ohe+bYoQ
|
||||
NE5OgEXk2wVfZczCZpigBKbKZHNYcelXtTt/nP3rsCuGcM4h53s=
|
||||
-----END RSA PRIVATE KEY-----
|
||||
1
cookbooks/redis/test/support/keys/vagrant.pub
Normal file
1
cookbooks/redis/test/support/keys/vagrant.pub
Normal file
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key
|
||||
25
cookbooks/redis/test/support/rubocop/disabled.yml
Normal file
25
cookbooks/redis/test/support/rubocop/disabled.yml
Normal file
@@ -0,0 +1,25 @@
|
||||
Encoding:
|
||||
Description: 'Use UTF-8 as the source file encoding.'
|
||||
Enabled: false
|
||||
|
||||
SymbolArray:
|
||||
Description: 'Use %i or %I for arrays of symbols.'
|
||||
Enabled: false
|
||||
|
||||
##################### Rails ##################################
|
||||
|
||||
DefaultScope:
|
||||
Description: 'Checks if the argument passed to default_scope is a block.'
|
||||
Enabled: false
|
||||
|
||||
HasAndBelongsToMany:
|
||||
Description: 'Prefer has_many :through to has_and_belongs_to_many.'
|
||||
Enabled: false
|
||||
|
||||
Output:
|
||||
Description: 'Checks for calls to puts, print, etc.'
|
||||
Enabled: false
|
||||
|
||||
Validation:
|
||||
Description: 'Use sexy validations.'
|
||||
Enabled: false
|
||||
652
cookbooks/redis/test/support/rubocop/enabled.yml
Normal file
652
cookbooks/redis/test/support/rubocop/enabled.yml
Normal file
@@ -0,0 +1,652 @@
|
||||
# These are all the cops that are enabled in the default configuration.
|
||||
|
||||
AccessModifierIndentation:
|
||||
Description: Check indentation of private/protected visibility modifiers.
|
||||
Enabled: true
|
||||
|
||||
AccessorMethodName:
|
||||
Description: Check the naming of accessor methods for get_/set_.
|
||||
Enabled: true
|
||||
|
||||
Alias:
|
||||
Description: 'Use alias_method instead of alias.'
|
||||
Enabled: true
|
||||
|
||||
AlignArray:
|
||||
Description: >-
|
||||
Align the elements of an array literal if they span more than
|
||||
one line.
|
||||
Enabled: true
|
||||
|
||||
AlignHash:
|
||||
Description: >-
|
||||
Align the elements of a hash literal if they span more than
|
||||
one line.
|
||||
Enabled: true
|
||||
|
||||
AlignParameters:
|
||||
Description: >-
|
||||
Align the parameters of a method call if they span more
|
||||
than one line.
|
||||
Enabled: true
|
||||
|
||||
AndOr:
|
||||
Description: 'Use &&/|| instead of and/or.'
|
||||
Enabled: true
|
||||
|
||||
AsciiComments:
|
||||
Description: 'Use only ascii symbols in comments.'
|
||||
Enabled: true
|
||||
|
||||
AsciiIdentifiers:
|
||||
Description: 'Use only ascii symbols in identifiers.'
|
||||
Enabled: true
|
||||
|
||||
Attr:
|
||||
Description: 'Checks for uses of Module#attr.'
|
||||
Enabled: true
|
||||
|
||||
BeginBlock:
|
||||
Description: 'Avoid the use of BEGIN blocks.'
|
||||
Enabled: true
|
||||
|
||||
BlockComments:
|
||||
Description: 'Do not use block comments.'
|
||||
Enabled: true
|
||||
|
||||
BlockNesting:
|
||||
Description: 'Avoid excessive block nesting'
|
||||
Enabled: true
|
||||
|
||||
Blocks:
|
||||
Description: >-
|
||||
Avoid using {...} for multi-line blocks (multiline chaining is
|
||||
always ugly).
|
||||
Prefer {...} over do...end for single-line blocks.
|
||||
Enabled: true
|
||||
|
||||
BracesAroundHashParameters:
|
||||
Description: 'Enforce braces style inside hash parameters.'
|
||||
Enabled: true
|
||||
|
||||
CaseEquality:
|
||||
Description: 'Avoid explicit use of the case equality operator(===).'
|
||||
Enabled: true
|
||||
|
||||
CaseIndentation:
|
||||
Description: 'Indentation of when in a case/when/[else/]end.'
|
||||
Enabled: true
|
||||
|
||||
CharacterLiteral:
|
||||
Description: 'Checks for uses of character literals.'
|
||||
Enabled: true
|
||||
|
||||
ClassAndModuleCamelCase:
|
||||
Description: 'Use CamelCase for classes and modules.'
|
||||
Enabled: true
|
||||
|
||||
ClassLength:
|
||||
Description: 'Avoid classes longer than 100 lines of code.'
|
||||
Enabled: true
|
||||
|
||||
ClassMethods:
|
||||
Description: 'Use self when defining module/class methods.'
|
||||
Enabled: true
|
||||
|
||||
ClassVars:
|
||||
Description: 'Avoid the use of class variables.'
|
||||
Enabled: true
|
||||
|
||||
CollectionMethods:
|
||||
Description: 'Preferred collection methods.'
|
||||
Enabled: true
|
||||
|
||||
ColonMethodCall:
|
||||
Description: 'Do not use :: for method call.'
|
||||
Enabled: true
|
||||
|
||||
CommentAnnotation:
|
||||
Description: >-
|
||||
Checks formatting of special comments
|
||||
(TODO, FIXME, OPTIMIZE, HACK, REVIEW).
|
||||
Enabled: true
|
||||
|
||||
ConstantName:
|
||||
Description: 'Constants should use SCREAMING_SNAKE_CASE.'
|
||||
Enabled: true
|
||||
|
||||
CyclomaticComplexity:
|
||||
Description: 'Avoid complex methods.'
|
||||
Enabled: true
|
||||
|
||||
DefWithParentheses:
|
||||
Description: 'Use def with parentheses when there are arguments.'
|
||||
Enabled: true
|
||||
|
||||
Documentation:
|
||||
Description: 'Document classes and non-namespace modules.'
|
||||
Enabled: true
|
||||
|
||||
DotPosition:
|
||||
Description: 'Checks the position of the dot in multi-line method calls.'
|
||||
Enabled: true
|
||||
|
||||
EmptyLineBetweenDefs:
|
||||
Description: 'Use empty lines between defs.'
|
||||
Enabled: true
|
||||
|
||||
EmptyLines:
|
||||
Description: "Don't use several empty lines in a row."
|
||||
Enabled: true
|
||||
|
||||
EmptyLinesAroundAccessModifier:
|
||||
Description: "Keep blank lines around access modifiers."
|
||||
Enabled: true
|
||||
|
||||
EmptyLinesAroundBody:
|
||||
Description: "Keeps track of empty lines around expression bodies."
|
||||
Enabled: true
|
||||
|
||||
EmptyLiteral:
|
||||
Description: 'Prefer literals to Array.new/Hash.new/String.new.'
|
||||
Enabled: true
|
||||
|
||||
EndBlock:
|
||||
Description: 'Avoid the use of END blocks.'
|
||||
Enabled: true
|
||||
|
||||
EndOfLine:
|
||||
Description: 'Use Unix-style line endings.'
|
||||
Enabled: true
|
||||
|
||||
EvenOdd:
|
||||
Description: 'Favor the use of Fixnum#even? && Fixnum#odd?'
|
||||
Enabled: true
|
||||
|
||||
FavorJoin:
|
||||
Description: 'Use Array#join instead of Array#*.'
|
||||
Enabled: true
|
||||
|
||||
FavorUnlessOverNegatedIf:
|
||||
Description: >-
|
||||
Favor unless over if for negative conditions
|
||||
(or control flow or).
|
||||
Enabled: true
|
||||
|
||||
FavorUntilOverNegatedWhile:
|
||||
Description: 'Favor until over while for negative conditions.'
|
||||
Enabled: true
|
||||
|
||||
FileName:
|
||||
Description: 'Use snake_case for source file names.'
|
||||
Enabled: true
|
||||
|
||||
FinalNewline:
|
||||
Description: 'Checks for a final newline in a source file.'
|
||||
Enabled: true
|
||||
|
||||
FlipFlop:
|
||||
Description: 'Checks for flip flops'
|
||||
Enabled: true
|
||||
|
||||
For:
|
||||
Description: 'Checks use of for or each in multiline loops.'
|
||||
Enabled: true
|
||||
|
||||
FormatString:
|
||||
Description: 'Enforce the use of Kernel#sprintf, Kernel#format or String#%.'
|
||||
Enabled: true
|
||||
|
||||
GlobalVars:
|
||||
Description: 'Do not introduce global variables.'
|
||||
Enabled: true
|
||||
|
||||
HashMethods:
|
||||
Description: 'Checks for use of deprecated Hash methods.'
|
||||
Enabled: true
|
||||
|
||||
HashSyntax:
|
||||
Description: >-
|
||||
Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax
|
||||
{ :a => 1, :b => 2 }.
|
||||
Enabled: true
|
||||
|
||||
IfUnlessModifier:
|
||||
Description: >-
|
||||
Favor modifier if/unless usage when you have a
|
||||
single-line body.
|
||||
Enabled: true
|
||||
|
||||
IfWithSemicolon:
|
||||
Description: 'Never use if x; .... Use the ternary operator instead.'
|
||||
Enabled: true
|
||||
|
||||
IndentationConsistency:
|
||||
Description: 'Keep indentation straight.'
|
||||
Enabled: true
|
||||
|
||||
IndentationWidth:
|
||||
Description: 'Use 2 spaces for indentation.'
|
||||
Enabled: true
|
||||
|
||||
IndentArray:
|
||||
Description: >-
|
||||
Checks the indentation of the first element in an array
|
||||
literal.
|
||||
Enabled: true
|
||||
|
||||
IndentHash:
|
||||
Description: 'Checks the indentation of the first key in a hash literal.'
|
||||
Enabled: true
|
||||
|
||||
Lambda:
|
||||
Description: 'Use the new lambda literal syntax for single-line blocks.'
|
||||
Enabled: true
|
||||
|
||||
LambdaCall:
|
||||
Description: 'Use lambda.call(...) instead of lambda.(...).'
|
||||
Enabled: true
|
||||
|
||||
LeadingCommentSpace:
|
||||
Description: 'Comments should start with a space.'
|
||||
Enabled: true
|
||||
|
||||
LineEndConcatenation:
|
||||
Description: 'Use \\ instead of + to concatenate two string literals at line end.'
|
||||
Enabled: true
|
||||
|
||||
LineLength:
|
||||
Description: 'Limit lines to 79 characters.'
|
||||
Enabled: true
|
||||
|
||||
MethodCalledOnDoEndBlock:
|
||||
Description: 'Avoid chaining a method call on a do...end block.'
|
||||
Enabled: true
|
||||
|
||||
MethodCallParentheses:
|
||||
Description: 'Do not use parentheses for method calls with no arguments.'
|
||||
Enabled: true
|
||||
|
||||
MethodDefParentheses:
|
||||
Description: >-
|
||||
Checks if the method definitions have or don't have
|
||||
parentheses.
|
||||
Enabled: true
|
||||
|
||||
MethodLength:
|
||||
Description: 'Avoid methods longer than 10 lines of code.'
|
||||
Enabled: true
|
||||
|
||||
MethodName:
|
||||
Description: 'Use the configured style when naming methods.'
|
||||
Enabled: true
|
||||
|
||||
ModuleFunction:
|
||||
Description: 'Checks for usage of `extend self` in modules.'
|
||||
Enabled: true
|
||||
|
||||
MultilineBlockChain:
|
||||
Description: 'Avoid multi-line chains of blocks.'
|
||||
Enabled: true
|
||||
|
||||
MultilineIfThen:
|
||||
Description: 'Never use then for multi-line if/unless.'
|
||||
Enabled: true
|
||||
|
||||
MultilineTernaryOperator:
|
||||
Description: >-
|
||||
Avoid multi-line ?: (the ternary operator);
|
||||
use if/unless instead.
|
||||
Enabled: true
|
||||
|
||||
NestedTernaryOperator:
|
||||
Description: 'Use one expression per branch in a ternary operator.'
|
||||
Enabled: true
|
||||
|
||||
NilComparison:
|
||||
Description: 'Prefer x.nil? to x == nil.'
|
||||
Enabled: true
|
||||
|
||||
Not:
|
||||
Description: 'Use ! instead of not.'
|
||||
Enabled: true
|
||||
|
||||
NumericLiterals:
|
||||
Description: >-
|
||||
Add underscores to large numeric literals to improve their
|
||||
readability.
|
||||
Enabled: true
|
||||
|
||||
OneLineConditional:
|
||||
Description: >-
|
||||
Favor the ternary operator(?:) over
|
||||
if/then/else/end constructs.
|
||||
Enabled: true
|
||||
|
||||
OpMethod:
|
||||
Description: 'When defining binary operators, name the argument other.'
|
||||
Enabled: true
|
||||
|
||||
ParameterLists:
|
||||
Description: 'Avoid parameter lists longer than three or four parameters.'
|
||||
Enabled: true
|
||||
|
||||
ParenthesesAroundCondition:
|
||||
Description: >-
|
||||
Don't use parentheses around the condition of an
|
||||
if/unless/while.
|
||||
Enabled: true
|
||||
|
||||
PerlBackrefs:
|
||||
Description: 'Avoid Perl-style regex back references.'
|
||||
Enabled: true
|
||||
|
||||
PredicateName:
|
||||
Description: 'Check the names of predicate methods.'
|
||||
Enabled: true
|
||||
|
||||
Proc:
|
||||
Description: 'Use proc instead of Proc.new.'
|
||||
Enabled: true
|
||||
|
||||
RaiseArgs:
|
||||
Description: 'Checks the arguments passed to raise/fail.'
|
||||
Enabled: true
|
||||
|
||||
RedundantBegin:
|
||||
Description: "Don't use begin blocks when they are not needed."
|
||||
Enabled: true
|
||||
|
||||
RedundantException:
|
||||
Description: "Checks for an obsolete RuntimeException argument in raise/fail."
|
||||
Enabled: true
|
||||
|
||||
RedundantReturn:
|
||||
Description: "Don't use return where it's not required."
|
||||
Enabled: true
|
||||
|
||||
RedundantSelf:
|
||||
Description: "Don't use self where it's not needed."
|
||||
Enabled: true
|
||||
|
||||
RegexpLiteral:
|
||||
Description: >-
|
||||
Use %r for regular expressions matching more than
|
||||
`MaxSlashes` '/' characters.
|
||||
Use %r only for regular expressions matching more than
|
||||
`MaxSlashes` '/' character.
|
||||
Enabled: true
|
||||
|
||||
RescueModifier:
|
||||
Description: 'Avoid using rescue in its modifier form.'
|
||||
Enabled: true
|
||||
|
||||
Semicolon:
|
||||
Description: "Don't use semicolons to terminate expressions."
|
||||
Enabled: true
|
||||
|
||||
SignalException:
|
||||
Description: 'Checks for proper usage of fail and raise.'
|
||||
Enabled: true
|
||||
|
||||
SingleLineBlockParams:
|
||||
Description: 'Enforces the names of some block params.'
|
||||
Enabled: true
|
||||
|
||||
SingleLineMethods:
|
||||
Description: 'Avoid single-line methods.'
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterColon:
|
||||
Description: 'Use spaces after colons.'
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterComma:
|
||||
Description: 'Use spaces after commas.'
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterControlKeyword:
|
||||
Description: 'Use spaces after if/elsif/unless/while/until/case/when.'
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterMethodName:
|
||||
Description: >-
|
||||
Never put a space between a method name and the opening
|
||||
parenthesis.
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterNot:
|
||||
Description: Tracks redundant space after the ! operator.
|
||||
Enabled: true
|
||||
|
||||
SpaceAfterSemicolon:
|
||||
Description: 'Use spaces after semicolons.'
|
||||
Enabled: true
|
||||
|
||||
SpaceAroundBlockBraces:
|
||||
Description: >-
|
||||
Checks that block braces have or don't have surrounding space.
|
||||
For blocks taking parameters, checks that the left brace has
|
||||
or doesn't have trailing space.
|
||||
Enabled: true
|
||||
|
||||
SpaceAroundEqualsInParameterDefault:
|
||||
Description: >-
|
||||
Use spaces around the = operator when assigning default
|
||||
values in def params.
|
||||
Enabled: true
|
||||
|
||||
SpaceAroundOperators:
|
||||
Description: 'Use spaces around operators.'
|
||||
Enabled: true
|
||||
|
||||
SpaceBeforeModifierKeyword:
|
||||
Description: 'Put a space before the modifier keyword.'
|
||||
Enabled: true
|
||||
|
||||
SpaceInsideBrackets:
|
||||
Description: 'No spaces after [ or before ].'
|
||||
Enabled: true
|
||||
|
||||
SpaceInsideHashLiteralBraces:
|
||||
Description: "Use spaces inside hash literal braces - or don't."
|
||||
Enabled: true
|
||||
|
||||
SpaceInsideParens:
|
||||
Description: 'No spaces after ( or before ).'
|
||||
Enabled: true
|
||||
|
||||
SpecialGlobalVars:
|
||||
Description: 'Avoid Perl-style global variables.'
|
||||
Enabled: true
|
||||
|
||||
StringLiterals:
|
||||
Description: 'Checks if uses of quotes match the configured preference.'
|
||||
Enabled: true
|
||||
|
||||
Tab:
|
||||
Description: 'No hard tabs.'
|
||||
Enabled: true
|
||||
|
||||
TrailingBlankLines:
|
||||
Description: 'Checks for superfluous trailing blank lines.'
|
||||
Enabled: true
|
||||
|
||||
TrailingComma:
|
||||
Description: 'Checks for trailing comma in parameter lists and literals.'
|
||||
Enabled: true
|
||||
|
||||
TrailingWhitespace:
|
||||
Description: 'Avoid trailing whitespace.'
|
||||
Enabled: true
|
||||
|
||||
TrivialAccessors:
|
||||
Description: 'Prefer attr_* methods to trivial readers/writers.'
|
||||
Enabled: true
|
||||
|
||||
UnlessElse:
|
||||
Description: >-
|
||||
Never use unless with else. Rewrite these with the positive
|
||||
case first.
|
||||
Enabled: true
|
||||
|
||||
VariableInterpolation:
|
||||
Description: >-
|
||||
Don't interpolate global, instance and class variables
|
||||
directly in strings.
|
||||
Enabled: true
|
||||
|
||||
VariableName:
|
||||
Description: 'Use the configured style when naming variables.'
|
||||
Enabled: true
|
||||
|
||||
WhenThen:
|
||||
Description: 'Use when x then ... for one-line cases.'
|
||||
Enabled: true
|
||||
|
||||
WhileUntilDo:
|
||||
Description: 'Checks for redundant do after while or until.'
|
||||
Enabled: true
|
||||
|
||||
WhileUntilModifier:
|
||||
Description: >-
|
||||
Favor modifier while/until usage when you have a
|
||||
single-line body.
|
||||
Enabled: true
|
||||
|
||||
WordArray:
|
||||
Description: 'Use %w or %W for arrays of words.'
|
||||
Enabled: true
|
||||
|
||||
#################### Lint ################################
|
||||
### Warnings
|
||||
|
||||
AmbiguousOperator:
|
||||
Description: >-
|
||||
Checks for ambiguous operators in the first argument of a
|
||||
method invocation without parentheses.
|
||||
Enabled: true
|
||||
|
||||
AmbiguousRegexpLiteral:
|
||||
Description: >-
|
||||
Checks for ambiguous regexp literals in the first argument of
|
||||
a method invocation without parenthesis.
|
||||
Enabled: true
|
||||
|
||||
AssignmentInCondition:
|
||||
Description: "Don't use assignment in conditions."
|
||||
Enabled: true
|
||||
|
||||
BlockAlignment:
|
||||
Description: 'Align block ends correctly.'
|
||||
Enabled: true
|
||||
|
||||
ConditionPosition:
|
||||
Description: 'Checks for condition placed in a confusing position relative to the keyword.'
|
||||
Enabled: true
|
||||
|
||||
Debugger:
|
||||
Description: 'Check for debugger calls.'
|
||||
Enabled: true
|
||||
|
||||
DeprecatedClassMethods:
|
||||
Description: 'Check for deprecated class method calls.'
|
||||
Enabled: true
|
||||
|
||||
ElseLayout:
|
||||
Description: 'Check for odd code arrangement in an else block.'
|
||||
Enabled: true
|
||||
|
||||
EmptyEnsure:
|
||||
Description: 'Checks for empty ensure block.'
|
||||
Enabled: true
|
||||
|
||||
EndAlignment:
|
||||
Description: 'Align ends correctly.'
|
||||
Enabled: true
|
||||
|
||||
EndInMethod:
|
||||
Description: 'END blocks should not be placed inside method definitions.'
|
||||
Enabled: true
|
||||
|
||||
EnsureReturn:
|
||||
Description: 'Never use return in an ensure block.'
|
||||
Enabled: true
|
||||
|
||||
Eval:
|
||||
Description: 'The use of eval represents a serious security risk.'
|
||||
Enabled: true
|
||||
|
||||
HandleExceptions:
|
||||
Description: "Don't suppress exception."
|
||||
Enabled: true
|
||||
|
||||
InvalidCharacterLiteral:
|
||||
Description: >-
|
||||
Checks for invalid character literals with a non-escaped
|
||||
whitespace character.
|
||||
Enabled: true
|
||||
|
||||
LiteralInCondition:
|
||||
Description: 'Checks of literals used in conditions.'
|
||||
Enabled: true
|
||||
|
||||
LiteralInInterpolation:
|
||||
Description: 'Checks for literals used in interpolation.'
|
||||
Enabled: true
|
||||
|
||||
Loop:
|
||||
Description: >-
|
||||
Use Kernel#loop with break rather than begin/end/until or
|
||||
begin/end/while for post-loop tests.
|
||||
Enabled: true
|
||||
|
||||
ParenthesesAsGroupedExpression:
|
||||
Description: >-
|
||||
Checks for method calls with a space before the opening
|
||||
parenthesis.
|
||||
Enabled: true
|
||||
|
||||
RequireParentheses:
|
||||
Description: >-
|
||||
Use parentheses in the method call to avoid confusion
|
||||
about precedence.
|
||||
Enabled: true
|
||||
|
||||
RescueException:
|
||||
Description: 'Avoid rescuing the Exception class.'
|
||||
Enabled: true
|
||||
|
||||
ShadowingOuterLocalVariable:
|
||||
Description: >-
|
||||
Do not use the same name as outer local variable
|
||||
for block arguments or block local variables.
|
||||
Enabled: true
|
||||
|
||||
StringConversionInInterpolation:
|
||||
Description: 'Checks for Object#to_s usage in string interpolation.'
|
||||
Enabled: true
|
||||
|
||||
UnreachableCode:
|
||||
Description: 'Unreachable code.'
|
||||
Enabled: true
|
||||
|
||||
UselessAssignment:
|
||||
Description: 'Checks for useless assignment to a local variable.'
|
||||
Enabled: true
|
||||
|
||||
UselessComparison:
|
||||
Description: 'Checks for comparison of something with itself.'
|
||||
Enabled: true
|
||||
|
||||
UselessElseWithoutRescue:
|
||||
Description: 'Checks for useless `else` in `begin..end` without `rescue`.'
|
||||
Enabled: true
|
||||
|
||||
UselessSetterCall:
|
||||
Description: 'Checks for useless setter call to a local variable.'
|
||||
Enabled: true
|
||||
|
||||
Void:
|
||||
Description: 'Possible use of operator/literal/variable in void context.'
|
||||
Enabled: true
|
||||
Reference in New Issue
Block a user