loe-iclassify-interface 1.0.0 → 1.0.1
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.
- data/.gitignore +2 -0
- data/README +30 -0
- data/Rakefile +53 -16
- data/VERSION +1 -0
- data/bin/icagent +93 -0
- data/bin/icsearch +121 -0
- data/bin/icwatcher +95 -0
- data/iclassify-interface.gemspec +47 -17
- data/lib/.DS_Store +0 -0
- metadata +54 -19
- data/History.txt +0 -5
- data/README.txt +0 -36
data/.gitignore
ADDED
data/README
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
= iclassify-interface
|
2
|
+
|
3
|
+
http://github.com/loe/iclassify-interface
|
4
|
+
|
5
|
+
== DESCRIPTION:
|
6
|
+
|
7
|
+
Module for interfacing with iclassify.
|
8
|
+
|
9
|
+
== INSTALL:
|
10
|
+
|
11
|
+
sudo gem install loe-iclassify-interface
|
12
|
+
|
13
|
+
== LICENSE:
|
14
|
+
|
15
|
+
# Author:: Adam Jacob (<adam@hjksolutions.com>)
|
16
|
+
# Copyright:: Copyright (c) 2007 HJK Solutions, LLC
|
17
|
+
# License:: GNU General Public License version 2.1
|
18
|
+
#
|
19
|
+
# This program is free software; you can redistribute it and/or modify
|
20
|
+
# it under the terms of the GNU General Public License version 2.1
|
21
|
+
# as published by the Free Software Foundation.
|
22
|
+
#
|
23
|
+
# This program is distributed in the hope that it will be useful,
|
24
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
25
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
26
|
+
# GNU General Public License for more details.
|
27
|
+
#
|
28
|
+
# You should have received a copy of the GNU General Public License along
|
29
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
30
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
data/Rakefile
CHANGED
@@ -1,23 +1,60 @@
|
|
1
1
|
require 'rubygems'
|
2
|
-
require '
|
2
|
+
require 'rake'
|
3
3
|
|
4
|
-
|
5
|
-
|
4
|
+
begin
|
5
|
+
require 'jeweler'
|
6
|
+
Jeweler::Tasks.new do |gem|
|
7
|
+
gem.name = "iclassify-interface"
|
8
|
+
gem.summary = %Q{TODO}
|
9
|
+
gem.email = "andrew@andrewloe.com"
|
10
|
+
gem.homepage = "http://github.com/loe/iclassify-interface"
|
11
|
+
gem.authors = ["W. Andrew Loe III"]
|
12
|
+
gem.add_dependency("uuidtools", '= 1.0.7')
|
13
|
+
gem.add_dependency("rake", [">= 0.8.3"])
|
14
|
+
gem.add_dependency("launchy")
|
15
|
+
gem.add_dependency("builder")
|
16
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
17
|
+
end
|
6
18
|
|
7
|
-
|
19
|
+
rescue LoadError
|
20
|
+
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
21
|
+
end
|
8
22
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
23
|
+
require 'rake/testtask'
|
24
|
+
Rake::TestTask.new(:test) do |test|
|
25
|
+
test.libs << 'lib' << 'test'
|
26
|
+
test.pattern = 'test/**/*_test.rb'
|
27
|
+
test.verbose = true
|
14
28
|
end
|
15
29
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
30
|
+
begin
|
31
|
+
require 'rcov/rcovtask'
|
32
|
+
Rcov::RcovTask.new do |test|
|
33
|
+
test.libs << 'test'
|
34
|
+
test.pattern = 'test/**/*_test.rb'
|
35
|
+
test.verbose = true
|
36
|
+
end
|
37
|
+
rescue LoadError
|
38
|
+
task :rcov do
|
39
|
+
abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
|
22
40
|
end
|
23
|
-
end
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
task :default => :test
|
45
|
+
|
46
|
+
require 'rake/rdoctask'
|
47
|
+
Rake::RDocTask.new do |rdoc|
|
48
|
+
if File.exist?('VERSION.yml')
|
49
|
+
config = YAML.load(File.read('VERSION.yml'))
|
50
|
+
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
|
51
|
+
else
|
52
|
+
version = ""
|
53
|
+
end
|
54
|
+
|
55
|
+
rdoc.rdoc_dir = 'rdoc'
|
56
|
+
rdoc.title = "icagent2 #{version}"
|
57
|
+
rdoc.rdoc_files.include('README*')
|
58
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
59
|
+
end
|
60
|
+
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.0.1
|
data/bin/icagent
ADDED
@@ -0,0 +1,93 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# iClassify - A node classification service.
|
4
|
+
# Copyright (C) 2007 HJK Solutions and Adam Jacob (<adam@hjksolutions.com>)
|
5
|
+
#
|
6
|
+
# This program is free software; you can redistribute it and/or modify
|
7
|
+
# it under the terms of the GNU General Public License as published by
|
8
|
+
# the Free Software Foundation; either version 2 of the License, or
|
9
|
+
# (at your option) any later version.
|
10
|
+
#
|
11
|
+
# This program is distributed in the hope that it will be useful,
|
12
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
# GNU General Public License for more details.
|
15
|
+
#
|
16
|
+
# You should have received a copy of the GNU General Public License along
|
17
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
18
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
19
|
+
#
|
20
|
+
# icagent registers a node with iclassify, and lets you use small DSL for
|
21
|
+
# classifiying them.
|
22
|
+
|
23
|
+
require 'rubygems'
|
24
|
+
require File.dirname(__FILE__) + '/../lib/iclassify'
|
25
|
+
require 'optparse'
|
26
|
+
|
27
|
+
config = {
|
28
|
+
:uuidfile => File.dirname(__FILE__) + '/../icagent.uuid',
|
29
|
+
:server => 'https://ops.onehub.com'
|
30
|
+
}
|
31
|
+
opts = OptionParser.new do |opts|
|
32
|
+
opts.banner = "Usage: #{$0} [-d DIR|-r FILE] (options)"
|
33
|
+
opts.on("-d DIRECTORY", "--directory DIRECTORY", "Path to icagent recipes") do |d|
|
34
|
+
config[:directory] = d
|
35
|
+
end
|
36
|
+
opts.on("-r RECIPE", "--recipe RECIPE", "Path to a single icagent recipe") do |r|
|
37
|
+
config[:recipe] = r
|
38
|
+
end
|
39
|
+
opts.on("-u UUIDFILE", "--uuidfile UUIDFILE", "Path to the uuid file") do |u|
|
40
|
+
config[:uuidfile] = u
|
41
|
+
end
|
42
|
+
opts.on("-s SERVER", "--server", "iClassify Server URL") do |s|
|
43
|
+
config[:server] = s
|
44
|
+
end
|
45
|
+
opts.on("-n", "--no-action", "Don't update anything, just print.") do |n|
|
46
|
+
config[:dryrun] = true
|
47
|
+
end
|
48
|
+
opts.on("-w WAIT", "--wait TIME", "Wait for up to TIME seconds.") do |w|
|
49
|
+
config[:wait] = w.to_i
|
50
|
+
end
|
51
|
+
opts.on_tail("-h", "--help", "Show this message") do
|
52
|
+
puts opts
|
53
|
+
exit
|
54
|
+
end
|
55
|
+
end
|
56
|
+
opts.parse!(ARGV)
|
57
|
+
|
58
|
+
unless config.has_key?(:recipe) || config.has_key?(:directory)
|
59
|
+
puts "You must specify either a recipe (-r) or a directory (-d)"
|
60
|
+
puts opts
|
61
|
+
exit
|
62
|
+
end
|
63
|
+
|
64
|
+
if config.has_key?(:wait)
|
65
|
+
splay = rand(config[:wait])
|
66
|
+
sleep(splay)
|
67
|
+
end
|
68
|
+
|
69
|
+
agent = IClassify::Agent.new(config[:uuidfile], config[:server])
|
70
|
+
begin
|
71
|
+
agent.load
|
72
|
+
rescue SocketError
|
73
|
+
$stderr.puts("Error: Cannot connect to server.")
|
74
|
+
exit 1
|
75
|
+
end
|
76
|
+
|
77
|
+
if config.has_key?(:recipe)
|
78
|
+
agent.run_script(File.expand_path(config[:recipe]))
|
79
|
+
end
|
80
|
+
|
81
|
+
if config.has_key?(:directory)
|
82
|
+
Dir.glob(File.join(File.expand_path(config[:directory]), '*.rb')).sort.each do |file|
|
83
|
+
if File.file?(file)
|
84
|
+
agent.run_script(file)
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
if config.has_key?(:dryrun) && config[:dryrun]
|
90
|
+
puts agent.to_s
|
91
|
+
else
|
92
|
+
agent.update
|
93
|
+
end
|
data/bin/icsearch
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# iClassify - A node classification service.
|
4
|
+
# Copyright (C) 2007 HJK Solutions and Adam Jacob (<adam@hjksolutions.com>)
|
5
|
+
#
|
6
|
+
# This program is free software; you can redistribute it and/or modify
|
7
|
+
# it under the terms of the GNU General Public License as published by
|
8
|
+
# the Free Software Foundation; either version 2 of the License, or
|
9
|
+
# (at your option) any later version.
|
10
|
+
#
|
11
|
+
# This program is distributed in the hope that it will be useful,
|
12
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
# GNU General Public License for more details.
|
15
|
+
#
|
16
|
+
# You should have received a copy of the GNU General Public License along
|
17
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
18
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
19
|
+
#
|
20
|
+
# A very simple search utility for iclassify.
|
21
|
+
#
|
22
|
+
|
23
|
+
require 'rubygems'
|
24
|
+
require File.dirname(__FILE__) + '/../lib/iclassify'
|
25
|
+
require 'optparse'
|
26
|
+
require 'highline/import'
|
27
|
+
|
28
|
+
config = {
|
29
|
+
:server => 'https://iclassify',
|
30
|
+
:user => ENV.has_key?('USER') ? ENV['USER'] : 'puppet',
|
31
|
+
:passwd => 'readyANDwilling',
|
32
|
+
:only => nil,
|
33
|
+
:quiet => nil
|
34
|
+
}
|
35
|
+
opts = OptionParser.new do |opts|
|
36
|
+
opts.banner = "Usage: #{$0} (options) query"
|
37
|
+
opts.on("-a one,two,three", "--attrib one,two,three", Array, "Attributes to print") do |a|
|
38
|
+
config[:attribs] = a
|
39
|
+
end
|
40
|
+
opts.on("-t", "--tags", "Print tags or not, if attribs specified") do |t|
|
41
|
+
config[:tags] = t
|
42
|
+
end
|
43
|
+
opts.on("-u user", "--user user", "User to authenticate with, defaults to USER env variable") do |u|
|
44
|
+
config[:user] = u
|
45
|
+
end
|
46
|
+
opts.on("-p passwd", "--passwd passwd", "Password to authenticate with") do |p|
|
47
|
+
config[:passwd] = p
|
48
|
+
end
|
49
|
+
opts.on("-s server", "--server server", "iClassify Server URL") do |s|
|
50
|
+
config[:server] = s
|
51
|
+
end
|
52
|
+
opts.on("-o", "--only", "Print only the attributes specified on the command line") do |o|
|
53
|
+
config[:only] = o
|
54
|
+
end
|
55
|
+
opts.on("-q", "--quiet", "Do not print the header") do |q|
|
56
|
+
config[:quiet] = q
|
57
|
+
end
|
58
|
+
opts.on_tail("-h", "--help", "Show this message") do
|
59
|
+
puts opts
|
60
|
+
exit
|
61
|
+
end
|
62
|
+
end
|
63
|
+
args = ARGV
|
64
|
+
opts.parse!(args)
|
65
|
+
|
66
|
+
if args.length != 1
|
67
|
+
puts "You must specify a single query."
|
68
|
+
puts opts.help
|
69
|
+
exit 1
|
70
|
+
end
|
71
|
+
|
72
|
+
unless config[:passwd]
|
73
|
+
config[:passwd] = HighLine.ask("Password: ") { |q| q.echo = "*" }
|
74
|
+
end
|
75
|
+
|
76
|
+
unless config[:user] && config[:passwd]
|
77
|
+
puts "You must provide a username and password."
|
78
|
+
puts opts.help
|
79
|
+
exit 1
|
80
|
+
end
|
81
|
+
|
82
|
+
query = args[0]
|
83
|
+
|
84
|
+
client = IClassify::Client.new(config[:server], config[:user], config[:passwd])
|
85
|
+
begin
|
86
|
+
results = client.search(query, config[:attribs] ? config[:attribs] : [])
|
87
|
+
rescue SocketError
|
88
|
+
$stderr.puts("Error: Could not connect to server.")
|
89
|
+
exit 1
|
90
|
+
end
|
91
|
+
|
92
|
+
if config.has_key?(:attribs)
|
93
|
+
header = "# "
|
94
|
+
if config[:only]
|
95
|
+
header += "#{config[:attribs].join(',')}"
|
96
|
+
else
|
97
|
+
header += "description,uuid,#{config[:attribs].join(',')}"
|
98
|
+
end
|
99
|
+
header << ",tags" if config.has_key?(:tags)
|
100
|
+
puts header unless config[:quiet]
|
101
|
+
results.each do |node|
|
102
|
+
line = Array.new
|
103
|
+
line << "#{node.description}" unless config[:only]
|
104
|
+
line << "#{node.uuid}" unless config[:only]
|
105
|
+
config[:attribs].each do |attrib|
|
106
|
+
na = node.attribs.detect { |a| a[:name] == attrib }
|
107
|
+
if na
|
108
|
+
line << "#{na[:values].join(':')}"
|
109
|
+
else
|
110
|
+
line << ""
|
111
|
+
end
|
112
|
+
end
|
113
|
+
line << "\"#{node.tags.join(' ')}\"" if config.has_key?(:tags)
|
114
|
+
puts line.join(",")
|
115
|
+
end
|
116
|
+
else
|
117
|
+
results.each do |node|
|
118
|
+
puts "#\n# Node #{node.uuid}\n#"
|
119
|
+
puts node.to_s
|
120
|
+
end
|
121
|
+
end
|
data/bin/icwatcher
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# iClassify - A node classification service.
|
4
|
+
# Copyright (C) 2007 HJK Solutions and Adam Jacob (<adam@hjksolutions.com>)
|
5
|
+
#
|
6
|
+
# This program is free software; you can redistribute it and/or modify
|
7
|
+
# it under the terms of the GNU General Public License as published by
|
8
|
+
# the Free Software Foundation; either version 2 of the License, or
|
9
|
+
# (at your option) any later version.
|
10
|
+
#
|
11
|
+
# This program is distributed in the hope that it will be useful,
|
12
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
# GNU General Public License for more details.
|
15
|
+
#
|
16
|
+
# You should have received a copy of the GNU General Public License along
|
17
|
+
# with this program; if not, write to the Free Software Foundation, Inc.,
|
18
|
+
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
19
|
+
#
|
20
|
+
# Runs a command if the node has changed in iClassify
|
21
|
+
#
|
22
|
+
|
23
|
+
require 'rubygems'
|
24
|
+
require File.dirname(__FILE__) + '/../lib/iclassify'
|
25
|
+
require 'optparse'
|
26
|
+
require 'tempfile'
|
27
|
+
require 'open3'
|
28
|
+
|
29
|
+
config = {
|
30
|
+
:server => 'https://ops.onehub.com',
|
31
|
+
:uuidfile => File.dirname(__FILE__) + '/../icagent.uuid',
|
32
|
+
:tmpfile => File.join(Dir::tmpdir, "icwatcher.digest"),
|
33
|
+
}
|
34
|
+
verbose = false
|
35
|
+
|
36
|
+
args = ARGV
|
37
|
+
opts = OptionParser.new do |opts|
|
38
|
+
opts.banner = "Usage: #{$0} [-s server] -c command"
|
39
|
+
opts.on("-s SERVER", "--server", "iClassify Server URL") do |s|
|
40
|
+
config[:server] = s
|
41
|
+
end
|
42
|
+
opts.on("-u UUIDFILE", "--uuidfile UUIDFILE", "Path to the uuid file") do |u|
|
43
|
+
config[:uuidfile] = u
|
44
|
+
end
|
45
|
+
opts.on("-c COMMAND", "--command", "Command to run on changes") do |c|
|
46
|
+
config[:command] = c
|
47
|
+
end
|
48
|
+
opts.on("-t TMPFILE", "--tmpfile", "Where to store the digest between runs") do |t|
|
49
|
+
config[:tmpfile] = t
|
50
|
+
end
|
51
|
+
opts.on("-v", "--verbose", "Print the output of command") do
|
52
|
+
verbose = true
|
53
|
+
end
|
54
|
+
opts.on_tail("-h", "--help", "Show this message") do
|
55
|
+
puts opts
|
56
|
+
exit
|
57
|
+
end
|
58
|
+
end
|
59
|
+
opts.parse!(args)
|
60
|
+
|
61
|
+
unless config.has_key?(:command)
|
62
|
+
puts "You must supply a command!"
|
63
|
+
puts opts.help
|
64
|
+
exit 1
|
65
|
+
end
|
66
|
+
|
67
|
+
hostname = args[0]
|
68
|
+
|
69
|
+
agent = IClassify::Agent.new(config[:uuidfile], config[:server])
|
70
|
+
agent.load
|
71
|
+
digest = agent.node.digest
|
72
|
+
|
73
|
+
if FileTest.file?(config[:tmpfile])
|
74
|
+
last_digest = File.readlines(config[:tmpfile])
|
75
|
+
last_digest[0].chomp!
|
76
|
+
if digest == last_digest[0]
|
77
|
+
puts "Node has not changed." if verbose
|
78
|
+
exit 0
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
output = `#{config[:command]} 2>&1`
|
83
|
+
raise "#{config[:command]} failed: #{output}" unless $?.success?
|
84
|
+
|
85
|
+
if verbose
|
86
|
+
puts "Command: #{config[:command]}"
|
87
|
+
puts "---- OUTPUT ----"
|
88
|
+
puts output
|
89
|
+
end
|
90
|
+
|
91
|
+
File.open(config[:tmpfile], "w") do |tmp|
|
92
|
+
tmp.puts digest
|
93
|
+
end
|
94
|
+
|
95
|
+
exit 0
|
data/iclassify-interface.gemspec
CHANGED
@@ -1,33 +1,63 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
1
3
|
Gem::Specification.new do |s|
|
2
4
|
s.name = %q{iclassify-interface}
|
3
|
-
s.version = "1.0.
|
5
|
+
s.version = "1.0.1"
|
4
6
|
|
5
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
6
8
|
s.authors = ["W. Andrew Loe III"]
|
7
|
-
s.date = %q{
|
8
|
-
s.
|
9
|
-
s.
|
10
|
-
s.extra_rdoc_files = [
|
11
|
-
|
12
|
-
|
9
|
+
s.date = %q{2009-07-22}
|
10
|
+
s.email = %q{andrew@andrewloe.com}
|
11
|
+
s.executables = ["icagent", "icsearch", "icwatcher"]
|
12
|
+
s.extra_rdoc_files = [
|
13
|
+
"README"
|
14
|
+
]
|
15
|
+
s.files = [
|
16
|
+
".gitignore",
|
17
|
+
"Manifest.txt",
|
18
|
+
"README",
|
19
|
+
"Rakefile",
|
20
|
+
"VERSION",
|
21
|
+
"bin/icagent",
|
22
|
+
"bin/icsearch",
|
23
|
+
"bin/icwatcher",
|
24
|
+
"iclassify-interface.gemspec",
|
25
|
+
"lib/.DS_Store",
|
26
|
+
"lib/iclassify-interface.rb",
|
27
|
+
"lib/iclassify-interface/agent.rb",
|
28
|
+
"lib/iclassify-interface/client.rb",
|
29
|
+
"lib/iclassify-interface/node.rb",
|
30
|
+
"lib/iclassify-interface/version.rb",
|
31
|
+
"test/test_iclassify-interface.rb"
|
32
|
+
]
|
13
33
|
s.homepage = %q{http://github.com/loe/iclassify-interface}
|
14
|
-
s.rdoc_options = ["--
|
34
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
15
35
|
s.require_paths = ["lib"]
|
16
|
-
s.
|
17
|
-
s.
|
18
|
-
s.
|
19
|
-
|
36
|
+
s.rubygems_version = %q{1.3.4}
|
37
|
+
s.summary = %q{TODO}
|
38
|
+
s.test_files = [
|
39
|
+
"test/test_iclassify-interface.rb"
|
40
|
+
]
|
20
41
|
|
21
42
|
if s.respond_to? :specification_version then
|
22
43
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
23
|
-
s.specification_version =
|
44
|
+
s.specification_version = 3
|
24
45
|
|
25
|
-
if
|
26
|
-
s.
|
46
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
47
|
+
s.add_runtime_dependency(%q<uuidtools>, ["= 1.0.7"])
|
48
|
+
s.add_runtime_dependency(%q<rake>, [">= 0.8.3"])
|
49
|
+
s.add_runtime_dependency(%q<launchy>, [">= 0"])
|
50
|
+
s.add_runtime_dependency(%q<builder>, [">= 0"])
|
27
51
|
else
|
28
|
-
s.add_dependency(%q<
|
52
|
+
s.add_dependency(%q<uuidtools>, ["= 1.0.7"])
|
53
|
+
s.add_dependency(%q<rake>, [">= 0.8.3"])
|
54
|
+
s.add_dependency(%q<launchy>, [">= 0"])
|
55
|
+
s.add_dependency(%q<builder>, [">= 0"])
|
29
56
|
end
|
30
57
|
else
|
31
|
-
s.add_dependency(%q<
|
58
|
+
s.add_dependency(%q<uuidtools>, ["= 1.0.7"])
|
59
|
+
s.add_dependency(%q<rake>, [">= 0.8.3"])
|
60
|
+
s.add_dependency(%q<launchy>, [">= 0"])
|
61
|
+
s.add_dependency(%q<builder>, [">= 0"])
|
32
62
|
end
|
33
63
|
end
|
data/lib/.DS_Store
ADDED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: loe-iclassify-interface
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- W. Andrew Loe III
|
@@ -9,46 +9,81 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date:
|
12
|
+
date: 2009-07-22 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
-
name:
|
16
|
+
name: uuidtools
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - "="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 1.0.7
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: rake
|
27
|
+
type: :runtime
|
17
28
|
version_requirement:
|
18
29
|
version_requirements: !ruby/object:Gem::Requirement
|
19
30
|
requirements:
|
20
31
|
- - ">="
|
21
32
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
33
|
+
version: 0.8.3
|
23
34
|
version:
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: launchy
|
37
|
+
type: :runtime
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: "0"
|
44
|
+
version:
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: builder
|
47
|
+
type: :runtime
|
48
|
+
version_requirement:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: "0"
|
54
|
+
version:
|
55
|
+
description:
|
56
|
+
email: andrew@andrewloe.com
|
57
|
+
executables:
|
58
|
+
- icagent
|
59
|
+
- icsearch
|
60
|
+
- icwatcher
|
28
61
|
extensions: []
|
29
62
|
|
30
63
|
extra_rdoc_files:
|
31
|
-
-
|
32
|
-
- Manifest.txt
|
33
|
-
- README.txt
|
64
|
+
- README
|
34
65
|
files:
|
35
|
-
-
|
66
|
+
- .gitignore
|
36
67
|
- Manifest.txt
|
37
|
-
- README
|
68
|
+
- README
|
38
69
|
- Rakefile
|
70
|
+
- VERSION
|
71
|
+
- bin/icagent
|
72
|
+
- bin/icsearch
|
73
|
+
- bin/icwatcher
|
39
74
|
- iclassify-interface.gemspec
|
75
|
+
- lib/.DS_Store
|
40
76
|
- lib/iclassify-interface.rb
|
41
77
|
- lib/iclassify-interface/agent.rb
|
42
78
|
- lib/iclassify-interface/client.rb
|
43
79
|
- lib/iclassify-interface/node.rb
|
44
80
|
- lib/iclassify-interface/version.rb
|
45
81
|
- test/test_iclassify-interface.rb
|
46
|
-
has_rdoc:
|
82
|
+
has_rdoc: false
|
47
83
|
homepage: http://github.com/loe/iclassify-interface
|
48
84
|
post_install_message:
|
49
85
|
rdoc_options:
|
50
|
-
- --
|
51
|
-
- README.txt
|
86
|
+
- --charset=UTF-8
|
52
87
|
require_paths:
|
53
88
|
- lib
|
54
89
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -65,10 +100,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
65
100
|
version:
|
66
101
|
requirements: []
|
67
102
|
|
68
|
-
rubyforge_project:
|
103
|
+
rubyforge_project:
|
69
104
|
rubygems_version: 1.2.0
|
70
105
|
signing_key:
|
71
|
-
specification_version:
|
72
|
-
summary:
|
106
|
+
specification_version: 3
|
107
|
+
summary: TODO
|
73
108
|
test_files:
|
74
109
|
- test/test_iclassify-interface.rb
|
data/History.txt
DELETED
data/README.txt
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
= iclassify-interface
|
2
|
-
|
3
|
-
http://github.com/loe/iclassify-interface
|
4
|
-
|
5
|
-
== DESCRIPTION:
|
6
|
-
|
7
|
-
Module for interfacing with iclassify.
|
8
|
-
|
9
|
-
== INSTALL:
|
10
|
-
|
11
|
-
sudo gem install loe-iclassify-interface
|
12
|
-
|
13
|
-
== LICENSE:
|
14
|
-
|
15
|
-
(The MIT License)
|
16
|
-
|
17
|
-
Copyright (c) 2008 FIX
|
18
|
-
|
19
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
20
|
-
a copy of this software and associated documentation files (the
|
21
|
-
'Software'), to deal in the Software without restriction, including
|
22
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
23
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
24
|
-
permit persons to whom the Software is furnished to do so, subject to
|
25
|
-
the following conditions:
|
26
|
-
|
27
|
-
The above copyright notice and this permission notice shall be
|
28
|
-
included in all copies or substantial portions of the Software.
|
29
|
-
|
30
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
31
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
32
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
33
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
34
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
35
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
36
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|