Rakefile in arborist-0.2.0.pre20170519125456 vs Rakefile in arborist-0.2.0
- old
+ new
@@ -1,18 +1,23 @@
#!/usr/bin/env rake
+require 'pathname'
require 'rake/clean'
begin
require 'hoe'
rescue LoadError
abort "This Rakefile requires hoe (gem install hoe)"
end
GEMSPEC = 'arborist.gemspec'
+BASEDIR = Pathname( __FILE__ ).dirname
+LIBDIR = BASEDIR + 'lib'
+NODE_STATE_GRAPH = BASEDIR + 'node-state-machine.dot'
+
Hoe.plugin :mercurial
Hoe.plugin :signing
Hoe.plugin :deveiate
Hoe.plugins.delete :rubyforge
@@ -35,21 +40,26 @@
spec.dependency 'schedulability', '~> 0.1'
spec.dependency 'loggability', '~> 0.12'
spec.dependency 'configurability', '~> 3.0'
spec.dependency 'pluggability', '~> 0.4'
- spec.dependency 'state_machines', '~> 0.2'
+ spec.dependency 'state_machines', '~> 0.5'
spec.dependency 'msgpack', '~> 1.0'
spec.dependency 'cztop', '~> 0.11'
spec.dependency 'cztop-reactor', '~> 0.3'
spec.dependency 'gli', '~> 2.3'
- spec.dependency 'highline', '~> 1.7'
+ spec.dependency 'tty', '~> 0.7'
+ spec.dependency 'tty-tree', '~> 0.1'
+ spec.dependency 'pry', '~> 0.11'
spec.dependency 'rspec', '~> 3.2', :developer
spec.dependency 'rspec-wait', '~> 0.0', :developer
spec.dependency 'simplecov', '~> 0.9', :developer
spec.dependency 'timecop', '~> 0.7', :developer
+ spec.dependency 'rdoc', '~> 5.1', :developer
+ spec.dependency 'rdoc', '~> 5.1', :developer
+ spec.dependency 'state_machines-graphviz', '~> 0.0', :developer
spec.require_ruby_version( '>=2.3.1' )
spec.hg_sign_tags = true if spec.respond_to?( :hg_sign_tags= )
spec.rdoc_locations << "deveiate:/usr/local/www/public/code/#{remote_rdoc_dir}"
@@ -84,21 +94,46 @@
rdoc.title = 'Arborist'
rdoc.rdoc_dir = 'doc'
end
end
-task :gemspec => [ 'ChangeLog', __FILE__, GEMSPEC ]
+file 'Manifest.txt'
+
+task :gemspec => [ 'ChangeLog', __FILE__, 'Manifest.txt', GEMSPEC ]
file GEMSPEC => __FILE__ do |task|
spec = $hoespec.spec
spec.files.delete( '.gemtest' )
spec.files.delete( 'LICENSE' )
spec.signing_key = nil
spec.version = "#{spec.version.bump}.0.pre#{Time.now.strftime("%Y%m%d%H%M%S")}"
- spec.cert_chain = [ 'certs/ged.pem' ]
+ #spec.cert_chain = [ 'certs/ged.pem' ]
File.open( task.name, 'w' ) do |fh|
fh.write( spec.to_ruby )
end
end
CLOBBER.include( GEMSPEC )
task :default => :gemspec
+
+
+file NODE_STATE_GRAPH
+
+desc "Generate a graph of the node status state machine."
+task NODE_STATE_GRAPH do |task|
+ $LOAD_PATH.unshift( LIBDIR.to_s )
+
+ require 'state_machines'
+ require 'state_machines/graphviz'
+ require 'arborist/node'
+
+ state_machine = Arborist::Node.state_machine
+ name = File.basename( NODE_STATE_GRAPH, '.dot' )
+ puts "Writing status state machine diagram to #{NODE_STATE_GRAPH}"
+ graph = state_machine.draw( path: BASEDIR.to_s, name: name, format: 'dot' )
+ # graph.output
+end
+
+CLEAN.include( NODE_STATE_GRAPH.to_s )
+
+
+task :diagrams => [ NODE_STATE_GRAPH ]