fuburake 0.5.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +15 -0
- data/lib/assembly_info.rb +48 -0
- data/lib/bottles.rb +19 -0
- data/lib/fubudocs.rb +26 -0
- data/lib/fuburake.rb +183 -0
- data/lib/msbuild.rb +84 -0
- data/lib/nuget.rb +25 -0
- data/lib/nunit.rb +76 -0
- data/lib/platform.rb +21 -0
- data/lib/ripple.rb +38 -0
- metadata +55 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MjI5MjRkMThmYWU0ODY4YTNmMDgxMmY3ZGEzZmU4MWQxOGVlZDcyMg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NDAyNTEzZmUxM2U3NDUyNjVjNzQ5N2U4ODlmZjczNGQ4NDg2NmM0OA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MjNlMGMwODZjN2FmZDQzMzFlODMyYTYyMmY5MTgxMzBjMmJiNThjNTQyYjIz
|
10
|
+
YjdhY2Q0OTA2OGJmMzExM2RhYjQ0YjVlMjIxZjk3Y2E4OWJmZDM2ZjkzODli
|
11
|
+
NGI4MDg2ZmI2ZjY0OTM0ODM2NTE3MjI3YjI4MzczYjVlMDc1OTg=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MWU0MmY4Y2NhNzczNWQ5NjU1ZWUzMTYxMTc0NjlkM2U5N2IwNGE1ZDkwYTdh
|
14
|
+
MzA5Yjc0MmQwYjBiZDRlYjFmY2M4MWNhZjQzZmFkMGVlYWRjYzI4ZDQ4YzI2
|
15
|
+
MDc4YzM0NWFmZDc3NjlmZmZjYTc0MmIxZDA5MjkzNjgyOTA5ZDI=
|
@@ -0,0 +1,48 @@
|
|
1
|
+
module FubuRake
|
2
|
+
class AssemblyInfo
|
3
|
+
def self.create tasks, options
|
4
|
+
if tasks.assembly_info == nil
|
5
|
+
return nil
|
6
|
+
end
|
7
|
+
|
8
|
+
versionTask = Rake::Task.define_task :version do
|
9
|
+
begin
|
10
|
+
commit = `git log -1 --pretty=format:%H`
|
11
|
+
rescue
|
12
|
+
commit = "git unavailable"
|
13
|
+
end
|
14
|
+
puts "##teamcity[buildNumber '#{options[:build_number]}']" unless options[:tc_build_number].nil?
|
15
|
+
puts "Version: #{options[:build_number]}" if options[:tc_build_number].nil?
|
16
|
+
|
17
|
+
options = {
|
18
|
+
:trademark => commit,
|
19
|
+
:product_name => 'CHANGEME',
|
20
|
+
:description => options[:build_number],
|
21
|
+
:version => options[:asm_version],
|
22
|
+
:file_version => options[:build_number],
|
23
|
+
:informational_version => options[:asm_version],
|
24
|
+
:copyright => 'CHANGEME',
|
25
|
+
:output_file => 'src/CommonAssemblyInfo.cs'
|
26
|
+
}
|
27
|
+
|
28
|
+
options = options.merge(tasks.assembly_info)
|
29
|
+
|
30
|
+
File.open(options[:output_file], 'w') do |file|
|
31
|
+
file.write "using System.Reflection;\n"
|
32
|
+
file.write "using System.Runtime.InteropServices;\n"
|
33
|
+
file.write "[assembly: AssemblyDescription(\"#{options[:description]}\")]\n"
|
34
|
+
file.write "[assembly: AssemblyProduct(\"#{options[:product_name]}\")]\n"
|
35
|
+
file.write "[assembly: AssemblyCopyright(\"#{options[:copyright]}\")]\n"
|
36
|
+
file.write "[assembly: AssemblyTrademark(\"#{options[:trademark]}\")]\n"
|
37
|
+
file.write "[assembly: AssemblyVersion(\"#{options[:version]}\")]\n"
|
38
|
+
file.write "[assembly: AssemblyFileVersion(\"#{options[:file_version]}\")]\n"
|
39
|
+
file.write "[assembly: AssemblyInformationalVersion(\"#{options[:informational_version]}\")]\n"
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
versionTask.add_description "Update the version information for the build"
|
44
|
+
|
45
|
+
return versionTask
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
data/lib/bottles.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
module FubuRake
|
2
|
+
class AssemblyBottle
|
3
|
+
def initialize(project)
|
4
|
+
@project = project
|
5
|
+
end
|
6
|
+
|
7
|
+
def create(options)
|
8
|
+
cleaned_name = @project.gsub('.', '_').downcase
|
9
|
+
|
10
|
+
name = "bottle_#{cleaned_name}"
|
11
|
+
task = Rake::Task.define_task name do
|
12
|
+
sh "bottles assembly-pak src/#{@project} -p #{@project}.csproj"
|
13
|
+
end
|
14
|
+
|
15
|
+
task.add_description "Assembly bottle packing for #{@project}"
|
16
|
+
Rake::Task[:compile].enhance [name]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/fubudocs.rb
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
namespace :docs do
|
2
|
+
desc "Tries to run a documentation project hosted in FubuWorld"
|
3
|
+
task :run do
|
4
|
+
sh "fubudocs run -o"
|
5
|
+
end
|
6
|
+
|
7
|
+
desc "Tries to run the documentation projects in this solution in a 'watched' mode in Firefox"
|
8
|
+
task :run_firefox do
|
9
|
+
sh "fubudocs run --watched --browser Firefox"
|
10
|
+
end
|
11
|
+
|
12
|
+
desc "Tries to run the documentation projects in this solution in a 'watched' mode in Firefox"
|
13
|
+
task :run_chrome do
|
14
|
+
sh "fubudocs run --watched --browser Chrome"
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "'Bottles' up a single project in the solution with 'Docs' in its name"
|
18
|
+
task :bottle do
|
19
|
+
sh "fubudocs bottle"
|
20
|
+
end
|
21
|
+
|
22
|
+
desc "Gathers up code snippets from the solution into the Docs project"
|
23
|
+
task :snippets do
|
24
|
+
sh "fubudocs snippets"
|
25
|
+
end
|
26
|
+
end
|
data/lib/fuburake.rb
ADDED
@@ -0,0 +1,183 @@
|
|
1
|
+
include FileUtils
|
2
|
+
include FileTest
|
3
|
+
|
4
|
+
require_relative 'nunit'
|
5
|
+
require_relative 'msbuild'
|
6
|
+
require_relative 'nuget'
|
7
|
+
require_relative 'platform'
|
8
|
+
require_relative 'ripple'
|
9
|
+
require_relative 'assembly_info'
|
10
|
+
require_relative 'bottles'
|
11
|
+
|
12
|
+
load "VERSION.txt"
|
13
|
+
|
14
|
+
module FubuRake
|
15
|
+
class SolutionTasks
|
16
|
+
attr_accessor :clean,
|
17
|
+
:compile,
|
18
|
+
:assembly_info,
|
19
|
+
:ripple_enabled,
|
20
|
+
:fubudocs_enabled,
|
21
|
+
:options,
|
22
|
+
:defaults,
|
23
|
+
:ci_steps,
|
24
|
+
:precompile,
|
25
|
+
:integration_test,
|
26
|
+
:compilations
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
def compile_step(name, solution)
|
31
|
+
@compilations ||= []
|
32
|
+
|
33
|
+
@compilations << CompileTarget.new(name, solution)
|
34
|
+
end
|
35
|
+
|
36
|
+
def assembly_bottle(project)
|
37
|
+
@compilations ||= []
|
38
|
+
|
39
|
+
@compilations << FubuRake::AssemblyBottle.new(project)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
class Solution
|
44
|
+
attr_accessor :options, :compilemode, :build_number
|
45
|
+
|
46
|
+
def initialize(&block)
|
47
|
+
tasks = SolutionTasks.new
|
48
|
+
block.call(tasks)
|
49
|
+
|
50
|
+
@defaultTask = create_task(:default, "**Default**, compiles and runs tests")
|
51
|
+
@ciTask = create_task(:ci, "Target used for the CI server")
|
52
|
+
@ciTask.enhance [:default]
|
53
|
+
|
54
|
+
options = tasks.options
|
55
|
+
options ||= {}
|
56
|
+
|
57
|
+
tc_build_number = ENV["BUILD_NUMBER"]
|
58
|
+
build_revision = tc_build_number || Time.new.strftime('5%H%M')
|
59
|
+
asm_version = BUILD_VERSION + ".0"
|
60
|
+
@build_number = "#{BUILD_VERSION}.#{build_revision}"
|
61
|
+
|
62
|
+
# SAMPLE: fuburake-options
|
63
|
+
@options = {
|
64
|
+
:compilemode => ENV['config'].nil? ? "Debug" : ENV['config'],
|
65
|
+
:clrversion => 'v4.0.30319',
|
66
|
+
:platform => 'x86',
|
67
|
+
:unit_test_list_file => 'TESTS.txt',
|
68
|
+
:unit_test_projects => [],
|
69
|
+
:build_number => @build_number,
|
70
|
+
:asm_version => asm_version,
|
71
|
+
:tc_build_number => tc_build_number,
|
72
|
+
:build_revision => build_revision,
|
73
|
+
:source => 'src'}.merge(options)
|
74
|
+
# ENDSAMPLE
|
75
|
+
|
76
|
+
@compilemode = @options[:compilemode]
|
77
|
+
|
78
|
+
tasks.clean ||= []
|
79
|
+
tasks.defaults ||= []
|
80
|
+
tasks.ci_steps ||= []
|
81
|
+
tasks.precompile ||= []
|
82
|
+
|
83
|
+
|
84
|
+
enable_docs tasks
|
85
|
+
FubuRake::AssemblyInfo.create tasks, @options
|
86
|
+
FubuRake::Ripple.create tasks, @options
|
87
|
+
make_clean tasks
|
88
|
+
FubuRake::MSBuild.create_task tasks, @options
|
89
|
+
FubuRake::NUnit.create_task tasks, @options
|
90
|
+
|
91
|
+
add_dependency :compile, [:clean, :version, 'ripple:restore', 'docs:bottle']
|
92
|
+
|
93
|
+
Rake::Task[:compile].enhance(tasks.precompile)
|
94
|
+
add_dependency :unit_test, :compile
|
95
|
+
add_dependency :default, [:compile, :unit_test]
|
96
|
+
add_dependency :default, :unit_test
|
97
|
+
Rake::Task[:default].enhance tasks.defaults
|
98
|
+
Rake::Task[:ci].enhance tasks.ci_steps
|
99
|
+
add_dependency :ci, tasks.ci_steps
|
100
|
+
add_dependency :ci, ["ripple:history", "ripple:package"]
|
101
|
+
|
102
|
+
tasks.compilations ||= []
|
103
|
+
tasks.compilations.each do |c|
|
104
|
+
c.create @options
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
def add_dependency(from, to)
|
109
|
+
if to.kind_of?(Array)
|
110
|
+
to.each do |dep|
|
111
|
+
add_dependency from, dep
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
if !Rake::Task.task_defined?(from)
|
116
|
+
return
|
117
|
+
end
|
118
|
+
|
119
|
+
if !Rake::Task.task_defined?(to)
|
120
|
+
return
|
121
|
+
end
|
122
|
+
|
123
|
+
Rake::Task[from].enhance [to]
|
124
|
+
end
|
125
|
+
|
126
|
+
def create_task(name, description)
|
127
|
+
task = Rake::Task.define_task name do
|
128
|
+
|
129
|
+
end
|
130
|
+
task.add_description description
|
131
|
+
|
132
|
+
return task
|
133
|
+
end
|
134
|
+
|
135
|
+
def make_clean(tasks)
|
136
|
+
if tasks.clean.any?
|
137
|
+
@cleanTask = Rake::Task.define_task :clean do
|
138
|
+
tasks.clean.each do |dir|
|
139
|
+
cleanDirectory dir
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
@cleanTask.add_description "Prepares the working directory for a new build"
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
|
148
|
+
def enable_docs(tasks)
|
149
|
+
if tasks.fubudocs_enabled
|
150
|
+
require_relative 'fubudocs'
|
151
|
+
end
|
152
|
+
end
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
def copyOutputFiles(fromDir, filePattern, outDir)
|
160
|
+
Dir.glob(File.join(fromDir, filePattern)){|file|
|
161
|
+
copy(file, outDir) if File.file?(file)
|
162
|
+
}
|
163
|
+
end
|
164
|
+
|
165
|
+
def waitfor(&block)
|
166
|
+
checks = 0
|
167
|
+
until block.call || checks >10
|
168
|
+
sleep 0.5
|
169
|
+
checks += 1
|
170
|
+
end
|
171
|
+
raise 'waitfor timeout expired' if checks > 10
|
172
|
+
end
|
173
|
+
|
174
|
+
def cleanDirectory(dir)
|
175
|
+
puts 'Cleaning directory ' + dir
|
176
|
+
FileUtils.rm_rf dir;
|
177
|
+
waitfor { !exists?(dir) }
|
178
|
+
Dir.mkdir dir
|
179
|
+
end
|
180
|
+
|
181
|
+
def cleanFile(file)
|
182
|
+
File.delete file unless !File.exist?(file)
|
183
|
+
end
|
data/lib/msbuild.rb
ADDED
@@ -0,0 +1,84 @@
|
|
1
|
+
module FubuRake
|
2
|
+
class MSBuild
|
3
|
+
def self.create_task(tasks, options)
|
4
|
+
if tasks.compile == nil
|
5
|
+
return nil
|
6
|
+
end
|
7
|
+
|
8
|
+
compileTask = Rake::Task.define_task :compile do
|
9
|
+
MSBuildRunner.compile options.merge(tasks.compile)
|
10
|
+
end
|
11
|
+
|
12
|
+
compileTask.add_description "Compiles the application"
|
13
|
+
|
14
|
+
return compileTask
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
class CompileTarget
|
19
|
+
def initialize(name, solution)
|
20
|
+
@name = name
|
21
|
+
@solution = solution
|
22
|
+
end
|
23
|
+
|
24
|
+
def create(options)
|
25
|
+
compileTask = Rake::Task.define_task @name do
|
26
|
+
MSBuildRunner.compile options.merge({:solutionfile => @solution})
|
27
|
+
end
|
28
|
+
|
29
|
+
compileTask.add_description "Compiles #{@solution}"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
class MSBuildRunner
|
36
|
+
def self.compile(attributes)
|
37
|
+
compileTarget = attributes.fetch(:compilemode, 'debug')
|
38
|
+
solutionFile = attributes[:solutionfile]
|
39
|
+
|
40
|
+
attributes[:projFile] = solutionFile
|
41
|
+
attributes[:properties] ||= []
|
42
|
+
attributes[:properties] << "Configuration=#{compileTarget}"
|
43
|
+
attributes[:extraSwitches] = ["v:m", "t:rebuild"]
|
44
|
+
attributes[:extraSwitches] << "maxcpucount:2" unless Platform.is_nix
|
45
|
+
|
46
|
+
self.runProjFile(attributes);
|
47
|
+
end
|
48
|
+
|
49
|
+
def self.runProjFile(attributes)
|
50
|
+
version = attributes.fetch(:clrversion, 'v4.0.30319')
|
51
|
+
compileTarget = attributes.fetch(:compilemode, 'debug')
|
52
|
+
projFile = attributes[:projFile]
|
53
|
+
|
54
|
+
if Platform.is_nix
|
55
|
+
msbuildFile = `which xbuild`.chop
|
56
|
+
attributes[:properties] << "TargetFrameworkProfile="""""
|
57
|
+
else
|
58
|
+
frameworkDir = File.join(ENV['windir'].dup, 'Microsoft.NET', 'Framework', version)
|
59
|
+
msbuildFile = File.join(frameworkDir, 'msbuild.exe')
|
60
|
+
end
|
61
|
+
|
62
|
+
properties = attributes.fetch(:properties, [])
|
63
|
+
|
64
|
+
switchesValue = ""
|
65
|
+
|
66
|
+
properties.each do |prop|
|
67
|
+
switchesValue += " /property:#{prop}"
|
68
|
+
end
|
69
|
+
|
70
|
+
extraSwitches = attributes.fetch(:extraSwitches, [])
|
71
|
+
|
72
|
+
extraSwitches.each do |switch|
|
73
|
+
switchesValue += " /#{switch}"
|
74
|
+
end
|
75
|
+
|
76
|
+
targets = attributes.fetch(:targets, [])
|
77
|
+
targetsValue = ""
|
78
|
+
targets.each do |target|
|
79
|
+
targetsValue += " /t:#{target}"
|
80
|
+
end
|
81
|
+
|
82
|
+
sh "#{msbuildFile} #{projFile} #{targetsValue} #{switchesValue}"
|
83
|
+
end
|
84
|
+
end
|
data/lib/nuget.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
module Nuget
|
2
|
+
def self.tool(package, tool)
|
3
|
+
nugetDir = Dir.glob(File.join(package_root,"#{package}*")).sort.last
|
4
|
+
return File.join(nugetDir, "tools", tool) if File.directory?(nugetDir)
|
5
|
+
|
6
|
+
|
7
|
+
File.join(Dir.glob(File.join(package_root,"#{package}.[0-9]*")).sort.last, "tools", tool)
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.package_root
|
11
|
+
root = nil
|
12
|
+
|
13
|
+
packroots = Dir.glob("{source,src}/packages")
|
14
|
+
|
15
|
+
return packroots.last if packroots.length > 0
|
16
|
+
|
17
|
+
Dir.glob("{source,src}").each do |d|
|
18
|
+
packroot = File.join d, "packages"
|
19
|
+
FileUtils.mkdir_p(packroot)
|
20
|
+
root = packroot
|
21
|
+
end
|
22
|
+
|
23
|
+
root
|
24
|
+
end
|
25
|
+
end
|
data/lib/nunit.rb
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
module FubuRake
|
2
|
+
class NUnit
|
3
|
+
def self.create_task(tasks, options)
|
4
|
+
nunitTask = nil
|
5
|
+
if options[:unit_test_projects].any?
|
6
|
+
nunitTask = Rake::Task.define_task :unit_test do
|
7
|
+
runner = NUnitRunner.new options
|
8
|
+
runner.executeTests options[:unit_test_projects]
|
9
|
+
end
|
10
|
+
elsif options[:unit_test_list_file] != nil
|
11
|
+
file = options[:unit_test_list_file]
|
12
|
+
|
13
|
+
nunitTask = Rake::Task.define_task :unit_test do
|
14
|
+
runner = NUnitRunner.new options
|
15
|
+
runner.executeTestsInFile file
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
if nunitTask != nil
|
20
|
+
nunitTask.enhance [:compile]
|
21
|
+
nunitTask.add_description "Runs unit tests"
|
22
|
+
end
|
23
|
+
|
24
|
+
if tasks.integration_test != nil
|
25
|
+
integrationTask = Rake::Task.define_task :integration_test do
|
26
|
+
runner = NUnitRunner.new options
|
27
|
+
runner.executeTests tasks.integration_test
|
28
|
+
end
|
29
|
+
|
30
|
+
integrationTask.enhance [:compile]
|
31
|
+
integrationTask.add_description "integration tests: #{tasks.integration_test.join(', ')}"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
class NUnitRunner
|
38
|
+
include FileTest
|
39
|
+
|
40
|
+
def initialize(paths)
|
41
|
+
@sourceDir = paths.fetch(:source, 'src')
|
42
|
+
@resultsDir = paths.fetch(:results, 'results')
|
43
|
+
@compilePlatform = paths.fetch(:platform, 'x86')
|
44
|
+
@compileTarget = paths.fetch(:compilemode, 'debug')
|
45
|
+
@nunitExe = Nuget.tool("NUnit", "nunit-console#{(@compilePlatform.empty? ? '' : "-#{@compilePlatform}")}.exe") + Platform.switch("nothread")
|
46
|
+
end
|
47
|
+
|
48
|
+
def executeTests(assemblies)
|
49
|
+
Dir.mkdir @resultsDir unless exists?(@resultsDir)
|
50
|
+
|
51
|
+
assemblies.each do |assem|
|
52
|
+
file = File.expand_path("#{@sourceDir}/#{assem}/bin/#{@compileTarget}/#{assem}.dll")
|
53
|
+
sh Platform.runtime("#{@nunitExe} -xml=#{@resultsDir}/#{assem}-TestResults.xml \"#{file}\"")
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def executeTestsInFile(file)
|
58
|
+
if !File.exist?(file)
|
59
|
+
throw "File #{file} does not exist"
|
60
|
+
end
|
61
|
+
|
62
|
+
tests = Array.new
|
63
|
+
|
64
|
+
file = File.new(file, "r")
|
65
|
+
assemblies = file.readlines()
|
66
|
+
assemblies.each do |a|
|
67
|
+
test = a.gsub("\r\n", "").gsub("\n", "")
|
68
|
+
tests.push(test)
|
69
|
+
end
|
70
|
+
file.close
|
71
|
+
|
72
|
+
if (!tests.empty?)
|
73
|
+
executeTests tests
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
data/lib/platform.rb
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
module Platform
|
2
|
+
|
3
|
+
def self.is_nix
|
4
|
+
!RUBY_PLATFORM.match("linux|darwin").nil?
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.runtime(cmd)
|
8
|
+
command = cmd
|
9
|
+
if self.is_nix
|
10
|
+
runtime = (CLR_TOOLS_VERSION || "v4.0.30319")
|
11
|
+
command = "mono --runtime=#{runtime} #{cmd}"
|
12
|
+
end
|
13
|
+
command
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.switch(arg)
|
17
|
+
sw = self.is_nix ? " -" : " /"
|
18
|
+
sw + arg
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
data/lib/ripple.rb
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
module FubuRake
|
2
|
+
class Ripple
|
3
|
+
def self.create(tasks, options)
|
4
|
+
if !tasks.ripple_enabled
|
5
|
+
return
|
6
|
+
end
|
7
|
+
|
8
|
+
tasks.clean << 'artifacts'
|
9
|
+
|
10
|
+
restoreTask = Rake::Task.define_task 'ripple:restore' do
|
11
|
+
puts 'Restoring all the nuget package files'
|
12
|
+
sh 'ripple restore'
|
13
|
+
end
|
14
|
+
restoreTask.add_description "Restores nuget package files and updates all floating nugets"
|
15
|
+
|
16
|
+
updateTask = Rake::Task.define_task 'ripple:update' do
|
17
|
+
puts 'Cleaning out existing packages out of paranoia'
|
18
|
+
sh 'ripple clean'
|
19
|
+
|
20
|
+
puts 'Updating all the nuget package files'
|
21
|
+
sh 'ripple update'
|
22
|
+
end
|
23
|
+
updateTask.add_description "Updates nuget package files to the latest"
|
24
|
+
|
25
|
+
|
26
|
+
historyTask = Rake::Task.define_task 'ripple:history' do
|
27
|
+
sh 'ripple history'
|
28
|
+
end
|
29
|
+
historyTask.add_description "creates a history file for nuget dependencies"
|
30
|
+
|
31
|
+
packageTask = Rake::Task.define_task 'ripple:package' do
|
32
|
+
sh "ripple local-nuget --version #{options[:build_number]} --destination artifacts"
|
33
|
+
end
|
34
|
+
packageTask.add_description "packages the nuget files from the nuspec files in packaging/nuget and publishes to /artifacts"
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
metadata
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: fuburake
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.5.0.8
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Jeremy D. Miller
|
8
|
+
- Josh Arnold
|
9
|
+
- Joshua Flanagan
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2013-05-15 00:00:00.000000000 Z
|
14
|
+
dependencies: []
|
15
|
+
description: Rake helpers for FubuDocs, ripple, NUnit, and cross platform fubu project
|
16
|
+
development
|
17
|
+
email: fubumvc-devel@googlegroups.com
|
18
|
+
executables: []
|
19
|
+
extensions: []
|
20
|
+
extra_rdoc_files: []
|
21
|
+
files:
|
22
|
+
- lib/assembly_info.rb
|
23
|
+
- lib/bottles.rb
|
24
|
+
- lib/fubudocs.rb
|
25
|
+
- lib/fuburake.rb
|
26
|
+
- lib/msbuild.rb
|
27
|
+
- lib/nuget.rb
|
28
|
+
- lib/nunit.rb
|
29
|
+
- lib/platform.rb
|
30
|
+
- lib/ripple.rb
|
31
|
+
homepage: http://fubu-project.org
|
32
|
+
licenses:
|
33
|
+
- Apache 2
|
34
|
+
metadata: {}
|
35
|
+
post_install_message:
|
36
|
+
rdoc_options: []
|
37
|
+
require_paths:
|
38
|
+
- lib
|
39
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - ! '>='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '0'
|
49
|
+
requirements: []
|
50
|
+
rubyforge_project: fuburake
|
51
|
+
rubygems_version: 2.0.3
|
52
|
+
signing_key:
|
53
|
+
specification_version: 4
|
54
|
+
summary: Rake tasks for fubu related projects
|
55
|
+
test_files: []
|