buildar 1.4.0.15 → 2.0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/MANIFEST.txt +0 -1
- data/README.md +13 -14
- data/VERSION +1 -1
- data/lib/buildar.rb +168 -91
- data/rakefile.rb +6 -12
- metadata +7 -12
- data/lib/buildar/tasks.rb +0 -141
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
YmIzNmVkZGIzNmE5NTRjYmQwNDkzNzIyMzExZjE3YzlhM2M5OTAxYg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZjdiZTg1ZDhkMjg2NmM3N2NkNzk4MDAyZmFkOTBjODYyZTY3ZDY3Ng==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MGFmMmY3MjVjNWU1MTlmOGEzODBmYjAyYjRjZDFkMzg4OGEyNGFhNWNhYmEx
|
10
|
+
ZmUyMWVmZTdjZWUwOWIzNTBkZjVjNjYzODY2NDZhNDk5NGRhZTA3ZDM0NmVk
|
11
|
+
ZDdiMzJiYzA3MWVjOTYwOTc2Y2ZkNTE2OTM4ZmM5MGU1MmE5NGM=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MmY5MWE4Mjk4Mzg5ZWM1OWE3YWY1Mzg1ODAyMTBjMjY3MTFmODM4ZjJiNWFm
|
14
|
+
NjM2MTNmZDc3ZThmYmU4ZmUyYTA1NTY0NWRhMGMyYTQzYWQ2NTFjYjdiMGY5
|
15
|
+
YjUwOTQxYjI4Mjc3ZGJhYTFiNGIyYThkM2NhOTIyMGI4ODI0Yzc=
|
data/MANIFEST.txt
CHANGED
data/README.md
CHANGED
@@ -10,19 +10,18 @@ With a set of options to integrate with your current project.
|
|
10
10
|
Rake tasks
|
11
11
|
----------
|
12
12
|
Core
|
13
|
-
*
|
14
|
-
*
|
15
|
-
* `
|
16
|
-
*
|
17
|
-
* `
|
18
|
-
*
|
19
|
-
*
|
20
|
-
|
21
|
-
|
22
|
-
*
|
23
|
-
|
24
|
-
|
25
|
-
* `tag` - `test` git tag according to current version, pushed to origin
|
13
|
+
* `release` - `build` `publish` `tag`
|
14
|
+
* `build` - `pre_build` gem build a pkg/.gem
|
15
|
+
* `gem_package` - `pre_build` Gem::PackageTask builds a pkg/.gem
|
16
|
+
* `install` - `built` install built .gem
|
17
|
+
* `install_new` - `build` install built .gem
|
18
|
+
* `version` - show the current project version
|
19
|
+
* `buildar` - config check
|
20
|
+
* `message` - capture a message from ENV['message'] or prompt STDIN
|
21
|
+
* `pre_build` - invoke `test` and `bump_build` conditionally
|
22
|
+
* `built` - `build`
|
23
|
+
* `publish` - `built` gem push
|
24
|
+
* `tag` - `message` git tag according to current version, pushed to origin
|
26
25
|
|
27
26
|
With version file integration
|
28
27
|
* `bump_build` - increment the 4th version number (1.2.3.4 -> 1.2.3.5)
|
@@ -35,7 +34,7 @@ With version file integration
|
|
35
34
|
|
36
35
|
Tasks which depend on optional functionality will not fail if the option is disabled. They are effectively skipped.
|
37
36
|
|
38
|
-
[Just show me the
|
37
|
+
[Just show me the tasks](https://github.com/rickhull/buildar/blob/master/lib/buildar.rb#L73)
|
39
38
|
|
40
39
|
Install
|
41
40
|
-------
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
2.0.0.4
|
data/lib/buildar.rb
CHANGED
@@ -1,40 +1,13 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
# But if we use a class-based singleton, it's namespaced.
|
7
|
-
# And it can't be set to nil, for example.
|
8
|
-
#
|
9
|
-
class Buildar
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/clean'
|
3
|
+
require 'rake/tasklib'
|
4
|
+
|
5
|
+
class Buildar < Rake::TaskLib
|
10
6
|
def self.version
|
11
7
|
file = File.expand_path('../../VERSION', __FILE__)
|
12
8
|
File.read(file).chomp
|
13
9
|
end
|
14
10
|
|
15
|
-
# Call this from the rakefile, like:
|
16
|
-
# Buildar.conf(__FILE__) do |b|
|
17
|
-
# b.name = 'foo'
|
18
|
-
# # ...
|
19
|
-
# end
|
20
|
-
#
|
21
|
-
def self.conf(rakefile = nil)
|
22
|
-
unless defined?(@@instance)
|
23
|
-
root = rakefile ? File.expand_path('..', rakefile) : nil
|
24
|
-
@@instance = Buildar.new root
|
25
|
-
end
|
26
|
-
yield @@instance if block_given?
|
27
|
-
end
|
28
|
-
|
29
|
-
# Confirming singleton.
|
30
|
-
# Only buildar/raketasks should need to call this
|
31
|
-
# Use conf inside project/Rakefile
|
32
|
-
#
|
33
|
-
def self.instance
|
34
|
-
raise "no instance; call Buildar.conf" unless defined?(@@instance)
|
35
|
-
@@instance
|
36
|
-
end
|
37
|
-
|
38
11
|
# e.g. bump(:minor, '1.2.3') #=> '1.3.0'
|
39
12
|
# only works for versions consisting of integers delimited by periods (dots)
|
40
13
|
#
|
@@ -58,85 +31,189 @@ class Buildar
|
|
58
31
|
}.join('.')
|
59
32
|
end
|
60
33
|
|
61
|
-
attr_accessor :
|
62
|
-
:use_git, :publish,
|
63
|
-
:use_gemspec_file, :gemspec_filename,
|
64
|
-
:use_version_file, :version_filename
|
65
|
-
|
66
|
-
attr_writer :gemspec_filename
|
34
|
+
attr_accessor :gemspec_file, :version_file, :use_git, :pkg_dir, :ns
|
67
35
|
|
68
|
-
def initialize
|
69
|
-
@
|
70
|
-
@
|
36
|
+
def initialize
|
37
|
+
@gemspec_file = nil
|
38
|
+
@version_file = nil
|
71
39
|
@use_git = false
|
72
|
-
@
|
73
|
-
@
|
74
|
-
|
75
|
-
|
40
|
+
@pkg_dir = 'pkg'
|
41
|
+
@ns = ''
|
42
|
+
|
43
|
+
if block_given?
|
44
|
+
yield self
|
45
|
+
define
|
46
|
+
end
|
76
47
|
end
|
77
48
|
|
78
49
|
def gemspec
|
79
|
-
@
|
50
|
+
if @gemspec_file
|
51
|
+
Gem::Specification.load @gemspec_file
|
52
|
+
else
|
53
|
+
@gemspec ||= Gem::Specification.new
|
54
|
+
@gemspec.version = self.read_version if @version_file
|
55
|
+
@gemspec
|
56
|
+
end
|
80
57
|
end
|
81
58
|
|
82
|
-
def
|
83
|
-
@
|
84
|
-
@
|
85
|
-
@soft_gemspec.version = self.version if @use_version_file
|
86
|
-
@soft_gemspec
|
59
|
+
def read_version
|
60
|
+
raise "no @version_file" unless @version_file
|
61
|
+
File.read(@version_file).chomp
|
87
62
|
end
|
88
63
|
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
Gem::Specification.load self.gemspec_file
|
64
|
+
def write_version(new_version)
|
65
|
+
raise "no @version_file" unless @version_file
|
66
|
+
File.open(@version_file, 'w') { |f| f.write(new_version) }
|
93
67
|
end
|
94
68
|
|
95
|
-
def
|
96
|
-
File.join(@
|
69
|
+
def gem_file
|
70
|
+
File.join(@pkg_dir, "#{gemspec.name}-#{gemspec.version}.gem")
|
97
71
|
end
|
98
72
|
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
#
|
103
|
-
def gemspec_filename
|
104
|
-
@gemspec_filename ||= "#{@name}.gemspec"
|
105
|
-
@gemspec_filename
|
106
|
-
end
|
73
|
+
def define
|
74
|
+
directory @pkg_dir
|
75
|
+
CLOBBER.include @pkg_dir
|
107
76
|
|
108
|
-
|
109
|
-
|
110
|
-
|
77
|
+
if @ns and !@ns.empty?
|
78
|
+
namespace @ns do
|
79
|
+
define_tasks
|
80
|
+
end
|
81
|
+
else
|
82
|
+
define_tasks
|
83
|
+
end
|
111
84
|
|
112
|
-
|
113
|
-
|
114
|
-
|
85
|
+
#
|
86
|
+
# tasks to be kept out of any optional namespace
|
87
|
+
#
|
88
|
+
|
89
|
+
desc "config check"
|
90
|
+
task :buildar do
|
91
|
+
spacer = " " * 14
|
92
|
+
gemspec = self.gemspec
|
93
|
+
puts
|
94
|
+
puts <<EOF
|
95
|
+
Project: #{gemspec.name} #{gemspec.version}
|
96
|
+
Gemspec file: #{@gemspec_file}
|
97
|
+
Version file: #{@version_file}
|
98
|
+
Use git: #{@use_git}
|
99
|
+
Package dir: #{@pkg_dir}
|
100
|
+
Files: #{gemspec.files.join("\n#{spacer}")}
|
101
|
+
Built gems: #{Dir[@pkg_dir + '/*.gem'].join("\n#{spacer}")}
|
102
|
+
# using Buildar #{Buildar.version}
|
103
|
+
EOF
|
104
|
+
puts
|
105
|
+
end
|
115
106
|
|
116
|
-
|
117
|
-
|
107
|
+
if @version_file
|
108
|
+
# tasks :bump_major, :bump_minor, :bump_patch, :bump_build
|
109
|
+
# commit the version file if @use_git
|
110
|
+
#
|
111
|
+
[:major, :minor, :patch, :build].each { |v|
|
112
|
+
desc "increment the #{v} number in #{@version_file}"
|
113
|
+
namespace :bump do
|
114
|
+
task v do
|
115
|
+
old_version = self.read_version
|
116
|
+
new_version = self.class.bump(v, old_version)
|
117
|
+
|
118
|
+
puts "bumping #{old_version} to #{new_version}"
|
119
|
+
self.write_version new_version
|
120
|
+
|
121
|
+
if @use_git
|
122
|
+
msg = "Buildar version:bump_#{v} to #{new_version}"
|
123
|
+
sh "git commit #{@version_file} -m #{msg.inspect}"
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
}
|
128
|
+
end
|
118
129
|
end
|
119
130
|
|
120
|
-
def
|
121
|
-
|
122
|
-
|
131
|
+
def define_tasks
|
132
|
+
desc "invoke :test and :bump_build conditionally"
|
133
|
+
task :pre_build do
|
134
|
+
Rake::Task[:test].invoke if Rake::Task.task_defined? :test
|
135
|
+
Rake::Task['bump:build'].invoke if @version_file
|
136
|
+
end
|
123
137
|
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
138
|
+
# can't make this a file task, because the version could be bumped
|
139
|
+
# as a dependency, changing the target file
|
140
|
+
#
|
141
|
+
desc "build a .gem in #{@pkg_dir}/ using `gem build`"
|
142
|
+
task :build => :pre_build do
|
143
|
+
if @gemspec_file
|
144
|
+
sh "gem build #{@gemspec_file}"
|
145
|
+
mv File.basename(self.gem_file), self.gem_file
|
146
|
+
else
|
147
|
+
Rake::Task[:gem_package].invoke
|
148
|
+
end
|
149
|
+
end
|
130
150
|
|
131
|
-
|
132
|
-
|
133
|
-
|
151
|
+
# roughly equivalent to `gem build self.gemspec`
|
152
|
+
# operates with a hard or soft gemspec
|
153
|
+
#
|
154
|
+
desc "build a .gem in #{@pkg_dir}/ using Gem::PackageTask"
|
155
|
+
task :gem_package => :pre_build do
|
156
|
+
# definine the task at runtime, rather than requiretime
|
157
|
+
# so that the gemspec will reflect any version bumping since requiretime
|
158
|
+
require 'rubygems/package_task'
|
159
|
+
Gem::PackageTask.new(self.gemspec).define
|
160
|
+
Rake::Task["package"].invoke
|
161
|
+
end
|
134
162
|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
163
|
+
# desc "used internally; make sure we have .gem for the current version"
|
164
|
+
task :built do
|
165
|
+
Rake::Task[:build].invoke unless File.exists? self.gem_file
|
166
|
+
end
|
167
|
+
|
168
|
+
desc "publish the current version to rubygems.org"
|
169
|
+
task :publish => :built do
|
170
|
+
sh "gem push #{self.gem_file}"
|
171
|
+
end
|
172
|
+
|
173
|
+
desc "build, publish" << (@use_git ? ", tag " : '')
|
174
|
+
task :release => [:build, :publish] do
|
175
|
+
Rake::Task[:tag].invoke if @use_git
|
176
|
+
end
|
177
|
+
|
178
|
+
desc "install the current version"
|
179
|
+
task :install => :built do
|
180
|
+
sh "gem install #{self.gem_file}"
|
181
|
+
end
|
182
|
+
|
183
|
+
desc "build a new version and install"
|
184
|
+
task :install_new => [:build, :install]
|
185
|
+
|
186
|
+
#
|
187
|
+
# Optional tasks
|
188
|
+
#
|
189
|
+
|
190
|
+
if @version_file
|
191
|
+
[:major, :minor, :patch].each { |v|
|
192
|
+
namespace :release do
|
193
|
+
desc "increment the #{v} number and release"
|
194
|
+
task v => ["bump:#{v}", :release]
|
195
|
+
end
|
196
|
+
}
|
197
|
+
end
|
198
|
+
|
199
|
+
if @use_git
|
200
|
+
desc "annotated git tag with version and message"
|
201
|
+
task :tag => :message do
|
202
|
+
Rake::Task[:test].invoke if Rake::Task.defined? :test
|
203
|
+
tagname = "v#{self.gemspec.version}"
|
204
|
+
message = ENV['message'] || "auto-tagged #{tagname} by Buildar"
|
205
|
+
sh "git tag -a #{tagname.inspect} -m #{message.inspect}"
|
206
|
+
sh "git push origin --tags"
|
207
|
+
end
|
208
|
+
|
209
|
+
# right now only :tag depends on this, but maybe others in the future?
|
210
|
+
# desc "used internally; make sure ENV['message'] is populated"
|
211
|
+
task :message do
|
212
|
+
if !ENV['message'] or ENV['message'].empty?
|
213
|
+
print "This task requires a message:\n> "
|
214
|
+
ENV['message'] = $stdin.gets.chomp
|
215
|
+
end
|
216
|
+
end
|
217
|
+
end
|
141
218
|
end
|
142
219
|
end
|
data/rakefile.rb
CHANGED
@@ -1,14 +1,8 @@
|
|
1
|
-
require 'buildar
|
2
|
-
require 'rake/testtask'
|
1
|
+
require 'buildar'
|
3
2
|
|
4
|
-
Buildar.
|
5
|
-
b.
|
6
|
-
b.
|
7
|
-
b.
|
8
|
-
b.
|
9
|
-
b.publish[:rubygems] = true
|
10
|
-
end
|
11
|
-
|
12
|
-
Rake::TestTask.new :test do |t|
|
13
|
-
t.pattern = 'test/*.rb'
|
3
|
+
Buildar.new do |b|
|
4
|
+
b.gemspec_file = 'buildar.gemspec'
|
5
|
+
b.version_file = 'VERSION'
|
6
|
+
b.use_git = true
|
7
|
+
# b.ns = 'gem'
|
14
8
|
end
|
metadata
CHANGED
@@ -1,32 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buildar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
5
|
-
prerelease:
|
4
|
+
version: 2.0.0.4
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Rick Hull
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-07-
|
11
|
+
date: 2013-07-11 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rake
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '8'
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
24
20
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
21
|
requirements:
|
27
22
|
- - ! '>='
|
28
23
|
- !ruby/object:Gem::Version
|
29
24
|
version: '8'
|
25
|
+
type: :runtime
|
26
|
+
prerelease: false
|
30
27
|
description: Buildar helps automate the release process with versioning, building,
|
31
28
|
packaging, and publishing. Optional git integration.
|
32
29
|
email:
|
@@ -40,30 +37,28 @@ files:
|
|
40
37
|
- README.md
|
41
38
|
- rakefile.rb
|
42
39
|
- lib/buildar.rb
|
43
|
-
- lib/buildar/tasks.rb
|
44
40
|
homepage: https://github.com/rickhull/buildar
|
45
41
|
licenses:
|
46
42
|
- MIT
|
43
|
+
metadata: {}
|
47
44
|
post_install_message:
|
48
45
|
rdoc_options: []
|
49
46
|
require_paths:
|
50
47
|
- lib
|
51
48
|
required_ruby_version: !ruby/object:Gem::Requirement
|
52
|
-
none: false
|
53
49
|
requirements:
|
54
50
|
- - ! '>='
|
55
51
|
- !ruby/object:Gem::Version
|
56
52
|
version: '0'
|
57
53
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
58
|
-
none: false
|
59
54
|
requirements:
|
60
55
|
- - ! '>='
|
61
56
|
- !ruby/object:Gem::Version
|
62
57
|
version: '0'
|
63
58
|
requirements: []
|
64
59
|
rubyforge_project:
|
65
|
-
rubygems_version:
|
60
|
+
rubygems_version: 2.0.3
|
66
61
|
signing_key:
|
67
|
-
specification_version:
|
62
|
+
specification_version: 4
|
68
63
|
summary: Buildar crept inside your rakefile and scratched upon the tasking post
|
69
64
|
test_files: []
|
data/lib/buildar/tasks.rb
DELETED
@@ -1,141 +0,0 @@
|
|
1
|
-
require 'buildar'
|
2
|
-
|
3
|
-
# shortcut to Buildar's data from the project rakefile
|
4
|
-
#
|
5
|
-
def proj
|
6
|
-
Buildar.instance
|
7
|
-
end
|
8
|
-
|
9
|
-
# the reason you're here
|
10
|
-
#
|
11
|
-
task :release => [:message, :build, :tag, :publish]
|
12
|
-
|
13
|
-
# these are handy
|
14
|
-
#
|
15
|
-
task :release_patch => [:bump_patch, :release]
|
16
|
-
task :release_minor => [:bump_minor, :release]
|
17
|
-
task :release_major => [:bump_major, :release]
|
18
|
-
|
19
|
-
# make sure ENV['message'] is populated
|
20
|
-
#
|
21
|
-
task :message do
|
22
|
-
if !ENV['message'] or ENV['message'].empty?
|
23
|
-
print "This task requires a message:\n> "
|
24
|
-
ENV['message'] = $stdin.gets.chomp
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
# uses Gem::PackageTask to build via Gem API
|
29
|
-
# roughly equivalent to `gem build foo.gemspec`
|
30
|
-
# operates with a hard or soft gemspec
|
31
|
-
#
|
32
|
-
task :gem_package => [:test, :bump_build] do
|
33
|
-
# definine the task at runtime, rather than requiretime
|
34
|
-
# so that the gemspec will reflect any version bumping since requiretime
|
35
|
-
require 'rubygems/package_task'
|
36
|
-
Gem::PackageTask.new(proj.gemspec).define
|
37
|
-
Rake::Task["package"].invoke
|
38
|
-
end
|
39
|
-
|
40
|
-
# if proj.use_gemspec_file
|
41
|
-
# exactly equiavlent to `gem build #{proj.gemspec_filename}`
|
42
|
-
# otherwise fall back to :gem_package
|
43
|
-
#
|
44
|
-
task :build => [:test, :bump_build] do
|
45
|
-
if proj.use_gemspec_file
|
46
|
-
sh "gem build #{proj.gemspec_filename}"
|
47
|
-
target_file = "#{proj.name}-#{proj.available_version}.gem"
|
48
|
-
if File.exists? target_file
|
49
|
-
sh "mv #{target_file} pkg/#{target_file}"
|
50
|
-
else
|
51
|
-
puts "warning: expected #{target_file} but didn't find it"
|
52
|
-
end
|
53
|
-
else
|
54
|
-
Rake::Task[:gem_package].invoke
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
# build, install
|
59
|
-
#
|
60
|
-
task :install => [:build] do
|
61
|
-
sh "gem install #{proj.gemfile}"
|
62
|
-
end
|
63
|
-
|
64
|
-
# if proj.use_version_file
|
65
|
-
# tasks :bump_major, :bump_minor, :bump_patch, :bump_build
|
66
|
-
# commit the version file if proj.use_git
|
67
|
-
#
|
68
|
-
[:major, :minor, :patch, :build].each { |v|
|
69
|
-
task "bump_#{v}" do
|
70
|
-
if proj.use_version_file
|
71
|
-
old_version = proj.version
|
72
|
-
new_version = Buildar.bump(v, old_version)
|
73
|
-
puts "bumping #{old_version} to #{new_version}"
|
74
|
-
proj.write_version new_version
|
75
|
-
if proj.use_git
|
76
|
-
msg = "rake bump_#{v} to #{new_version}"
|
77
|
-
sh "git commit #{proj.version_file} -m '#{msg}'"
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
81
|
-
}
|
82
|
-
|
83
|
-
# if proj.use_git
|
84
|
-
# create annotated git tag based on VERSION and ENV['message'] if available
|
85
|
-
# push tags to origin
|
86
|
-
#
|
87
|
-
task :tag => [:test] do
|
88
|
-
if proj.use_git
|
89
|
-
tagname = "v#{proj.available_version}"
|
90
|
-
message = ENV['message'] || "auto-tagged #{tagname} by Rake"
|
91
|
-
sh %Q{git tag -a "#{tagname}" -m "#{message}"}
|
92
|
-
sh "git push origin --tags"
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
# if proj.publish[:rubygems]
|
97
|
-
# roughly, gem push foo-VERSION.gem
|
98
|
-
#
|
99
|
-
task :publish => [:verify_publish_credentials] do
|
100
|
-
sh "gem push #{proj.gemfile}" if proj.publish[:rubygems]
|
101
|
-
end
|
102
|
-
|
103
|
-
# if proj.publish[:rubygems]
|
104
|
-
# just make sure the ~/.gem/credentials file is readable
|
105
|
-
#
|
106
|
-
task :verify_publish_credentials do
|
107
|
-
if proj.publish[:rubygems]
|
108
|
-
creds = '~/.gem/credentials'
|
109
|
-
fp = File.expand_path(creds)
|
110
|
-
raise "#{creds} does not exist" unless File.exists?(fp)
|
111
|
-
raise "can't read #{creds}" unless File.readable?(fp)
|
112
|
-
end
|
113
|
-
end
|
114
|
-
|
115
|
-
# display project name and version
|
116
|
-
#
|
117
|
-
task :version do
|
118
|
-
puts "#{proj.name} #{proj.available_version}"
|
119
|
-
end
|
120
|
-
|
121
|
-
# if the user wants a bump, make it a patch; not used internally
|
122
|
-
#
|
123
|
-
task :bump => [:bump_patch]
|
124
|
-
|
125
|
-
# config check
|
126
|
-
#
|
127
|
-
task :buildar do
|
128
|
-
puts
|
129
|
-
puts <<EOF
|
130
|
-
Project: #{proj.name} #{proj.version}
|
131
|
-
Root: #{proj.root}
|
132
|
-
Use gemspec file: #{proj.use_gemspec_file}
|
133
|
-
Gemspec source: #{proj.gemspec_location}
|
134
|
-
Use version file: #{proj.use_version_file}
|
135
|
-
Version source: #{proj.version_location}
|
136
|
-
Use git: #{proj.use_git}
|
137
|
-
Publish: #{proj.publish.keys}
|
138
|
-
# using Buildar #{Buildar.version}
|
139
|
-
EOF
|
140
|
-
puts
|
141
|
-
end
|