arborist 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/History.md +11 -0
- data/README.md +7 -1
- data/Rakefile +6 -111
- data/lib/arborist.rb +2 -2
- data/lib/arborist/cli.rb +24 -0
- data/lib/arborist/client.rb +10 -10
- data/lib/arborist/command/config.rb +2 -0
- data/lib/arborist/command/run_once.rb +2 -1
- data/lib/arborist/mixins.rb +1 -1
- data/lib/arborist/monitor_runner.rb +1 -1
- data/lib/arborist/node.rb +1 -0
- data/lib/arborist/node/host.rb +2 -2
- data/lib/arborist/node/service.rb +1 -1
- data/lib/arborist/observer.rb +4 -4
- data/lib/arborist/observer_runner.rb +2 -1
- data/spec/arborist/client_spec.rb +1 -1
- data/spec/arborist/monitor_runner_spec.rb +2 -2
- metadata +52 -85
- metadata.gz.sig +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 90ea26c2dfc80ceb5292b6999eb601c16ed3931c3a17606231bba831ff1cf211
|
4
|
+
data.tar.gz: d743f218280f06579d695955eb49cdae647960f5e4da8757422aee6a57621210
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 811c253b0ea8b0704fcb3ec419e42539aed7684f6cffbd25a8cdfefe2017e48ecb84bc435ef525fcfe7ae83bc440cba19ee153ce890435c98ea9189da2de3533
|
7
|
+
data.tar.gz: cc3a0b5f81d95577045dd898cd19b9939ea6254e2f88eaaf2e52f7a2ade739df5b326689bc66f7e310695a3664798d40eb5d2ad21387566f16e39273e2531a74
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/History.md
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
# Release History for arborist
|
2
|
+
|
3
|
+
---
|
4
|
+
|
5
|
+
## v0.6.0 [2020-04-28] Michael Granger <ged@faeriemud.org>
|
6
|
+
|
7
|
+
- Minor changes for Ruby > 2.6 compatibility.
|
8
|
+
- Ignore interrupt signals in the reactor.
|
9
|
+
- Add some more feedback to run_once output.
|
10
|
+
|
11
|
+
|
1
12
|
## v0.5.0 [2019-03-06] Michael Granger <ged@FaerieMUD.org>
|
2
13
|
|
3
14
|
Enhancements:
|
data/README.md
CHANGED
@@ -36,7 +36,7 @@ it like so:
|
|
36
36
|
## Contributing
|
37
37
|
|
38
38
|
You can check out the current development source with Mercurial via its
|
39
|
-
[project page](http://bitbucket.org/ged/Arborist). Or if you prefer Git, via
|
39
|
+
[project page](http://bitbucket.org/ged/Arborist). Or if you prefer Git, via
|
40
40
|
[its Github mirror](https://github.com/ged/arborist).
|
41
41
|
|
42
42
|
After checking out the source, run:
|
@@ -47,6 +47,12 @@ This task will install any missing dependencies, run the tests/specs,
|
|
47
47
|
and generate the API documentation.
|
48
48
|
|
49
49
|
|
50
|
+
## Authors
|
51
|
+
|
52
|
+
- Michael Granger <ged@faeriemud.org>
|
53
|
+
- Mahlon E. Smith <mahlon@martini.nu>
|
54
|
+
|
55
|
+
|
50
56
|
## License
|
51
57
|
|
52
58
|
Copyright (c) 2015-2018, Michael Granger and Mahlon E. Smith
|
data/Rakefile
CHANGED
@@ -1,118 +1,14 @@
|
|
1
|
-
#!/usr/bin/env rake
|
1
|
+
#!/usr/bin/env ruby -S rake
|
2
2
|
|
3
|
-
require '
|
4
|
-
require 'rake/clean'
|
3
|
+
require 'rake/deveiate'
|
5
4
|
|
6
|
-
|
7
|
-
require 'hoe'
|
8
|
-
rescue LoadError
|
9
|
-
abort "This Rakefile requires hoe (gem install hoe)"
|
10
|
-
end
|
11
|
-
|
12
|
-
GEMSPEC = 'arborist.gemspec'
|
13
|
-
|
14
|
-
BASEDIR = Pathname( __FILE__ ).dirname
|
15
|
-
LIBDIR = BASEDIR + 'lib'
|
16
|
-
NODE_STATE_GRAPH = BASEDIR + 'node-state-machine.dot'
|
17
|
-
|
18
|
-
|
19
|
-
Hoe.plugin :mercurial
|
20
|
-
Hoe.plugin :signing
|
21
|
-
Hoe.plugin :deveiate
|
22
|
-
|
23
|
-
Hoe.plugins.delete :rubyforge
|
24
|
-
|
25
|
-
|
26
|
-
hoespec = Hoe.spec 'arborist' do |spec|
|
27
|
-
spec.readme_file = 'README.md'
|
28
|
-
spec.history_file = 'History.md'
|
29
|
-
spec.extra_rdoc_files = FileList[ '*.rdoc', '*.md' ]
|
30
|
-
spec.license 'BSD-3-Clause'
|
31
|
-
spec.urls = {
|
32
|
-
home: 'http://deveiate.org/projects/arborist',
|
33
|
-
code: 'http://bitbucket.org/ged/arborist',
|
34
|
-
docs: 'http://deveiate.org/code/arborist',
|
35
|
-
github: 'http://github.com/ged/arborist',
|
36
|
-
}
|
37
|
-
|
38
|
-
spec.developer 'Michael Granger', 'ged@FaerieMUD.org'
|
39
|
-
spec.developer 'Mahlon E. Smith', 'mahlon@martini.nu'
|
40
|
-
|
41
|
-
spec.dependency 'schedulability', '~> 0.4'
|
42
|
-
spec.dependency 'loggability', '~> 0.12'
|
43
|
-
spec.dependency 'configurability', '~> 3.0'
|
44
|
-
spec.dependency 'pluggability', '~> 0.4'
|
45
|
-
spec.dependency 'state_machines', '~> 0.5'
|
46
|
-
spec.dependency 'msgpack', '~> 1.0'
|
47
|
-
spec.dependency 'cztop', '~> 0.11'
|
48
|
-
spec.dependency 'cztop-reactor', '~> 0.3'
|
49
|
-
spec.dependency 'gli', '~> 2.3'
|
50
|
-
spec.dependency 'tty', '~> 0.7'
|
51
|
-
spec.dependency 'tty-tree', '~> 0.1'
|
52
|
-
spec.dependency 'pry', '~> 0.11'
|
53
|
-
|
54
|
-
spec.dependency 'rspec', '~> 3.2', :developer
|
55
|
-
spec.dependency 'rspec-wait', '~> 0.0', :developer
|
56
|
-
spec.dependency 'simplecov', '~> 0.9', :developer
|
57
|
-
spec.dependency 'timecop', '~> 0.7', :developer
|
58
|
-
spec.dependency 'rdoc', '~> 5.1', :developer
|
59
|
-
spec.dependency 'state_machines-graphviz', '~> 0.0', :developer
|
60
|
-
|
61
|
-
spec.require_ruby_version( '>=2.3.1' )
|
62
|
-
spec.hg_sign_tags = true if spec.respond_to?( :hg_sign_tags= )
|
63
|
-
|
64
|
-
spec.rdoc_locations << "deveiate:/usr/local/www/public/code/#{remote_rdoc_dir}"
|
65
|
-
end
|
5
|
+
NODE_STATE_GRAPH = Rake::DevEiate::PROJECT_DIR + 'node-state-machine.dot'
|
66
6
|
|
67
7
|
|
68
|
-
|
69
|
-
|
70
|
-
# Run the tests before checking in
|
71
|
-
task 'hg:precheckin' => [ :check_history, :check_manifest, :gemspec, :spec ]
|
72
|
-
|
73
|
-
# Rebuild the ChangeLog immediately before release
|
74
|
-
task :prerelease => 'ChangeLog'
|
75
|
-
CLOBBER.include( 'ChangeLog' )
|
76
|
-
|
77
|
-
desc "Build a coverage report"
|
78
|
-
task :coverage do
|
79
|
-
ENV["COVERAGE"] = 'yes'
|
80
|
-
Rake::Task[:spec].invoke
|
81
|
-
end
|
82
|
-
|
83
|
-
|
84
|
-
# Use the fivefish formatter for docs generated from development checkout
|
85
|
-
if File.directory?( '.hg' )
|
86
|
-
require 'rdoc/task'
|
87
|
-
|
88
|
-
Rake::Task[ 'docs' ].clear
|
89
|
-
RDoc::Task.new( 'docs' ) do |rdoc|
|
90
|
-
rdoc.main = "README.md"
|
91
|
-
rdoc.rdoc_files.include( "*.rdoc", "*.md", "ChangeLog", "lib/**/*.rb" )
|
92
|
-
rdoc.generator = :fivefish
|
93
|
-
rdoc.title = 'Arborist'
|
94
|
-
rdoc.rdoc_dir = 'doc'
|
95
|
-
end
|
8
|
+
Rake::DevEiate.setup( 'arborist' ) do |project|
|
9
|
+
project.publish_to = 'deveiate:/usr/local/www/public/code'
|
96
10
|
end
|
97
11
|
|
98
|
-
file 'Manifest.txt'
|
99
|
-
|
100
|
-
task :gemspec => [ 'ChangeLog', __FILE__, 'Manifest.txt', GEMSPEC ]
|
101
|
-
file GEMSPEC => __FILE__ do |task|
|
102
|
-
spec = $hoespec.spec
|
103
|
-
spec.files.delete( '.gemtest' )
|
104
|
-
spec.files.delete( 'LICENSE' )
|
105
|
-
spec.signing_key = nil
|
106
|
-
spec.version = "#{spec.version.bump}.0.pre#{Time.now.strftime("%Y%m%d%H%M%S")}"
|
107
|
-
#spec.cert_chain = [ 'certs/ged.pem' ]
|
108
|
-
File.open( task.name, 'w' ) do |fh|
|
109
|
-
fh.write( spec.to_ruby )
|
110
|
-
end
|
111
|
-
end
|
112
|
-
CLOBBER.include( GEMSPEC )
|
113
|
-
|
114
|
-
task :default => :gemspec
|
115
|
-
|
116
12
|
|
117
13
|
file NODE_STATE_GRAPH
|
118
14
|
|
@@ -130,9 +26,8 @@ task NODE_STATE_GRAPH do |task|
|
|
130
26
|
graph = state_machine.draw( path: BASEDIR.to_s, name: name, format: 'dot' )
|
131
27
|
# graph.output
|
132
28
|
end
|
29
|
+
task :diagrams => [ NODE_STATE_GRAPH ]
|
133
30
|
|
134
31
|
CLEAN.include( NODE_STATE_GRAPH.to_s )
|
135
32
|
|
136
33
|
|
137
|
-
task :diagrams => [ NODE_STATE_GRAPH ]
|
138
|
-
|
data/lib/arborist.rb
CHANGED
@@ -14,7 +14,7 @@ module Arborist
|
|
14
14
|
Configurability
|
15
15
|
|
16
16
|
# Package version
|
17
|
-
VERSION = '0.
|
17
|
+
VERSION = '0.6.0'
|
18
18
|
|
19
19
|
# Version control revision
|
20
20
|
REVISION = %q$Revision$
|
@@ -88,7 +88,7 @@ module Arborist
|
|
88
88
|
### Add a constructor function to the Arborist namespace called +name+
|
89
89
|
### with the specified +method_body+.
|
90
90
|
def self::add_dsl_constructor( subclass, &method_body )
|
91
|
-
name = subclass.name
|
91
|
+
name = subclass.name.dup
|
92
92
|
|
93
93
|
if name
|
94
94
|
name.sub!( /.*::/, '' )
|
data/lib/arborist/cli.rb
CHANGED
@@ -259,6 +259,30 @@ module Arborist::CLI
|
|
259
259
|
end
|
260
260
|
|
261
261
|
|
262
|
+
# Use this if the following command should not have the pre block executed.
|
263
|
+
# By default, the pre block is executed before each command and can result in
|
264
|
+
# aborting the call. Using this will avoid that behavior for the following command
|
265
|
+
def skips_pre
|
266
|
+
@skips_pre = true
|
267
|
+
end
|
268
|
+
|
269
|
+
|
270
|
+
# Use this if the following command should not have the post block executed.
|
271
|
+
# By default, the post block is executed after each command.
|
272
|
+
# Using this will avoid that behavior for the following command
|
273
|
+
def skips_post
|
274
|
+
@skips_post = true
|
275
|
+
end
|
276
|
+
|
277
|
+
|
278
|
+
# Use this if the following command should not have the around block executed.
|
279
|
+
# By default, the around block is executed, but for commands that might not want the
|
280
|
+
# setup to happen, this can be handy
|
281
|
+
def skips_around
|
282
|
+
@skips_around = true
|
283
|
+
end
|
284
|
+
|
285
|
+
|
262
286
|
###############
|
263
287
|
module_function
|
264
288
|
###############
|
data/lib/arborist/client.rb
CHANGED
@@ -200,8 +200,8 @@ class Arborist::Client
|
|
200
200
|
|
201
201
|
|
202
202
|
### Remove a node
|
203
|
-
def prune(
|
204
|
-
request = self.make_prune_request(
|
203
|
+
def prune( **args )
|
204
|
+
request = self.make_prune_request( **args )
|
205
205
|
response = self.send_tree_api_request( request )
|
206
206
|
return response
|
207
207
|
end
|
@@ -217,8 +217,8 @@ class Arborist::Client
|
|
217
217
|
|
218
218
|
|
219
219
|
### Add a new node to the tree.
|
220
|
-
def graft(
|
221
|
-
request = self.make_graft_request(
|
220
|
+
def graft( **args )
|
221
|
+
request = self.make_graft_request( **args )
|
222
222
|
response = self.send_tree_api_request( request )
|
223
223
|
return response
|
224
224
|
end
|
@@ -240,8 +240,8 @@ class Arborist::Client
|
|
240
240
|
|
241
241
|
|
242
242
|
### Modify operational attributes of a node.
|
243
|
-
def modify(
|
244
|
-
request = self.make_modify_request(
|
243
|
+
def modify( **args )
|
244
|
+
request = self.make_modify_request( **args )
|
245
245
|
self.send_tree_api_request( request )
|
246
246
|
return true
|
247
247
|
end
|
@@ -261,8 +261,8 @@ class Arborist::Client
|
|
261
261
|
### +identifier+, an acknowledgement +message+, and +sender+. You
|
262
262
|
### can optionally include a +via+ (source), and override the default
|
263
263
|
### +time+ of now.
|
264
|
-
def acknowledge(
|
265
|
-
request = self.make_acknowledge_request(
|
264
|
+
def acknowledge( **args )
|
265
|
+
request = self.make_acknowledge_request( **args )
|
266
266
|
self.send_tree_api_request( request )
|
267
267
|
return true
|
268
268
|
end
|
@@ -284,8 +284,8 @@ class Arborist::Client
|
|
284
284
|
|
285
285
|
|
286
286
|
### Clear the acknowledgement for a node.
|
287
|
-
def clear_acknowledgement(
|
288
|
-
request = self.make_unack_request(
|
287
|
+
def clear_acknowledgement( **args )
|
288
|
+
request = self.make_unack_request( **args )
|
289
289
|
self.send_tree_api_request( request )
|
290
290
|
return true
|
291
291
|
end
|
@@ -42,8 +42,9 @@ module Arborist::CLI::RunOnce
|
|
42
42
|
properties: monitor.node_properties
|
43
43
|
)
|
44
44
|
|
45
|
-
desc = "
|
45
|
+
desc = "Running %p against %d nodes" % [ monitor.description, nodes.length ]
|
46
46
|
unless_dryrun( desc ) do
|
47
|
+
prompt.say( hl.headline(desc) )
|
47
48
|
prompt.say( highlight_string(monitor.description) )
|
48
49
|
results = monitor.run( nodes )
|
49
50
|
display_results( results )
|
data/lib/arborist/mixins.rb
CHANGED
@@ -87,7 +87,7 @@ class Arborist::MonitorRunner
|
|
87
87
|
|
88
88
|
self.with_signal_handler( self.reactor, *QUEUE_SIGS ) do
|
89
89
|
self.reactor.register( self.client.tree_api, :write, &self.method(:handle_io_event) )
|
90
|
-
self.reactor.start_polling
|
90
|
+
self.reactor.start_polling( ignore_interrupts: true )
|
91
91
|
end
|
92
92
|
end
|
93
93
|
|
data/lib/arborist/node.rb
CHANGED
@@ -1201,6 +1201,7 @@ class Arborist::Node
|
|
1201
1201
|
@status_last_changed = Time.parse( hash[:status_last_changed] )
|
1202
1202
|
@status_history = hash[:status_history]
|
1203
1203
|
@flapping = hash[:flapping]
|
1204
|
+
@status_history_size = nil
|
1204
1205
|
@ack = Arborist::Node::Ack.from_hash( hash[:ack] ) if hash[:ack]
|
1205
1206
|
|
1206
1207
|
@errors = hash[:errors]
|
data/lib/arborist/node/host.rb
CHANGED
@@ -92,7 +92,7 @@ class Arborist::Node::Host < Arborist::Node
|
|
92
92
|
def address( new_address )
|
93
93
|
self.log.debug "Adding address %p to %p" % [ new_address, self ]
|
94
94
|
|
95
|
-
if new_address =~ /^[[:alnum:]][a-z0-9\-]+/i && ! @hostname
|
95
|
+
if new_address.to_s =~ /^[[:alnum:]][a-z0-9\-]+/i && ! @hostname
|
96
96
|
@hostname = new_address
|
97
97
|
end
|
98
98
|
|
@@ -126,7 +126,7 @@ class Arborist::Node::Host < Arborist::Node
|
|
126
126
|
#
|
127
127
|
|
128
128
|
### Return a Hash of the host node's state.
|
129
|
-
def to_h(
|
129
|
+
def to_h( ** )
|
130
130
|
return super.merge(
|
131
131
|
hostname: @hostname,
|
132
132
|
addresses: self.addresses.map(&:to_s)
|
data/lib/arborist/observer.rb
CHANGED
@@ -114,14 +114,14 @@ class Arborist::Observer
|
|
114
114
|
|
115
115
|
|
116
116
|
### Register an action that will be taken when a subscribed event is received.
|
117
|
-
def action( options
|
118
|
-
@actions << Arborist::Observer::Action.new( options, &block )
|
117
|
+
def action( **options, &block )
|
118
|
+
@actions << Arborist::Observer::Action.new( **options, &block )
|
119
119
|
end
|
120
120
|
|
121
121
|
|
122
122
|
### Register a summary action.
|
123
|
-
def summarize( options
|
124
|
-
@actions << Arborist::Observer::Summarize.new( options, &block )
|
123
|
+
def summarize( **options, &block )
|
124
|
+
@actions << Arborist::Observer::Summarize.new( **options, &block )
|
125
125
|
end
|
126
126
|
|
127
127
|
|
@@ -170,7 +170,8 @@ class Arborist::ObserverRunner
|
|
170
170
|
def add_observer( observer )
|
171
171
|
self.log.info "Adding observer: %s" % [ observer.description ]
|
172
172
|
observer.subscriptions.each do |sub|
|
173
|
-
|
173
|
+
self.log.debug "HI: %p" % [ sub ]
|
174
|
+
subid = self.client.subscribe( **sub )
|
174
175
|
self.subscriptions[ subid ] = observer
|
175
176
|
self.client.event_api.subscribe( subid )
|
176
177
|
self.log.debug " subscribed to %p with subscription %s" % [ sub, subid ]
|
@@ -390,7 +390,7 @@ describe Arborist::Client do
|
|
390
390
|
it "acking raises an appropriate error when it's missing arguments" do
|
391
391
|
expect {
|
392
392
|
client.acknowledge( identifier: 'sidonie', message: "I'm on it." )
|
393
|
-
}.to raise_error( ArgumentError, /missing keyword: sender/ )
|
393
|
+
}.to raise_error( ArgumentError, /missing keyword: :?sender/ )
|
394
394
|
end
|
395
395
|
end
|
396
396
|
|
@@ -55,7 +55,7 @@ describe Arborist::MonitorRunner do
|
|
55
55
|
runner.monitors.replace([ mon1 ])
|
56
56
|
|
57
57
|
expect( reactor ).to receive( :add_periodic_timer ).with( mon1.interval )
|
58
|
-
expect( reactor ).to receive( :start_polling )
|
58
|
+
expect( reactor ).to receive( :start_polling ).with( ignore_interrupts: true )
|
59
59
|
|
60
60
|
runner.run
|
61
61
|
end
|
@@ -67,7 +67,7 @@ describe Arborist::MonitorRunner do
|
|
67
67
|
expect( reactor ).to receive( :add_oneshot_timer ).
|
68
68
|
with( a_value_between(0, mon2.splay) ).and_yield
|
69
69
|
expect( reactor ).to receive( :add_periodic_timer ).with( mon2.interval )
|
70
|
-
expect( reactor ).to receive( :start_polling )
|
70
|
+
expect( reactor ).to receive( :start_polling ).with( ignore_interrupts: true )
|
71
71
|
|
72
72
|
runner.run
|
73
73
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arborist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Granger
|
@@ -12,8 +12,8 @@ cert_chain:
|
|
12
12
|
- |
|
13
13
|
-----BEGIN CERTIFICATE-----
|
14
14
|
MIIENDCCApygAwIBAgIBATANBgkqhkiG9w0BAQsFADAiMSAwHgYDVQQDDBdtYWhs
|
15
|
-
|
16
|
-
|
15
|
+
b24vREM9bWFydGluaS9EQz1udTAeFw0yMDAyMTkyMTU4NDBaFw0yMTAyMTgyMTU4
|
16
|
+
NDBaMCIxIDAeBgNVBAMMF21haGxvbi9EQz1tYXJ0aW5pL0RDPW51MIIBojANBgkq
|
17
17
|
hkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA3cz7ILM8n+Y5nvz7mVRVqE8LusWdT8NX
|
18
18
|
nlnETynDndenI+a2S3j22DR+U4ooGUjuCHE3iR1CVmTDGbxFfNRfmnC1AN9Hybat
|
19
19
|
ewW+onvMBye7yfO0bJB5vkqaW5vd35rzquOffgBtJMo7rPRu6pX8RkL34Wnew4J7
|
@@ -25,17 +25,17 @@ cert_chain:
|
|
25
25
|
RiCamNbET4Sq9VIYwYtcB1f6EataqFEhAgMBAAGjdTBzMAkGA1UdEwQCMAAwCwYD
|
26
26
|
VR0PBAQDAgSwMB0GA1UdDgQWBBR8KtAhZIhe2uPQHCgU5HurIG7crTAcBgNVHREE
|
27
27
|
FTATgRFtYWhsb25AbWFydGluaS5udTAcBgNVHRIEFTATgRFtYWhsb25AbWFydGlu
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
aS5udTANBgkqhkiG9w0BAQsFAAOCAYEAHXlLXIKQUjd0VYj2mPgMheMjLEtmhHu+
|
29
|
+
7NdIv8Bz4rpKAdhypy30xjukGLTOKBp1C0TjfHXowW/icK0bv9CO9Chbc09/+Ed2
|
30
|
+
K5IsyENen+YLeLfE8dguq5tHlfocbFilRGHt8BHHO9BpPpAYoPt/76SCC2NaU5vN
|
31
|
+
33YTCpaVP0raS6E4i+xtx5PNdKoeTdrgwCQtUBhGf3L9YbZy1UaSeAyng5keuOzV
|
32
|
+
Mu2osihEB0GE0pOZJNpI6ow+0emwN/XvBKHpN9D2bjbvKetyQSrm0OniaZBXIGzW
|
33
|
+
Bg0JmajxUaGYWnz+QFADT+HLPmekxF3mB4+0ymZCHKPC+04h6RDjvkEOji6Jm+VB
|
34
|
+
JHjnceUEejSXTkZAKAmiOAtnX4j1MM1DLiFMlZ5Wbt7hbiOiO5HoN9p9snZhYqSU
|
35
|
+
JyAQQloqY/KyzQqxPlKdMNmBxRU+Cdarp05lEI6Sfj9MdrndoIL6MT/f6PgoCWZQ
|
36
|
+
xEarK1Fn47yS4UZqRi6VgKc3JHscX9x4
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date:
|
38
|
+
date: 2020-04-28 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: schedulability
|
@@ -57,28 +57,28 @@ dependencies:
|
|
57
57
|
requirements:
|
58
58
|
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: '0.
|
60
|
+
version: '0.15'
|
61
61
|
type: :runtime
|
62
62
|
prerelease: false
|
63
63
|
version_requirements: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: '0.
|
67
|
+
version: '0.15'
|
68
68
|
- !ruby/object:Gem::Dependency
|
69
69
|
name: configurability
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
74
|
+
version: '4.0'
|
75
75
|
type: :runtime
|
76
76
|
prerelease: false
|
77
77
|
version_requirements: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
81
|
+
version: '4.0'
|
82
82
|
- !ruby/object:Gem::Dependency
|
83
83
|
name: pluggability
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,103 +164,103 @@ dependencies:
|
|
164
164
|
- !ruby/object:Gem::Version
|
165
165
|
version: '2.3'
|
166
166
|
- !ruby/object:Gem::Dependency
|
167
|
-
name: tty
|
167
|
+
name: tty-prompt
|
168
168
|
requirement: !ruby/object:Gem::Requirement
|
169
169
|
requirements:
|
170
170
|
- - "~>"
|
171
171
|
- !ruby/object:Gem::Version
|
172
|
-
version: '0.
|
172
|
+
version: '0.18'
|
173
173
|
type: :runtime
|
174
174
|
prerelease: false
|
175
175
|
version_requirements: !ruby/object:Gem::Requirement
|
176
176
|
requirements:
|
177
177
|
- - "~>"
|
178
178
|
- !ruby/object:Gem::Version
|
179
|
-
version: '0.
|
179
|
+
version: '0.18'
|
180
180
|
- !ruby/object:Gem::Dependency
|
181
|
-
name: tty-
|
181
|
+
name: tty-spinner
|
182
182
|
requirement: !ruby/object:Gem::Requirement
|
183
183
|
requirements:
|
184
184
|
- - "~>"
|
185
185
|
- !ruby/object:Gem::Version
|
186
|
-
version: '0.
|
186
|
+
version: '0.9'
|
187
187
|
type: :runtime
|
188
188
|
prerelease: false
|
189
189
|
version_requirements: !ruby/object:Gem::Requirement
|
190
190
|
requirements:
|
191
191
|
- - "~>"
|
192
192
|
- !ruby/object:Gem::Version
|
193
|
-
version: '0.
|
193
|
+
version: '0.9'
|
194
194
|
- !ruby/object:Gem::Dependency
|
195
|
-
name:
|
195
|
+
name: tty-table
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
197
197
|
requirements:
|
198
198
|
- - "~>"
|
199
199
|
- !ruby/object:Gem::Version
|
200
|
-
version: '0.
|
200
|
+
version: '0.10'
|
201
201
|
type: :runtime
|
202
202
|
prerelease: false
|
203
203
|
version_requirements: !ruby/object:Gem::Requirement
|
204
204
|
requirements:
|
205
205
|
- - "~>"
|
206
206
|
- !ruby/object:Gem::Version
|
207
|
-
version: '0.
|
207
|
+
version: '0.10'
|
208
208
|
- !ruby/object:Gem::Dependency
|
209
|
-
name:
|
209
|
+
name: tty-tree
|
210
210
|
requirement: !ruby/object:Gem::Requirement
|
211
211
|
requirements:
|
212
212
|
- - "~>"
|
213
213
|
- !ruby/object:Gem::Version
|
214
|
-
version: '
|
215
|
-
type: :
|
214
|
+
version: '0.2'
|
215
|
+
type: :runtime
|
216
216
|
prerelease: false
|
217
217
|
version_requirements: !ruby/object:Gem::Requirement
|
218
218
|
requirements:
|
219
219
|
- - "~>"
|
220
220
|
- !ruby/object:Gem::Version
|
221
|
-
version: '
|
221
|
+
version: '0.2'
|
222
222
|
- !ruby/object:Gem::Dependency
|
223
|
-
name:
|
223
|
+
name: pry
|
224
224
|
requirement: !ruby/object:Gem::Requirement
|
225
225
|
requirements:
|
226
226
|
- - "~>"
|
227
227
|
- !ruby/object:Gem::Version
|
228
|
-
version: '0.
|
229
|
-
type: :
|
228
|
+
version: '0.11'
|
229
|
+
type: :runtime
|
230
230
|
prerelease: false
|
231
231
|
version_requirements: !ruby/object:Gem::Requirement
|
232
232
|
requirements:
|
233
233
|
- - "~>"
|
234
234
|
- !ruby/object:Gem::Version
|
235
|
-
version: '0.
|
235
|
+
version: '0.11'
|
236
236
|
- !ruby/object:Gem::Dependency
|
237
|
-
name:
|
237
|
+
name: rake-deveiate
|
238
238
|
requirement: !ruby/object:Gem::Requirement
|
239
239
|
requirements:
|
240
240
|
- - "~>"
|
241
241
|
- !ruby/object:Gem::Version
|
242
|
-
version: '0.
|
242
|
+
version: '0.9'
|
243
243
|
type: :development
|
244
244
|
prerelease: false
|
245
245
|
version_requirements: !ruby/object:Gem::Requirement
|
246
246
|
requirements:
|
247
247
|
- - "~>"
|
248
248
|
- !ruby/object:Gem::Version
|
249
|
-
version: '0.
|
249
|
+
version: '0.9'
|
250
250
|
- !ruby/object:Gem::Dependency
|
251
251
|
name: rspec
|
252
252
|
requirement: !ruby/object:Gem::Requirement
|
253
253
|
requirements:
|
254
254
|
- - "~>"
|
255
255
|
- !ruby/object:Gem::Version
|
256
|
-
version: '3.
|
256
|
+
version: '3.8'
|
257
257
|
type: :development
|
258
258
|
prerelease: false
|
259
259
|
version_requirements: !ruby/object:Gem::Requirement
|
260
260
|
requirements:
|
261
261
|
- - "~>"
|
262
262
|
- !ruby/object:Gem::Version
|
263
|
-
version: '3.
|
263
|
+
version: '3.8'
|
264
264
|
- !ruby/object:Gem::Dependency
|
265
265
|
name: rspec-wait
|
266
266
|
requirement: !ruby/object:Gem::Requirement
|
@@ -303,20 +303,6 @@ dependencies:
|
|
303
303
|
- - "~>"
|
304
304
|
- !ruby/object:Gem::Version
|
305
305
|
version: '0.7'
|
306
|
-
- !ruby/object:Gem::Dependency
|
307
|
-
name: rdoc
|
308
|
-
requirement: !ruby/object:Gem::Requirement
|
309
|
-
requirements:
|
310
|
-
- - "~>"
|
311
|
-
- !ruby/object:Gem::Version
|
312
|
-
version: '5.1'
|
313
|
-
type: :development
|
314
|
-
prerelease: false
|
315
|
-
version_requirements: !ruby/object:Gem::Requirement
|
316
|
-
requirements:
|
317
|
-
- - "~>"
|
318
|
-
- !ruby/object:Gem::Version
|
319
|
-
version: '5.1'
|
320
306
|
- !ruby/object:Gem::Dependency
|
321
307
|
name: state_machines-graphviz
|
322
308
|
requirement: !ruby/object:Gem::Requirement
|
@@ -331,35 +317,15 @@ dependencies:
|
|
331
317
|
- - "~>"
|
332
318
|
- !ruby/object:Gem::Version
|
333
319
|
version: '0.0'
|
334
|
-
|
335
|
-
|
336
|
-
requirement: !ruby/object:Gem::Requirement
|
337
|
-
requirements:
|
338
|
-
- - "~>"
|
339
|
-
- !ruby/object:Gem::Version
|
340
|
-
version: '3.17'
|
341
|
-
type: :development
|
342
|
-
prerelease: false
|
343
|
-
version_requirements: !ruby/object:Gem::Requirement
|
344
|
-
requirements:
|
345
|
-
- - "~>"
|
346
|
-
- !ruby/object:Gem::Version
|
347
|
-
version: '3.17'
|
348
|
-
description: |-
|
349
|
-
Arborist is a monitoring toolkit that follows the UNIX philosophy
|
350
|
-
of small parts and loose coupling for stability, reliability, and
|
351
|
-
customizability.
|
320
|
+
description: Arborist is a monitoring toolkit that follows the UNIX philosophy of
|
321
|
+
small parts and loose coupling for stability, reliability, and customizability.
|
352
322
|
email:
|
353
|
-
- ged@
|
323
|
+
- ged@faeriemud.org
|
354
324
|
- mahlon@martini.nu
|
355
325
|
executables:
|
356
326
|
- arborist
|
357
327
|
extensions: []
|
358
|
-
extra_rdoc_files:
|
359
|
-
- History.md
|
360
|
-
- Manifest.txt
|
361
|
-
- README.md
|
362
|
-
- TODO.md
|
328
|
+
extra_rdoc_files: []
|
363
329
|
files:
|
364
330
|
- ".document"
|
365
331
|
- ".simplecov"
|
@@ -456,29 +422,30 @@ files:
|
|
456
422
|
- spec/data/observers/auditor.rb
|
457
423
|
- spec/data/observers/webservices.rb
|
458
424
|
- spec/spec_helper.rb
|
459
|
-
homepage: http://deveiate.org/projects/
|
425
|
+
homepage: http://deveiate.org/projects/Arborist
|
460
426
|
licenses:
|
461
427
|
- BSD-3-Clause
|
462
|
-
metadata:
|
428
|
+
metadata:
|
429
|
+
homepage_uri: http://deveiate.org/projects/Arborist
|
430
|
+
documentation_uri: http://deveiate.org/code/arborist
|
431
|
+
changelog_uri: http://deveiate.org/code/arborist/History_md.html
|
432
|
+
source_uri: http://bitbucket.org/ged/Arborist
|
463
433
|
post_install_message:
|
464
|
-
rdoc_options:
|
465
|
-
- "--main"
|
466
|
-
- README.md
|
434
|
+
rdoc_options: []
|
467
435
|
require_paths:
|
468
436
|
- lib
|
469
437
|
required_ruby_version: !ruby/object:Gem::Requirement
|
470
438
|
requirements:
|
471
439
|
- - ">="
|
472
440
|
- !ruby/object:Gem::Version
|
473
|
-
version:
|
441
|
+
version: '0'
|
474
442
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
475
443
|
requirements:
|
476
444
|
- - ">="
|
477
445
|
- !ruby/object:Gem::Version
|
478
446
|
version: '0'
|
479
447
|
requirements: []
|
480
|
-
|
481
|
-
rubygems_version: 2.7.8
|
448
|
+
rubygems_version: 3.1.2
|
482
449
|
signing_key:
|
483
450
|
specification_version: 4
|
484
451
|
summary: Arborist is a monitoring toolkit that follows the UNIX philosophy of small
|
metadata.gz.sig
CHANGED
@@ -1,2 +1,3 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
�>�;a���kʔ��Xj��
|
2
|
+
TS��z
|
3
|
+
�T�Gd9+K��L=!Œ�E�N�d~"�"5ܤ؏�nH$]p����Ȅ���"X|�Z:�DV�ML}��o��owG����|�>�
|