@@ -65,47 +65,6 @@ def add_all(fun)
65
65
end
66
66
end
67
67
68
- module CrazyFunVisualStudio
69
- class UploadFile < Tasks
70
- def handle ( fun , dir , args )
71
- # Empty handle method as this will be a base class for tasks
72
- # requiring upload of their outputs.
73
- end
74
-
75
- def upload_file ( file_name , file_description , featured_file )
76
- py = "java -jar third_party/py/jython.jar"
77
- if ( python? )
78
- py = "python"
79
- end
80
-
81
- if ENV [ "googlecodeusername" ] . nil?
82
- print "Enter your googlecode username (or <Enter> to avoid upload):"
83
- googlecode_username = STDIN . gets . chomp
84
- else
85
- googlecode_username = ENV [ "googlecodeusername" ]
86
- end
87
- if googlecode_username == ""
88
- print "googlecode user name not specified; not uploading file"
89
- return
90
- end
91
- if ENV [ "googlecodepassword" ] . nil?
92
- print "Enter your googlecode password (NOT your gmail password, the one you use for svn, available at https://code.google.com/hosting/settings):"
93
- googlecode_password = STDIN . gets . chomp
94
- else
95
- googlecode_password = ENV [ "googlecodepassword" ]
96
- end
97
- featured = ""
98
- if featured_file
99
- featured = " -l Featured"
100
- end
101
- puts "Uploading file #{ file_name } ..."
102
- platform_file_name = file_name . gsub ( "/" , Platform . dir_separator )
103
- command_line = "#{ py } third_party/py/googlecode/googlecode_upload.py -s \" #{ file_description } \" #{ featured } -p selenium #{ platform_file_name } -u #{ googlecode_username } -w #{ googlecode_password } "
104
- sh command_line
105
- end
106
- end
107
- end
108
-
109
68
module CrazyFunDotNet
110
69
class DotNetTasks < Tasks
111
70
def get_reference_assemblies_dir ( )
@@ -151,6 +110,33 @@ def find_environment_variable(possible_vars, fallback)
151
110
end
152
111
return ENV [ var_name ]
153
112
end
113
+
114
+ def get_version ( dir )
115
+ found_version = version
116
+ version_tag = ""
117
+ list = FileList . new ( dir + "/**/AssemblyInfo.cs" ) . to_a
118
+ if list . length > 0
119
+ version_regexp = /^.*AssemblyVersion\( \" (.*)\" \) .*$/
120
+ version_tag_regexp = /^.*AssemblyInformationalVersion\( \" .*-(.*)\" \) .*$/
121
+ assembly_info = File . open list [ 0 ]
122
+ assembly_info . each do |line |
123
+ version_match = line . match version_regexp
124
+ if ( not version_match . nil? )
125
+ found_version = version_match [ 1 ]
126
+ found_version = found_version [ 0 ..found_version . rindex ( "." ) - 1 ]
127
+ end
128
+ version_tag_match = line . match version_tag_regexp
129
+ if ( not version_tag_match . nil? )
130
+ version_tag = version_tag_match [ 1 ]
131
+ end
132
+ end
133
+ assembly_info . close
134
+ end
135
+ if version_tag != ""
136
+ found_version = found_version + "-" + version_tag
137
+ end
138
+ found_version
139
+ end
154
140
end
155
141
156
142
class DotNetLibrary < DotNetTasks
@@ -167,7 +153,7 @@ def handle(fun, dir, args)
167
153
base_dir = File . join ( base_dir , "dist" )
168
154
end
169
155
170
- output_dir = base_dir
156
+ output_dir = base_dir
171
157
unless args [ :merge_refs ] . nil?
172
158
output_dir = File . join ( output_dir , "unmerged" )
173
159
end
@@ -467,18 +453,19 @@ def handle(fun, dir, args)
467
453
end
468
454
end
469
455
470
- class CreateNuSpec < Tasks
456
+ class CreateNuSpec < DotNetTasks
471
457
def handle ( fun , dir , args )
472
458
output_dir = "build/dotnet/dist"
473
459
spec_file = "#{ output_dir } /nuget/#{ args [ :packageid ] } .nuspec"
474
460
task_name = task_name ( dir , args [ :name ] )
461
+ package_version = get_version ( dir )
475
462
desc "Creates and optionally publishes the NuGet package for #{ args [ :out ] } "
476
463
target = nuspec "#{ task_name } " do |nuspec_task |
477
464
mkdir_p "#{ output_dir } /nuget"
478
465
puts "Creating .nuspec for: #{ task_name } "
479
466
nuspec_task . output_file = spec_file
480
467
nuspec_task . id = args [ :packageid ]
481
- nuspec_task . version = get_version ( dir )
468
+ nuspec_task . version = package_version
482
469
nuspec_task . authors = "Selenium Committers"
483
470
nuspec_task . description = args [ :description ]
484
471
nuspec_task . owners = "Software Freedom Conservancy"
@@ -506,15 +493,15 @@ def handle(fun, dir, args)
506
493
507
494
unless args [ :packagedeps ] . nil?
508
495
args [ :packagedeps ] . each do |dep |
509
- package_id = dep . keys [ 0 ]
510
- package_version = version
511
- package_dependency_task = task_name ( dir , package_id )
496
+ package_dependency_id = dep . keys [ 0 ]
497
+ package_dependency_version = package_version
498
+ package_dependency_task = task_name ( dir , package_dependency_id )
512
499
if Rake ::Task . task_defined? package_dependency_task
513
- package_id = Rake ::Task [ package_dependency_task ] . out
500
+ package_dependency_id = Rake ::Task [ package_dependency_task ] . out
514
501
else
515
- package_version = "#{ dep . fetch ( package_id ) } "
502
+ package_version = "#{ dep . fetch ( package_dependency_id ) } "
516
503
end
517
- nuspec_task . dependency package_id , package_version
504
+ nuspec_task . dependency package_dependency_id , package_dependency_version
518
505
end
519
506
end
520
507
@@ -530,24 +517,6 @@ def handle(fun, dir, args)
530
517
target . out = args [ :packageid ]
531
518
add_dependencies ( target , dir , args [ :deps ] )
532
519
end
533
-
534
- def get_version ( dir )
535
- found_version = version
536
- list = FileList . new ( dir + "/**/AssemblyInfo.cs" ) . to_a
537
- if list . length > 0
538
- regexp = /^.*AssemblyVersion\( \" (.*)\" \) .*$/
539
- assembly_info = File . open list [ 0 ]
540
- assembly_info . each do |line |
541
- match = line . match regexp
542
- if ( not match . nil? )
543
- found_version = match [ 1 ]
544
- found_version = found_version [ 0 ..found_version . rindex ( "." ) - 1 ]
545
- end
546
- end
547
- assembly_info . close
548
- end
549
- found_version
550
- end
551
520
end
552
521
553
522
class PackNuGetPackage < Tasks
@@ -565,10 +534,11 @@ def handle(fun, dir, args)
565
534
end
566
535
end
567
536
568
- class PublishNuGetPackage < Tasks
537
+ class PublishNuGetPackage < DotNetTasks
569
538
def handle ( fun , dir , args )
570
539
output_dir = "build/dotnet/dist"
571
- package_file = "#{ output_dir } /nuget/#{ args [ :packageid ] } .#{ version } .nupkg" . gsub ( "/" , Platform . dir_separator )
540
+ package_version = get_version ( dir )
541
+ package_file = "#{ output_dir } /nuget/#{ args [ :packageid ] } .#{ package_version } .nupkg" . gsub ( "/" , Platform . dir_separator )
572
542
task_name = task_name ( dir , args [ :name ] )
573
543
desc "Publishes NuGet package for #{ task_name } to NuGet Gallery"
574
544
target = task "#{ task_name } " do
@@ -588,7 +558,7 @@ def handle(fun, dir, args)
588
558
end
589
559
end
590
560
591
- class DotNetRelease < CrazyFunVisualStudio :: UploadFile
561
+ class DotNetRelease < DotNetTasks
592
562
def handle ( fun , dir , args )
593
563
output_dir = 'build/dotnet'
594
564
unless args [ :signed ] . nil?
@@ -614,30 +584,11 @@ def handle(fun, dir, args)
614
584
cp_r lst , tmp_dir
615
585
zip ( tmp_dir , output_file )
616
586
rm_rf tmp_dir
617
- upload_file output_file , args [ :desc ] , args . has_key? ( :featured )
618
587
end
619
588
620
589
add_dependencies ( target , dir , args [ :deps ] )
621
590
target . out = output_file
622
591
end
623
-
624
- def get_version ( dir )
625
- found_version = version
626
- list = FileList . new ( dir + "/**/AssemblyInfo.cs" ) . to_a
627
- if list . length > 0
628
- regexp = /^.*AssemblyVersion\( \" (.*)\" \) .*$/
629
- assembly_info = File . open list [ 0 ] , 'rb'
630
- assembly_info . each do |line |
631
- match = line . match regexp
632
- if ( not match . nil? )
633
- found_version = match [ 1 ]
634
- found_version = found_version [ 0 ..found_version . rindex ( "." ) - 1 ]
635
- end
636
- end
637
- assembly_info . close
638
- end
639
- found_version
640
- end
641
592
end
642
593
end
643
594
@@ -687,7 +638,7 @@ def handle(fun, dir, args)
687
638
end
688
639
end
689
640
690
- class VisualCRelease < CrazyFunVisualStudio :: UploadFile
641
+ class VisualCRelease < Tasks
691
642
def handle ( fun , dir , args )
692
643
output_dir = 'build/cpp'
693
644
file_name = args [ :out ] . chomp ( File . extname ( args [ :out ] ) ) + "_" + args [ :platform ] + "_" + get_version ( dir ) + ".zip"
@@ -706,7 +657,6 @@ def handle(fun, dir, args)
706
657
if Rake ::Task . task_defined? task_name
707
658
dependency_output_file = Rake ::Task [ task_name ] . out
708
659
do_zip ( dependency_output_file , output_file )
709
- upload_file output_file , args [ :desc ] , args . has_key? ( :featured )
710
660
end
711
661
end
712
662
0 commit comments