rake-dotnet 0.1.11 → 0.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/History.txt +2 -6
  2. data/Rakefile.rb +1 -1
  3. data/lib/rake_dotnet.rb +18 -30
  4. metadata +4 -4
data/History.txt CHANGED
@@ -1,10 +1,6 @@
1
- === 0.1.11 / 2009-08-25
1
+ === 0.1.12 / 2009-08-29
2
2
 
3
- FIX: Messed up previous gem
4
-
5
- === 0.1.10 / 2009-08-24
6
-
7
- FIX: Svn: revision would return the last changed revision, not the actual revision number
3
+ FIX: Versioner: Cache the version number to a file, so CI can pull/push it and maintain same version number throughout CI pipeline stages
8
4
 
9
5
  === 0.1.9 / 2009-07-07
10
6
 
data/Rakefile.rb CHANGED
@@ -5,7 +5,7 @@ require 'hoe'
5
5
  require 'Pathname'
6
6
  require 'rake/clean'
7
7
 
8
- Hoe.new('rake-dotnet', '0.1.11') do |p|
8
+ Hoe.new('rake-dotnet', '0.1.12') do |p|
9
9
  p.author = 'Peter Mounce'
10
10
  p.description = 'Making a .NET build-automation dev\'s life easier, one angle-bracket at a time'
11
11
  p.email = 'pete@neverrunwithscissors.com'
data/lib/rake_dotnet.rb CHANGED
@@ -83,6 +83,7 @@ CLEAN.include("#{SRC_DIR}/**/obj")
83
83
  CLEAN.include("#{SRC_DIR}/**/bin")
84
84
  CLEAN.include("#{SRC_DIR}/**/AssemblyInfo.cs")
85
85
  CLEAN.include("#{SRC_DIR}/**/AssemblyInfo.vb")
86
+ CLEAN.include('version.txt')
86
87
  CLOBBER.include(OUT_DIR)
87
88
 
88
89
  VERBOSE = ENV['VERBOSE'] ? ENV['VERBOSE'] : false
@@ -913,8 +914,7 @@ class SvnInfo < Svn
913
914
  def revision
914
915
  puts cmd if VERBOSE
915
916
  out = `#{cmd}`
916
- rev = out.match(/Revision: (\d+)/)[1]
917
- return rev
917
+ out.match(/Revision: (\d+)/)[1]
918
918
  end
919
919
 
920
920
  def path
@@ -925,53 +925,41 @@ end
925
925
 
926
926
  class Versioner
927
927
  def initialize(template_file=nil, opts={})
928
- tf = template_file || 'version.template.txt'
929
- file = Pathname.new(tf)
930
- @maj_min = file.read.chomp
931
- @bin_out = opts[:bin_out] || File.join(OUT_DIR, 'bin')
928
+ tf_path = template_file || 'version.template.txt'
929
+ @tf = Pathname.new(tf_path)
930
+ @vf = Pathname.new(tf_path.sub('.template', ''))
932
931
  end
933
932
 
934
933
  def get
935
- "#{@maj_min}.#{build}.#{revision}"
934
+ return @vf.read.chomp if @vf.exist?
935
+
936
+ v = "#{maj_min}.#{build}.#{revision}"
937
+ @vf.open('w') {|f| f.write(v) }
938
+
939
+ return v
936
940
  end
937
941
 
942
+ def maj_min
943
+ return @tf.read.chomp
944
+ end
945
+
938
946
  def build
939
- fl = FileList.new("#{@bin_out}*")
940
- if ENV['TEAMCITY_BUILDCONF_NAME']
941
- pb = get_from_previous_binaries('.*-v\d+\.\d+\.(\d+)\.\d+')
942
- return pb unless pb.nil?# use a previous binaries-build if one exists
943
- # otherwise use the current environment variable
944
- bn = ENV['BUILD_NUMBER']
945
- end
947
+ bn = ENV['BUILD_NUMBER']
946
948
  return 0 if bn == nil || !bn.match(/\d+/)
947
949
  return bn
948
950
  end
949
951
 
950
952
  def revision
951
953
  if (Pathname.new('.svn').exist?)
952
- if ENV['TEAMCITY_BUILDCONF_NAME']
953
- pb = get_from_previous_binaries('.*-v\d+\.\d+\.\d+\.(\d+)')
954
- return pb unless pb.nil?
955
- end
956
954
  return SvnInfo.new(:path => '.').revision
957
955
  else
956
+ # TODO: return something numeric but sane for non-numeric revision numbers (eg DVCSs)
958
957
  return '0' # YYYYMMDD is actually invalid for a {revision} number.
959
958
  end
960
959
  end
961
-
962
- def get_from_previous_binaries(regex)
963
- fl = FileList.new("#{@bin_out}*")
964
- fl.each do |e|
965
- re = regexify(@bin_out)
966
- unless e.match(/#{re}/).nil?
967
- matches = e.match(/#{regex}/)
968
- return matches[1] unless matches.nil?
969
- end
970
- end
971
- return nil
972
- end
973
960
  end
974
961
 
962
+ RDNVERSION = Versioner.new.get
975
963
 
976
964
 
977
965
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-dotnet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.11
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter MouncePeter Mounce
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-08-25 00:00:00 +01:00
12
+ date: 2009-08-29 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 1.12.2
33
+ version: 1.11.0
34
34
  version:
35
35
  description: Making a .NET build-automation dev's life easier, one angle-bracket at a time
36
36
  email: pete@neverrunwithscissors.compete@neverrunwithscissors.com
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  requirements: []
76
76
 
77
77
  rubyforge_project: rake-dotnet
78
- rubygems_version: 1.3.3
78
+ rubygems_version: 1.3.4
79
79
  signing_key:
80
80
  specification_version: 3
81
81
  summary: Build automation for .NET builds