influxdb_setup 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +118 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/influxdb_setup.gemspec +26 -0
- data/lib/influxdb_setup/capistrano.rb +17 -0
- data/lib/influxdb_setup/command.rb +13 -0
- data/lib/influxdb_setup/commands.rb +25 -0
- data/lib/influxdb_setup/config.rb +51 -0
- data/lib/influxdb_setup/create_db.rb +15 -0
- data/lib/influxdb_setup/create_user.rb +18 -0
- data/lib/influxdb_setup/load_queries.rb +34 -0
- data/lib/influxdb_setup/mark_deploy.rb +15 -0
- data/lib/influxdb_setup/railtie.rb +7 -0
- data/lib/influxdb_setup/setup_shard_spaces.rb +51 -0
- data/lib/influxdb_setup/version.rb +3 -0
- data/lib/influxdb_setup.rb +22 -0
- data/lib/tasks/influxdb_setup.rake +36 -0
- metadata +123 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 4471496a08494e71b0e21ef15489732db87238bf
|
4
|
+
data.tar.gz: 9860d614165a6b8afddf1743309d2e6cb89a9056
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 10068472722032acf450895cc5331a26362ae4180c439739f249d4a0b279b5e241a12ed18ece490c1eabd71b5fa17ea34f53610ca3c64da684c712cc9a89985c
|
7
|
+
data.tar.gz: a78a8c0f9c49d84737ec6ffdf2defa4f155fdefd6718aece8ac6dfadbbaf9d1d2f563009a841c43a0d6bfb459cfadf27405734368db34b630a859fff01152a03
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2015 Donald Plummer
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
# InfluxdbSetup
|
2
|
+
|
3
|
+
For configuring the influxdb database, shard spaces, and continuous queries.
|
4
|
+
|
5
|
+
**Warning**: Only works with InfluxDB 0.8.x
|
6
|
+
|
7
|
+
I wanted configuring influxdb to be as easy as database migrations with Rails.
|
8
|
+
This gem provides rake tasks to create the database and user, setup 2 default
|
9
|
+
shard spaces (one for a week of fine grained detail, and another for archiving
|
10
|
+
a year of data), and for creating/removing/updating continuous queries.
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
|
14
|
+
Add these lines to your application's Gemfile:
|
15
|
+
|
16
|
+
```ruby
|
17
|
+
gem 'influxdb_setup'
|
18
|
+
```
|
19
|
+
|
20
|
+
And then execute:
|
21
|
+
|
22
|
+
$ bundle
|
23
|
+
|
24
|
+
## Capistrano Integration
|
25
|
+
|
26
|
+
To have the task run on deploy, add `require "influxdb_setup/capistrano"` to
|
27
|
+
your `config/deploy.rb`.
|
28
|
+
|
29
|
+
This will run the setup on deploy (creating database, shard spaces, and
|
30
|
+
continuous queries). It will also mark the deploy in the "deploys" table in
|
31
|
+
your influxdb. See the example `db/influxdb_queries.yml` below for the archive
|
32
|
+
queries.
|
33
|
+
|
34
|
+
## Usage
|
35
|
+
|
36
|
+
This library expects your influxdb config to be located in the
|
37
|
+
`config/influxdb.yml` file. For example (change *myapp* to your application
|
38
|
+
name):
|
39
|
+
|
40
|
+
```yaml
|
41
|
+
default: &default
|
42
|
+
hosts: <%= ENV.fetch('INFLUXDB_HOSTS', '').split(',') %>
|
43
|
+
port: <%= ENV.fetch('INFLUXDB_PORT', '8086') %>
|
44
|
+
db_name: <%= ENV.fetch('INFLUXDB_DB_NAME', 'myapp') %>
|
45
|
+
username: <%= ENV.fetch('INFLUXDB_USER', 'myapp') %>
|
46
|
+
password: <%= ENV.fetch('INFLUXDB_PASS', 'myapp') %>
|
47
|
+
async: <%= ENV.fetch('INFLUXDB_ASYNC', 'true') == "true" %> # default true
|
48
|
+
retry: <%= ENV.fetch('INFLUXDB_RETRY', 'true') == "true" %> # default true
|
49
|
+
use_ssl: <%= ENV.fetch('INFLUXDB_USE_SSL', 'false') == "true" %> # default false
|
50
|
+
enabled: <%= ENV.fetch('INFLUXDB_ENABLED', 'false') == "true" %> # default false
|
51
|
+
|
52
|
+
|
53
|
+
development:
|
54
|
+
<<: *default
|
55
|
+
hosts: ["192.168.59.103"] # boot2docker default ip
|
56
|
+
async: false
|
57
|
+
enabled: true
|
58
|
+
retry: false
|
59
|
+
|
60
|
+
test:
|
61
|
+
<<: *default
|
62
|
+
|
63
|
+
production:
|
64
|
+
<<: *default
|
65
|
+
hosts: ["localhost"]
|
66
|
+
enabled: true
|
67
|
+
```
|
68
|
+
|
69
|
+
To add continuous queries, just add them to the `db/influxdb_queries.yml`, for
|
70
|
+
example:
|
71
|
+
|
72
|
+
```yaml
|
73
|
+
---
|
74
|
+
- select * from "response_times" into response_times.[rails_env]
|
75
|
+
- select mean(value),count(value),percentile(value,95.0) as 95th,percentile(value,99.0) as 99th from "response_times.production" group by time(1h) into archive.response_times.1h
|
76
|
+
- select * from "deploys" into deploys.[rails_env]
|
77
|
+
- select * from "deploys.production" into archive.deploys
|
78
|
+
```
|
79
|
+
|
80
|
+
Make sure your queries match what the server coerces them into (no spaces
|
81
|
+
after commas) by running the `rake influxdb:load_queries` task multiple times.
|
82
|
+
If there's queries to update the task will not do anything.
|
83
|
+
|
84
|
+
## Rake tasks
|
85
|
+
|
86
|
+
`rake influxdb:create_db`
|
87
|
+
Creates the database for the service if it doesn't already exist.
|
88
|
+
|
89
|
+
`rake influxdb:setup_shard_spaces`
|
90
|
+
Creates or updates the default and archives shard spaces. If they don't exist,
|
91
|
+
it creates them. If they do exist but they are not correct, it updates them.
|
92
|
+
|
93
|
+
`rake influxdb:create_user`
|
94
|
+
Creates the user for the service if it doesn't already exist.
|
95
|
+
|
96
|
+
`rake influxdb:load_queries`
|
97
|
+
Creates any continuous queries that are missing. Removes queries that are not
|
98
|
+
in the `db/influxdb_queries.yml` file.
|
99
|
+
|
100
|
+
`rake influxdb:setup`
|
101
|
+
Runs all the above rake tasks.
|
102
|
+
|
103
|
+
## Development
|
104
|
+
|
105
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
106
|
+
`rake spec` to run the tests. You can also run `bin/console` for an interactive
|
107
|
+
prompt that will allow you to experiment.
|
108
|
+
|
109
|
+
## Contributing
|
110
|
+
|
111
|
+
Bug reports and pull requests are welcome on Github at
|
112
|
+
https://github.com/dplummer/influxdb_setup
|
113
|
+
|
114
|
+
## License
|
115
|
+
|
116
|
+
The gem is available as open source under the terms of the
|
117
|
+
[MIT License](http://opensource.org/licenses/MIT).
|
118
|
+
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "influxdb_setup"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'influxdb_setup/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "influxdb_setup"
|
8
|
+
spec.version = InfluxdbSetup::VERSION
|
9
|
+
spec.authors = ["Donald Plummer"]
|
10
|
+
spec.email = ["donald.plummer@gmail.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{Rake task for setting up an influxdb database and queries}
|
13
|
+
spec.homepage = "https://github.com/dplummer/influxdb_setup"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
17
|
+
spec.bindir = "exe"
|
18
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_dependency "influxdb", "~> 0.1.9"
|
22
|
+
|
23
|
+
spec.add_development_dependency "bundler", "~> 1.10"
|
24
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
25
|
+
spec.add_development_dependency "rspec"
|
26
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
namespace :deploy do
|
2
|
+
before :restart, :influxdb_setup do
|
3
|
+
on roles(:db) do
|
4
|
+
within release_path do
|
5
|
+
revision = fetch(:current_revision) do
|
6
|
+
within(repo_path) do
|
7
|
+
capture("cd #{repo_path} && git rev-parse --short HEAD")
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
with rails_env: fetch(:rails_env) do
|
12
|
+
execute :rake, "influxdb:setup influxdb:mark_deploy[#{revision}]"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class Commands
|
3
|
+
attr_reader :config
|
4
|
+
|
5
|
+
def initialize
|
6
|
+
@config = Config.new
|
7
|
+
end
|
8
|
+
|
9
|
+
{
|
10
|
+
create_db: CreateDb,
|
11
|
+
setup_shard_spaces: SetupShardSpaces,
|
12
|
+
create_user: CreateUser,
|
13
|
+
load_queries: LoadQueries,
|
14
|
+
mark_deploy: MarkDeploy,
|
15
|
+
}.each do |cmd, klass|
|
16
|
+
define_method cmd do |*args|
|
17
|
+
begin
|
18
|
+
klass.new(config).call(*args) if config.enabled?
|
19
|
+
rescue InfluxDB::ConnectionError => e
|
20
|
+
puts "[InfluxdbSetup##{cmd}] Skipping... #{e.message}"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'yaml'
|
2
|
+
require 'erb'
|
3
|
+
|
4
|
+
module InfluxdbSetup
|
5
|
+
class Config
|
6
|
+
class << self
|
7
|
+
attr_writer :config
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.config
|
11
|
+
@config ||= YAML.load(ERB.new(File.read("config/influxdb.yml")).result)[env]
|
12
|
+
end
|
13
|
+
|
14
|
+
def initialize
|
15
|
+
@config = self.class.config
|
16
|
+
end
|
17
|
+
|
18
|
+
def env
|
19
|
+
defined?(Rails) ? Rails.env : ENV.fetch('RAILS_ENV', 'development')
|
20
|
+
end
|
21
|
+
|
22
|
+
def db_name
|
23
|
+
@config['db_name']
|
24
|
+
end
|
25
|
+
|
26
|
+
def enabled?
|
27
|
+
@config['enabled']
|
28
|
+
end
|
29
|
+
|
30
|
+
def username
|
31
|
+
@config['username']
|
32
|
+
end
|
33
|
+
|
34
|
+
def password
|
35
|
+
@config['password']
|
36
|
+
end
|
37
|
+
|
38
|
+
def build_client(database = "", options = {})
|
39
|
+
InfluxDB::Client.new(database,
|
40
|
+
{
|
41
|
+
username: "root",
|
42
|
+
password: "root",
|
43
|
+
hosts: @config["hosts"],
|
44
|
+
port: @config.fetch("port", 8086),
|
45
|
+
async: false,
|
46
|
+
use_ssl: @config.fetch("use_ssl", false),
|
47
|
+
retry: false,
|
48
|
+
}.merge(options))
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class CreateDb < Command
|
3
|
+
def call
|
4
|
+
db = @config.db_name
|
5
|
+
root = @config.build_client
|
6
|
+
databases = root.get_database_list.map { |row| row["name"] }
|
7
|
+
|
8
|
+
unless databases.include?(db)
|
9
|
+
root.create_database(db)
|
10
|
+
else
|
11
|
+
log "Influxdb database '#{db}' already exists"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class CreateUser < Command
|
3
|
+
def call
|
4
|
+
db = @config.db_name
|
5
|
+
user = @config.username
|
6
|
+
pass = @config.password
|
7
|
+
|
8
|
+
root = @config.build_client
|
9
|
+
users = root.get_database_user_list(db).map { |row| row["name"] }
|
10
|
+
|
11
|
+
unless users.include?(db)
|
12
|
+
root.create_database_user(db, user, pass)
|
13
|
+
else
|
14
|
+
log "Influxdb user '#{user}'@'#{db}' already exists"
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class LoadQueries < Command
|
3
|
+
def call
|
4
|
+
db = @config.db_name
|
5
|
+
root = @config.build_client(db)
|
6
|
+
url = root.send :full_url, "/cluster/configuration"
|
7
|
+
configuration = root.send :get, url
|
8
|
+
|
9
|
+
existing_queries = configuration["ContinuousQueries"].fetch(db, {}).each_with_object({}) do |row, acc|
|
10
|
+
acc[row['Id']] = row['Query']
|
11
|
+
end
|
12
|
+
expected_queries = YAML.load_file("db/influxdb_queries.yml")
|
13
|
+
|
14
|
+
no_change = 0
|
15
|
+
expected_queries.each do |query|
|
16
|
+
unless existing_queries.values.include?(query)
|
17
|
+
log "Adding '#{query}'"
|
18
|
+
root.query query
|
19
|
+
else
|
20
|
+
no_change += 1
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
log "There were #{no_change} continuous queries that required no updates"
|
25
|
+
|
26
|
+
existing_queries.each do |(id, query)|
|
27
|
+
unless expected_queries.include?(query)
|
28
|
+
log "Removing '#{query}'"
|
29
|
+
root.query "drop continuous query #{id}"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class MarkDeploy < Command
|
3
|
+
def call(commit)
|
4
|
+
db = @config.db_name
|
5
|
+
root = @config.build_client(db)
|
6
|
+
|
7
|
+
root.write_point("deploys", {
|
8
|
+
rails_env: config.env,
|
9
|
+
commit: commit
|
10
|
+
})
|
11
|
+
|
12
|
+
log("Marked deploy: #{config.env} at sha #{commit}")
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module InfluxdbSetup
|
2
|
+
class SetupShardSpaces < Command
|
3
|
+
def call
|
4
|
+
db = @config.db_name
|
5
|
+
root = @config.build_client
|
6
|
+
|
7
|
+
expected_default_config = {
|
8
|
+
"name" => "default",
|
9
|
+
"database" => db,
|
10
|
+
"regex" => "/.*/",
|
11
|
+
"retentionPolicy" => "7d",
|
12
|
+
"shardDuration" => "1h",
|
13
|
+
"replicationFactor" => 1,
|
14
|
+
"split" => 1
|
15
|
+
}
|
16
|
+
|
17
|
+
expected_archive_config = {
|
18
|
+
"name" => "archives",
|
19
|
+
"database" => db,
|
20
|
+
"regex" => "/archive.*/",
|
21
|
+
"retentionPolicy" => "365d",
|
22
|
+
"shardDuration" => "7d",
|
23
|
+
"replicationFactor" => 1,
|
24
|
+
"split" => 1
|
25
|
+
}
|
26
|
+
|
27
|
+
actual_default_shard = root.get_shard_space(db, "default")
|
28
|
+
actual_archive_shard = root.get_shard_space(db, "archives")
|
29
|
+
|
30
|
+
if actual_default_shard.nil?
|
31
|
+
log "Creating default shard space"
|
32
|
+
root.create_shard_space(db, expected_default_config.except("database"))
|
33
|
+
elsif actual_default_shard != expected_default_config
|
34
|
+
log "Updating default shard space"
|
35
|
+
root.update_shard_space(db, "default", expected_default_config.except("database"))
|
36
|
+
else
|
37
|
+
log "Shard default up to date"
|
38
|
+
end
|
39
|
+
|
40
|
+
if actual_archive_shard.nil?
|
41
|
+
log "Creating archives shard space"
|
42
|
+
root.create_shard_space(db, expected_archive_config.except("database"))
|
43
|
+
elsif actual_archive_shard != expected_archive_config
|
44
|
+
log "Updating archives shard space"
|
45
|
+
root.update_shard_space(db, "archives", expected_archive_config.except("database"))
|
46
|
+
else
|
47
|
+
log "Shard archives up to date"
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require "influxdb_setup/version"
|
2
|
+
|
3
|
+
module InfluxdbSetup
|
4
|
+
autoload :Command, "influxdb_setup/command"
|
5
|
+
autoload :Commands, "influxdb_setup/commands"
|
6
|
+
autoload :Config, "influxdb_setup/config"
|
7
|
+
autoload :CreateDb, "influxdb_setup/create_db"
|
8
|
+
autoload :CreateUser, "influxdb_setup/create_user"
|
9
|
+
autoload :LoadQueries, "influxdb_setup/load_queries"
|
10
|
+
autoload :MarkDeploy, "influxdb_setup/mark_deploy"
|
11
|
+
autoload :SetupShardSpaces, "influxdb_setup/setup_shard_spaces"
|
12
|
+
|
13
|
+
def self.config
|
14
|
+
InfluxdbSetup::Config.config
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.config=(new_config)
|
18
|
+
InfluxdbSetup::Config.config = new_config
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
require "influxdb_setup/railtie" if defined?(Rails)
|
@@ -0,0 +1,36 @@
|
|
1
|
+
namespace :influxdb do
|
2
|
+
task :config => [:environment] do
|
3
|
+
@influxdb_setup = InfluxdbSetup::Commands.new
|
4
|
+
end
|
5
|
+
|
6
|
+
desc "Creates the influxdb database unless it already exists"
|
7
|
+
task :create_db => [:config] do
|
8
|
+
@influxdb_setup.create_db
|
9
|
+
end
|
10
|
+
|
11
|
+
desc "Setup the default and archives shard spaces"
|
12
|
+
task :setup_shard_spaces => [:config] do
|
13
|
+
@influxdb_setup.setup_shard_spaces
|
14
|
+
end
|
15
|
+
|
16
|
+
desc "Creates the service's user if it doesn't exist"
|
17
|
+
task :create_user => [:config] do
|
18
|
+
@influxdb_setup.create_user
|
19
|
+
end
|
20
|
+
|
21
|
+
desc "Loads the continuous queries from db/influxdb_queries.yml"
|
22
|
+
task :load_queries => [:config] do
|
23
|
+
@influxdb_setup.load_queries
|
24
|
+
end
|
25
|
+
|
26
|
+
desc "Log deploy in influxdb"
|
27
|
+
task :mark_deploy, [:commit] => [:config] do |t, args|
|
28
|
+
@influxdb_setup.mark_deploy(args[:commit])
|
29
|
+
end
|
30
|
+
|
31
|
+
desc "Run all the tasks to setup influxdb for the service"
|
32
|
+
task :setup => [:create_db,
|
33
|
+
:setup_shard_spaces,
|
34
|
+
:create_user,
|
35
|
+
:load_queries]
|
36
|
+
end
|
metadata
ADDED
@@ -0,0 +1,123 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: influxdb_setup
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Donald Plummer
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-10-08 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: influxdb
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.1.9
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.1.9
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.10'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.10'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '10.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
description:
|
70
|
+
email:
|
71
|
+
- donald.plummer@gmail.com
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- ".gitignore"
|
77
|
+
- ".rspec"
|
78
|
+
- ".travis.yml"
|
79
|
+
- Gemfile
|
80
|
+
- LICENSE.txt
|
81
|
+
- README.md
|
82
|
+
- Rakefile
|
83
|
+
- bin/console
|
84
|
+
- bin/setup
|
85
|
+
- influxdb_setup.gemspec
|
86
|
+
- lib/influxdb_setup.rb
|
87
|
+
- lib/influxdb_setup/capistrano.rb
|
88
|
+
- lib/influxdb_setup/command.rb
|
89
|
+
- lib/influxdb_setup/commands.rb
|
90
|
+
- lib/influxdb_setup/config.rb
|
91
|
+
- lib/influxdb_setup/create_db.rb
|
92
|
+
- lib/influxdb_setup/create_user.rb
|
93
|
+
- lib/influxdb_setup/load_queries.rb
|
94
|
+
- lib/influxdb_setup/mark_deploy.rb
|
95
|
+
- lib/influxdb_setup/railtie.rb
|
96
|
+
- lib/influxdb_setup/setup_shard_spaces.rb
|
97
|
+
- lib/influxdb_setup/version.rb
|
98
|
+
- lib/tasks/influxdb_setup.rake
|
99
|
+
homepage: https://github.com/dplummer/influxdb_setup
|
100
|
+
licenses:
|
101
|
+
- MIT
|
102
|
+
metadata: {}
|
103
|
+
post_install_message:
|
104
|
+
rdoc_options: []
|
105
|
+
require_paths:
|
106
|
+
- lib
|
107
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
112
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
113
|
+
requirements:
|
114
|
+
- - ">="
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: '0'
|
117
|
+
requirements: []
|
118
|
+
rubyforge_project:
|
119
|
+
rubygems_version: 2.4.5.1
|
120
|
+
signing_key:
|
121
|
+
specification_version: 4
|
122
|
+
summary: Rake task for setting up an influxdb database and queries
|
123
|
+
test_files: []
|