-
Notifications
You must be signed in to change notification settings - Fork 1
Home
newgem and hoe work great for open source projects. newgem and hoe rightfully add lots of features that make the development and deployment of open-source projects easy. If you are writing an Open Source project you may be better off picking one of those two (or something else).
RStack is intended to be used for internal, closed-source projects. With the growing popularity of Ruby more companies are using it for internal development for projects that cannot be open sourced. RStack was started to meet the needs of one such company.
There are a couple of other differences. One being it strictly uses RSpec rather than test/unit or offering a choice between the two. The second difference is RStack automatically works with CruiseControl.rb. It does that by adding a cruise_config.rb
configuration and by including a cruise
task.
If you have ideas for future features feel free to add them to the Future Features section below.
rstack ninjas
jrun ~/tmp $ rstack ninjas
creating ninjas/lib/ninjas
creating ninjas/spec/shared
creating ninjas/spec
creating ninjas/bin
creating ninjas/lib
creating ninjas/lib
moving Rakefile to ninjas/Rakefile
moving README.txt to ninjas/README.txt
moving cruise_config.rb to ninjas/cruise_config.rb
moving main.rb to ninjas/lib/ninjas.rb
moving version.rb to ninjas/lib/ninjas/version.rb
moving spec_helper.rb to ninjas/spec/spec_helper.rb
require 'rubygems'
require 'rstack'
require File.join(File.dirname(__FILE__), 'lib', 'ninjas', 'version')
RStack::Configuration.new 'ninjas' do |config|
config.summary = '[ENTER A SUMMARY]'
config.author = 'jrun'
config.email = '[ENTER YOUR EMAIL]'
config.url = '[ENTER A PROJECT URL]'
config.version = Ninjas::Version::STRING
end
Available Tasks
jrun ~/tmp/ninjas $ rake -T
(in /Users/jrun/tmp/ninjas)
rake clobber_package # Remove package products
rake clobber_spec:with_coverage # Remove rcov products for spec:with_coverage
rake gem # Build the gem file ninjas-0.1.0.gem
rake package # Build all the packages
rake repackage # Force a rebuild of the package files
rake spec # Run specs
rake spec:with_coverage # Run specs through RCov and generate HTML...
jrun ~/tmp/ninjas $ rake -T
(in /Users/jrun/tmp/ninjas)
rake clobber_package # Remove package products
rake clobber_spec:with_coverage # Remove rcov products for spec:with_coverage
rake gem # Build the gem file ninjas-0.1.0.gem
rake package # Build all the packages
rake repackage # Force a rebuild of the package files
rake spec # Run specs
rake spec:with_coverage # Run specs through RCov and generate HTML...
The next thing that will probably be added is build reporting, specially for Continuous Integration. That probably means extending Rake (while being as uninvasive as possible) to report task execution times and collect build artifacts. The end goal is to produce a YAML report detailing the build. The YAML report could then be used to do post-build processing.
This feature helps solve a particular use case while leaving room for additional use cases. The specific use case is a scenario where the build is run on one server while reporting is done on another. The YAML report is used after the build to write data to the appropriate place, in this case another server using web services.
Use an alternative template for RDoc. It seems the two common alternatives to the default are jaxdoc or Allison.