hotdog 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 953ecab33a4f48f426c3df8b0dcca49e861e5113
4
- data.tar.gz: 81868bd92db6fddf876fd7eae71c54a2dd841bad
3
+ metadata.gz: c0f33496f07a7069e8a6fab90cf456a98f80e986
4
+ data.tar.gz: d7bfd8130aa345ff212cabb30f06ddb83b286a46
5
5
  SHA512:
6
- metadata.gz: 2763f5fa563fef343b799514436bde84dd886494577b42269118c4e82d999d1c8b3c289e50e3c2a02ba4fb8806c00fbd2a2f8abe4054abc90a9457684daad7d1
7
- data.tar.gz: bc471b4a441f275d7fbbf6b2df8d706016de004c80a949fa86499db0d09ad174b708d5864248332d4c540d00731e146e6039f97d61c090422ac7125ea229504e
6
+ metadata.gz: 5c3aa62c94710e8bd3e1c738489782cfce401a3942d46be03128c4fc427719bba81f74d4cdf108c3cb9c3382ad83bdc2ba4085ca4f554ec2496fcdcb2b6a3b39
7
+ data.tar.gz: 19fce13c8757dd1fb0437abd99027d0d10ecbea68ca2db57808da119745fafbb0c704b588480f75682de5b7a12509829e2fe27c572ae1f09da5192ca5d2ace41
data/README.md CHANGED
@@ -29,7 +29,6 @@ Then, create and initialize host information. This may take several minutes.
29
29
 
30
30
  ```sh
31
31
  $ hotdog init
32
- $ hotdot update
33
32
  ```
34
33
 
35
34
  List all registered hosts.
@@ -59,7 +58,7 @@ i-069e282c sg-89bfe710 worker-staging us-east-1a t2.micro ami-
59
58
  Display hosts with specific attributes.
60
59
 
61
60
  ```sh
62
- $ hotdog ls -a host -a name
61
+ $ hotdog ls -h -a host -a name
63
62
  host name
64
63
  ---------- -----------------
65
64
  i-02605a79 web-staging
@@ -66,40 +66,40 @@ module Hotdog
66
66
 
67
67
  private
68
68
  def define_options
69
- @optparse.on("--api-key API_KEY") do |api_key|
69
+ @optparse.on("--api-key API_KEY", "Datadog API key") do |api_key|
70
70
  options[:api_key] = api_key
71
71
  end
72
- @optparse.on("--application-key APP_KEY") do |app_key|
72
+ @optparse.on("--application-key APP_KEY", "Datadog application key") do |app_key|
73
73
  options[:application_key] = app_key
74
74
  end
75
- @optparse.on("-0", "--null") do
75
+ @optparse.on("-0", "--null", "Use null character as separator") do
76
76
  options[:print0] = true
77
77
  end
78
- @optparse.on("-1") do
78
+ @optparse.on("-1", "Use newline as separator") do
79
79
  options[:print1] = true
80
80
  end
81
- @optparse.on("-d", "--debug") do
81
+ @optparse.on("-d", "--debug", "Enable debug mode") do
82
82
  options[:logger].level = Logger::DEBUG
83
83
  end
84
- @optparse.on("-E ENVIRONMENT", "--environment ENVIRONMENT") do |environment|
84
+ @optparse.on("-E ENVIRONMENT", "--environment ENVIRONMENT", "Specify environment") do |environment|
85
85
  options[:environment] = environment
86
86
  end
87
- @optparse.on("-f", "--force") do
87
+ @optparse.on("-f", "--force", "Enable force mode") do
88
88
  options[:force] = true
89
89
  end
90
- @optparse.on("-F FORMAT", "--format FORMAT") do |format|
90
+ @optparse.on("-F FORMAT", "--format FORMAT", "Specify output format") do |format|
91
91
  options[:formatter] = get_formatter(format).new
92
92
  end
93
- @optparse.on("-h", "--headers") do |headers|
93
+ @optparse.on("-h", "--headers", "Display headeres for each columns") do |headers|
94
94
  options[:headers] = headers
95
95
  end
96
- @optparse.on("-l") do
96
+ @optparse.on("-l", "Use listing format") do
97
97
  options[:listing] = true
98
98
  end
99
- @optparse.on("-a TAG", "-t TAG", "--tag TAG") do |tag|
99
+ @optparse.on("-a TAG", "-t TAG", "--tag TAG", "Use specified tag name/value") do |tag|
100
100
  options[:tags] += [tag]
101
101
  end
102
- @optparse.on("-V", "--verbose") do |tag|
102
+ @optparse.on("-V", "--verbose", "Enable verbose mode") do |tag|
103
103
  options[:logger].level = Logger::DEBUG
104
104
  end
105
105
  end
@@ -36,6 +36,7 @@ module Hotdog
36
36
  execute(<<-EOS)
37
37
  CREATE INDEX IF NOT EXISTS hosts_tags_expires_at ON hosts_tags ( expires_at );
38
38
  EOS
39
+ application.run_command("update")
39
40
  end
40
41
  end
41
42
  end
@@ -4,13 +4,12 @@ module Hotdog
4
4
  module Commands
5
5
  class Update < BaseCommand
6
6
  def run(args=[])
7
- application.run_command("init")
8
7
  if 0 < args.length
9
8
  args.each do |host_name|
10
9
  update_host_tags(host_name, @options.dup)
11
10
  end
12
11
  else
13
- update_tags(@options.dup)
12
+ update_hosts(@options.dup)
14
13
  end
15
14
  end
16
15
  end
@@ -127,13 +127,13 @@ module Hotdog
127
127
  result["results"]["hosts"].each do |host_name|
128
128
  @update_hosts_q2 ||= @db.prepare("INSERT OR IGNORE INTO hosts (name) VALUES (?);")
129
129
  logger.debug("update_hosts_q2(%s)" % [host_name.inspect])
130
- @update_hosts_q2.execute("INSERT OR IGNORE INTO hosts (name) VALUES (?);", host_name)
130
+ @update_hosts_q2.execute(host_name)
131
131
  update_host_tags(host_name, options)
132
132
  end
133
133
 
134
134
  execute(<<-EOS % result["results"]["hosts"].map { "LOWER(?)" }.join(", "), result["results"]["hosts"])
135
135
  DELETE FROM hosts_tags WHERE host_id NOT IN
136
- ( SELECT id FROM hosts WHERE name IN ( %s ) );
136
+ ( SELECT id FROM hosts WHERE LOWER(name) IN ( %s ) );
137
137
  EOS
138
138
  end
139
139
  end
@@ -188,6 +188,11 @@ module Hotdog
188
188
 
189
189
  code, result = @dog.host_tags(host_name)
190
190
  if code.to_i / 100 != 2
191
+ case code.to_i
192
+ when 404 # host not found on datadog
193
+ @update_host_tags_q7 ||= @db.prepare("DELETE FROM hosts_tags WHERE host_id IN ( SELECT id FROM hosts WHERE LOWER(name) = LOWER(?) );")
194
+ @update_host_tags_q7.execute(host_name)
195
+ end
191
196
  raise("HTTP #{code}: #{result.inspect}")
192
197
  end
193
198
 
@@ -1,3 +1,3 @@
1
1
  module Hotdog
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hotdog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yamashita Yuu