rake_roll 0.4.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/rake_roll/roller.rb +6 -1
- data/lib/rake_roll/tasks/roll.rake +32 -16
- data/lib/rake_roll/versioning.rb +10 -10
- data/rake_roll.gemspec +1 -1
- data/spec/lib/rake_roll/roller_spec.rb +1 -1
- data/spec/lib/rake_roll/versioning_spec.rb +13 -13
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 345479e1a6c3cc305ce62dc49a65ab1c9b2b0736
|
4
|
+
data.tar.gz: 91aeed46d743af5e272ac20f8c52470e2286a66f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 34e62b98b966c67013689987482561f48e00b9d947d880c8f4e6b752dba2bb3e1a6a47c61eb4f966e4cde92d472ce5fb48511fc68d1ffab709284d3b52ed6997
|
7
|
+
data.tar.gz: 4a2b2bb0eae95807355d0d165628e11987a5c21f765181e0a485b37c83d48f14064379dbe86ca470405a92a8017cd590d790a261adf2203f94d06b107bf24492
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
1.0.0
|
data/lib/rake_roll/roller.rb
CHANGED
@@ -39,7 +39,12 @@ module RakeRoll
|
|
39
39
|
|
40
40
|
def print_run_for_real_text(type)
|
41
41
|
log_to_s
|
42
|
-
puts "
|
42
|
+
puts "To run for real:"
|
43
|
+
if type == "bump"
|
44
|
+
puts "$> BUMP=#{new_version} PUSH=true rake roll:#{type}"
|
45
|
+
else
|
46
|
+
puts "$> PUSH=true rake roll:#{type}"
|
47
|
+
end
|
43
48
|
puts "----------------------"
|
44
49
|
end
|
45
50
|
|
@@ -5,11 +5,12 @@ task :roll => :environment do
|
|
5
5
|
version = RakeRoll::Versioning.new(roller.current_version)
|
6
6
|
puts "rake roll options are:"
|
7
7
|
puts "----------------------"
|
8
|
-
puts "rake roll:bump #{roller.current_version} => #{version.bump}"
|
9
8
|
puts "rake roll:pre #{roller.current_version} => #{version.pre}"
|
9
|
+
puts "rake roll:revision #{roller.current_version} => #{version.revision}"
|
10
10
|
puts "rake roll:minor #{roller.current_version} => #{version.minor}"
|
11
11
|
puts "rake roll:major #{roller.current_version} => #{version.major}"
|
12
|
-
puts "rake roll:
|
12
|
+
puts "rake roll:next Writes latest commits to changelog without tagging or updating version"
|
13
|
+
puts "rake roll:bump Pass bumped version in eg: BUMP=#{version.revision}"
|
13
14
|
puts "----------------------"
|
14
15
|
puts "Above will do a dry run, Run with PUSH=true to run for real"
|
15
16
|
puts "----------------------"
|
@@ -20,13 +21,13 @@ end
|
|
20
21
|
desc "bump the version, update the tag and changelog"
|
21
22
|
namespace :roll do
|
22
23
|
|
23
|
-
desc "#{RakeRoll::Roller.new.current_version} => #{RakeRoll::Versioning.new(RakeRoll::Roller.new.current_version).
|
24
|
-
task :
|
24
|
+
desc "#{RakeRoll::Roller.new.current_version} => #{RakeRoll::Versioning.new(RakeRoll::Roller.new.current_version).revision}"
|
25
|
+
task :revision => :environment do
|
25
26
|
roller = RakeRoll::Roller.new
|
26
27
|
version = RakeRoll::Versioning.new(roller.current_version)
|
27
28
|
if version.current_version
|
28
|
-
roller.new_version = version.
|
29
|
-
do_your_thing(roller, version, "
|
29
|
+
roller.new_version = version.revision
|
30
|
+
do_your_thing(roller, version, "revision")
|
30
31
|
else
|
31
32
|
puts "ERROR: Invalid Version Number #{roller.current_version}"
|
32
33
|
end
|
@@ -68,26 +69,41 @@ namespace :roll do
|
|
68
69
|
end
|
69
70
|
end
|
70
71
|
|
71
|
-
desc "#{RakeRoll::Roller.new.current_version} =>
|
72
|
-
task :
|
72
|
+
desc "#{RakeRoll::Roller.new.current_version} => Writes latest commits to changelog without tagging"
|
73
|
+
task :next => :environment do
|
73
74
|
roller = RakeRoll::Roller.new
|
74
75
|
version = RakeRoll::Versioning.new(roller.current_version)
|
75
76
|
if version.current_version
|
76
|
-
roller.new_version = version.
|
77
|
-
do_your_thing(roller, version, "
|
77
|
+
roller.new_version = version.next
|
78
|
+
do_your_thing(roller, version, "next")
|
78
79
|
else
|
79
80
|
puts "ERROR: Invalid Version Number #{roller.current_version}"
|
80
81
|
end
|
81
82
|
end
|
82
83
|
|
84
|
+
desc "#{RakeRoll::Roller.new.current_version} => Pass bumped version in eg: BUMP=1.2.3"
|
85
|
+
task :bump => :environment do
|
86
|
+
roller = RakeRoll::Roller.new
|
87
|
+
version = RakeRoll::Versioning.new(roller.current_version)
|
88
|
+
if new_version = ENV["BUMP"]
|
89
|
+
if version.current_version
|
90
|
+
roller.new_version = new_version
|
91
|
+
do_your_thing(roller, version, "bump")
|
92
|
+
else
|
93
|
+
puts "ERROR: Invalid Version Number #{roller.current_version}"
|
94
|
+
end
|
95
|
+
else
|
96
|
+
puts "You must supply a version number i.e. BUMP=#{version.revision} rake roll:bump"
|
97
|
+
end
|
98
|
+
end
|
83
99
|
|
84
100
|
end
|
85
101
|
|
86
102
|
def do_your_thing(roller, version, type)
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
103
|
+
roller.print_versions
|
104
|
+
if ENV["PUSH"]
|
105
|
+
roller.push
|
106
|
+
else
|
107
|
+
roller.print_run_for_real_text(type)
|
108
|
+
end
|
93
109
|
end
|
data/lib/rake_roll/versioning.rb
CHANGED
@@ -8,15 +8,6 @@ module RakeRoll
|
|
8
8
|
@current_version = validate_current_version(current_version)
|
9
9
|
end
|
10
10
|
|
11
|
-
def bump
|
12
|
-
if nums = current_version.dup
|
13
|
-
last_number = nums[-1].scan(/\d+/).first.to_i
|
14
|
-
last_number = last_number + 1
|
15
|
-
nums[-1] = last_number
|
16
|
-
nums.join(".")
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
11
|
def pre
|
21
12
|
if nums = current_version.dup
|
22
13
|
pre_letter = nums[-1].scan(/\D/).first
|
@@ -30,6 +21,15 @@ module RakeRoll
|
|
30
21
|
end
|
31
22
|
end
|
32
23
|
|
24
|
+
def revision
|
25
|
+
if nums = current_version.dup
|
26
|
+
last_number = nums[-1].scan(/\d+/).first.to_i
|
27
|
+
last_number = last_number + 1
|
28
|
+
nums[-1] = last_number
|
29
|
+
nums.join(".")
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
33
|
def minor
|
34
34
|
if nums = current_version.dup
|
35
35
|
minor_number = nums[1].scan(/\d+/).first.to_i
|
@@ -52,7 +52,7 @@ module RakeRoll
|
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
|
-
def
|
55
|
+
def next
|
56
56
|
'NEXT'
|
57
57
|
end
|
58
58
|
|
data/rake_roll.gemspec
CHANGED
@@ -6,7 +6,7 @@ require 'rake_roll/version'
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = "rake_roll"
|
8
8
|
spec.version = RakeRoll::VERSION
|
9
|
-
spec.authors = ["Stuart Hanscombe"]
|
9
|
+
spec.authors = ["Stuart Hanscombe", "Jose Fuentes"]
|
10
10
|
spec.email = ["hanscs1969@yahoo.co.uk"]
|
11
11
|
spec.summary = "RakeRoll: Git version tagger and changelog creator"
|
12
12
|
spec.description = "RakeRoll: Roll out your release versions with ease, RakeRoll will version and tag a release then create an updated changelog of the git commits (picking only those starting with a *)"
|
@@ -3,14 +3,14 @@ describe RakeRoll::Versioning do
|
|
3
3
|
|
4
4
|
it "should validate the version" do
|
5
5
|
expect(RakeRoll::Versioning.new("1").current_version).to eq(false)
|
6
|
-
end
|
6
|
+
end
|
7
7
|
|
8
8
|
context "Dealing with 3 levels" do
|
9
9
|
|
10
10
|
let(:version) { RakeRoll::Versioning.new("1.0.0") }
|
11
11
|
|
12
|
-
it "#
|
13
|
-
expect(version.
|
12
|
+
it "#revision should => 1.0.0 to 1.0.1" do
|
13
|
+
expect(version.revision).to eq("1.0.1")
|
14
14
|
end
|
15
15
|
|
16
16
|
it "#pre should => 1.0.0 to 1.0.0a" do
|
@@ -31,8 +31,8 @@ describe RakeRoll::Versioning do
|
|
31
31
|
|
32
32
|
let(:version) { RakeRoll::Versioning.new("1.0") }
|
33
33
|
|
34
|
-
it "#
|
35
|
-
expect(version.
|
34
|
+
it "#revision should => 1.0 to 1.1" do
|
35
|
+
expect(version.revision).to eq("1.1")
|
36
36
|
end
|
37
37
|
|
38
38
|
it "#pre should => 1.0 to 1.0a" do
|
@@ -51,8 +51,8 @@ describe RakeRoll::Versioning do
|
|
51
51
|
|
52
52
|
context "Other versioning cases" do
|
53
53
|
|
54
|
-
it "#
|
55
|
-
expect(RakeRoll::Versioning.new("1.0a").
|
54
|
+
it "#revision should => 1.0a to 1.1" do
|
55
|
+
expect(RakeRoll::Versioning.new("1.0a").revision).to eq("1.1")
|
56
56
|
end
|
57
57
|
|
58
58
|
it "#major should => 1.5a to 2.0" do
|
@@ -67,8 +67,8 @@ describe RakeRoll::Versioning do
|
|
67
67
|
expect(RakeRoll::Versioning.new("1.5a").pre).to eq("1.5b")
|
68
68
|
end
|
69
69
|
|
70
|
-
it "#
|
71
|
-
expect(RakeRoll::Versioning.new("1.0.0a").
|
70
|
+
it "#revision should => 1.0.0a to 1.0.1" do
|
71
|
+
expect(RakeRoll::Versioning.new("1.0.0a").revision).to eq("1.0.1")
|
72
72
|
end
|
73
73
|
|
74
74
|
it "#major should => 1.5.5a to 2.0.0" do
|
@@ -83,12 +83,12 @@ describe RakeRoll::Versioning do
|
|
83
83
|
expect(RakeRoll::Versioning.new("1.5.5a").pre).to eq("1.5.5b")
|
84
84
|
end
|
85
85
|
|
86
|
-
it "#
|
87
|
-
expect(RakeRoll::Versioning.new("1.10").
|
86
|
+
it "#revision should => 1.10 to 1.11" do
|
87
|
+
expect(RakeRoll::Versioning.new("1.10").revision).to eq("1.11")
|
88
88
|
end
|
89
89
|
|
90
|
-
it "#
|
91
|
-
expect(RakeRoll::Versioning.new("1.1.10").
|
90
|
+
it "#revision should => 1.1.10 to 1.1.11" do
|
91
|
+
expect(RakeRoll::Versioning.new("1.1.10").revision).to eq("1.1.11")
|
92
92
|
end
|
93
93
|
|
94
94
|
it "#minor should => 1.10.1 to 1.11.11" do
|
metadata
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake_roll
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stuart Hanscombe
|
8
|
+
- Jose Fuentes
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2017-
|
12
|
+
date: 2017-11-15 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: bundler
|