-
Notifications
You must be signed in to change notification settings - Fork 0
/
Rakefile
executable file
·51 lines (39 loc) · 1.42 KB
/
Rakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/bin/env rake
$:.unshift File.expand_path('..', __FILE__)
require 'tasks/all'
desc 'Clean up temporary files'
task :clean => 'all:clean'
desc 'Build gem files for all projects into the package directory'
task :build => 'all:build'
desc 'Build and install gems for all projects'
task :install => 'all:install'
desc 'Write version with MAJOR, MINOR, PATCH, and PRE environment variables'
task 'version:write' => 'all:version:write'
desc 'Display the current version for all projects'
task :version => 'all:version'
desc 'Increment the major version for all projects'
task 'version:bump:major' => 'all:version:bump:major'
desc 'Increment the minor version for all projects'
task 'version:bump:minor' => 'all:version:bump:minor'
desc 'Increment the patch version for all projects'
task 'version:bump:patch' => 'all:version:bump:patch'
desc 'Run specs for all projects'
task :spec => 'all:spec'
task :test => :spec
task :default => :test
desc 'Generate docs for all projects'
task 'doc:yard' => 'all:doc:yard'
task :tag do
sh "git tag -a -m \"Version #{version}\" v#{version}"
sh "git push"
sh "git push --tags"
end
task :push => 'all:push'
desc 'Build, tag, and push gems for all projects to Rubygems'
task :release => [:build, :tag, :push]
namespace :doc do
require 'yard'
YARD::Rake::YardocTask.new do |task|
task.files = PROJECTS.map{|project| "#{root}/#{project}/lib/**/*.rb"} + ['README.markdown', 'LICENSE']
end
end