canary 0.0.3 → 0.0.5

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.
Files changed (3) hide show
  1. data/bin/canary +29 -1
  2. data/lib/canary_version.rb +1 -1
  3. metadata +19 -8
data/bin/canary CHANGED
@@ -15,6 +15,10 @@ require 'rubygems'
15
15
  require 'gli'
16
16
  require 'canary_version'
17
17
 
18
+ require 'cgi'
19
+ require 'json'
20
+ require 'rest_client'
21
+
18
22
  include GLI
19
23
 
20
24
  program_desc 'Describe your application here'
@@ -25,7 +29,31 @@ desc 'Add a site to be monitored'
25
29
  arg_name '[url]'
26
30
  command :add do |c|
27
31
  c.action do |global_options,options,args|
28
- raise "we haven't actually implemented this..."
32
+ url = args.shift
33
+ raise "url is required" unless url
34
+ RestClient.post "http://canary-core.herokuapp.com/urls", { :url => url }.to_json
35
+ end
36
+ end
37
+
38
+ desc 'Delete a monitored site'
39
+ arg_name '[url]'
40
+ command :delete do |c|
41
+ c.action do |global_options,options,args|
42
+ url = args.shift
43
+ raise "url is required" unless url
44
+ escaped_url = CGI.escape(url)
45
+ RestClient.delete "http://canary-core.herokuapp.com/urls/#{escaped_url}"
46
+ end
47
+ end
48
+
49
+ desc 'List sites being monitored'
50
+ command :list do |c|
51
+ c.action do |global_options,options,args|
52
+ json = RestClient.get "http://canary-core.herokuapp.com/urls"
53
+ data = JSON.parse(json, :symbolize_names => true)
54
+ data.each do |x|
55
+ puts x[:url]
56
+ end
29
57
  end
30
58
  end
31
59
 
@@ -1,3 +1,3 @@
1
1
  module Canary
2
- VERSION = '0.0.3'
2
+ VERSION = '0.0.5'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canary
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-07 00:00:00.000000000 Z
12
+ date: 2012-04-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &8709920 !ruby/object:Gem::Requirement
16
+ requirement: &20018440 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *8709920
24
+ version_requirements: *20018440
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &8709280 !ruby/object:Gem::Requirement
27
+ requirement: &20016480 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *8709280
35
+ version_requirements: *20016480
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: gli
38
- requirement: &8708660 !ruby/object:Gem::Requirement
38
+ requirement: &20015140 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,18 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *8708660
46
+ version_requirements: *20015140
47
+ - !ruby/object:Gem::Dependency
48
+ name: rest-client
49
+ requirement: &20010440 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *20010440
47
58
  description:
48
59
  email: michael.gorsuch@gmail.com
49
60
  executables: