diff options
Diffstat (limited to 'lib/tasks')
-rw-r--r-- | lib/tasks/gems.rake | 40 | ||||
-rw-r--r-- | lib/tasks/task_helper.rb | 19 |
2 files changed, 59 insertions, 0 deletions
diff --git a/lib/tasks/gems.rake b/lib/tasks/gems.rake new file mode 100644 index 0000000..27eb04c --- /dev/null +++ b/lib/tasks/gems.rake @@ -0,0 +1,40 @@ +require File.expand_path('../task_helper', __FILE__) +include TaskHelper + + +namespace :gem do + + desc "run rake gem for all gems" + task :build => :clear do + each_gem do |gem_name| + putsys "cd #{gem_name} && bundle exec rake gem" + end + putsys "bundle exec rake gem" + end + + desc "run rake gem for all gems" + task :clear do + each_gem do |gem_name| + putsys "rm -rf #{gem_name}/pkg" + end + putsys "rm -rf pkg" + end + + desc "run gem install for all gems" + task :install => :build do + + each_gem do |gem_name| + putsys "cd #{gem_name}/pkg && gem install leap_web_#{gem_name}-#{LeapWeb::VERSION}.gem" + end + putsys "gem install pkg/leap_web-#{LeapWeb::VERSION}.gem" + end + + desc "Release all gems to gemcutter. Package leap web components, then push" + task :release do + + each_gem do |gem_name| + putsys "cd #{gem_name}/pkg && gem push leap_web_#{gem_name}-#{LeapWeb::VERSION}.gem" + end + putsys "gem push pkg/leap_web-#{LeapWeb::VERSION}.gem" + end +end diff --git a/lib/tasks/task_helper.rb b/lib/tasks/task_helper.rb new file mode 100644 index 0000000..aa37698 --- /dev/null +++ b/lib/tasks/task_helper.rb @@ -0,0 +1,19 @@ +require File.expand_path('../../../lib/leap_web/version', __FILE__) + +module TaskHelper + + ENGINES = %w(core users certs help) + + def putsys(cmd) + puts cmd + system cmd + end + + def each_gem + ENGINES.each do |gem_name| + puts "########################### #{gem_name} #########################" + yield gem_name + end + end +end + |