klaas1979-ivy4r 0.1.0
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.
- data/History.txt +5 -0
- data/Manifest.txt +35 -0
- data/README.txt +91 -0
- data/Rakefile +24 -0
- data/bin/ivy4r +0 -0
- data/lib/ivy/artifactproperty.rb +34 -0
- data/lib/ivy/artifactreport.rb +24 -0
- data/lib/ivy/buildlist.rb +37 -0
- data/lib/ivy/buildnumber.rb +34 -0
- data/lib/ivy/cachepath.rb +30 -0
- data/lib/ivy/cleancache.rb +20 -0
- data/lib/ivy/configure.rb +29 -0
- data/lib/ivy/findrevision.rb +34 -0
- data/lib/ivy/info.rb +36 -0
- data/lib/ivy/listmodules.rb +35 -0
- data/lib/ivy/makepom.rb +23 -0
- data/lib/ivy/publish.rb +37 -0
- data/lib/ivy/report.rb +33 -0
- data/lib/ivy/resolve.rb +44 -0
- data/lib/ivy/retrieve.rb +27 -0
- data/lib/ivy/settings.rb +15 -0
- data/lib/ivy/target.rb +122 -0
- data/lib/ivy/targets.rb +49 -0
- data/lib/ivy4r.rb +176 -0
- data/test/buildlist/p1/buildfile +0 -0
- data/test/buildlist/p1/ivy.xml +7 -0
- data/test/buildlist/sub/p2/buildfile +0 -0
- data/test/buildlist/sub/p2/ivy.xml +11 -0
- data/test/buildlist/sub/p3/buildfile +0 -0
- data/test/buildlist/sub/p3/ivy.xml +11 -0
- data/test/ivy/ivysettings.xml +11 -0
- data/test/ivy/ivytest.xml +18 -0
- data/test/ivy/test_target.rb +97 -0
- data/test/ivy/test_targets.rb +36 -0
- data/test/test_ivy4r.rb +196 -0
- metadata +112 -0
File without changes
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<?xml-stylesheet type="text/xsl" href="http://www.ivyrep.org/ivy-doc.xsl"?>
|
3
|
+
<ivy-module version="1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
+
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd">
|
5
|
+
|
6
|
+
<info organisation="blau" module="p1" revision="1.0" />
|
7
|
+
</ivy-module>
|
File without changes
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<?xml-stylesheet type="text/xsl" href="http://www.ivyrep.org/ivy-doc.xsl"?>
|
3
|
+
<ivy-module version="1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
+
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd">
|
5
|
+
|
6
|
+
<info organisation="blau" module="p2" revision="1.1" />
|
7
|
+
|
8
|
+
<dependencies>
|
9
|
+
<dependency org="blau" name="p1" rev="1.0" conf="*->default" />
|
10
|
+
</dependencies>
|
11
|
+
</ivy-module>
|
File without changes
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<?xml-stylesheet type="text/xsl" href="http://www.ivyrep.org/ivy-doc.xsl"?>
|
3
|
+
<ivy-module version="1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
+
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd">
|
5
|
+
|
6
|
+
<info organisation="blau" module="p3" revision="1.1" />
|
7
|
+
|
8
|
+
<dependencies>
|
9
|
+
<dependency org="blau" name="p2" rev="1.1" conf="*->default" />
|
10
|
+
</dependencies>
|
11
|
+
</ivy-module>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<ivysettings>
|
2
|
+
<property name="myparam" value="myvalue" />
|
3
|
+
<settings defaultCache="/tmp" defaultResolver="ibiblio" checkUpToDate="false" />
|
4
|
+
<resolvers>
|
5
|
+
<ibiblio name="ibiblio" />
|
6
|
+
<filesystem name="internal">
|
7
|
+
<ivy pattern="/tmp/[module]/ivy-[revision].xml" />
|
8
|
+
<artifact pattern="/tmp/[module]/[artifact]-[revision].[ext]" />
|
9
|
+
</filesystem>
|
10
|
+
</resolvers>
|
11
|
+
</ivysettings>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<?xml-stylesheet type="text/xsl" href="http://www.ivyrep.org/ivy-doc.xsl"?>
|
3
|
+
<ivy-module version="1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
+
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd">
|
5
|
+
|
6
|
+
<info organisation="blau" module="testmodule" revision="2.20.0" />
|
7
|
+
|
8
|
+
<configurations defaultconfmapping="client">
|
9
|
+
<conf name="deploy" description="Contains the deployable artifacts for the Project." />
|
10
|
+
<conf name="reports" description="Contains all buildreports for the Project." />
|
11
|
+
<conf name="basic" visibility="private" description="Basic dependencies needed for all configurations."/>
|
12
|
+
<conf name="test" extends="basic" visibility="private" description="Only needed for testing of project."/>
|
13
|
+
</configurations>
|
14
|
+
|
15
|
+
<dependencies>
|
16
|
+
<dependency org="oro" name="oro" rev="2.0.8" conf="*->default" />
|
17
|
+
</dependencies>
|
18
|
+
</ivy-module>
|
@@ -0,0 +1,97 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__),'..','..','lib')
|
2
|
+
|
3
|
+
require 'test/unit'
|
4
|
+
require 'rr'
|
5
|
+
require 'ivy/target'
|
6
|
+
|
7
|
+
class Test::Unit::TestCase
|
8
|
+
include RR::Adapters::TestUnit
|
9
|
+
end
|
10
|
+
|
11
|
+
module Ivy
|
12
|
+
class TargetTest < Test::Unit::TestCase
|
13
|
+
|
14
|
+
def setup
|
15
|
+
Ivy::Target.send("public", :call_nested)
|
16
|
+
@ant = Object.new
|
17
|
+
@target = Ivy::Target.new(@ant)
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_call_nested_simple
|
21
|
+
nested = {
|
22
|
+
:fileset => {
|
23
|
+
:includes => 'bla',
|
24
|
+
:excludes => 'blub',
|
25
|
+
:dir => 'anything'
|
26
|
+
}
|
27
|
+
}
|
28
|
+
mock(@ant).fileset(nested[:fileset])
|
29
|
+
|
30
|
+
@target.call_nested(nested)
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_call_nested_multiply
|
34
|
+
nested = {
|
35
|
+
:fileset => {
|
36
|
+
:includes => 'bla',
|
37
|
+
:excludes => 'blub',
|
38
|
+
:dir => 'anything'
|
39
|
+
},
|
40
|
+
:other => {
|
41
|
+
:param => 'myparam'
|
42
|
+
}
|
43
|
+
}
|
44
|
+
mock(@ant).fileset nested[:fileset]
|
45
|
+
mock(@ant).other nested[:other]
|
46
|
+
|
47
|
+
@target.call_nested(nested)
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_call_nested_list_with_same_method
|
51
|
+
nested = {
|
52
|
+
:fileset => [
|
53
|
+
{
|
54
|
+
:includes => 'bla',
|
55
|
+
:excludes => 'blub',
|
56
|
+
:dir => 'anything'
|
57
|
+
},
|
58
|
+
{
|
59
|
+
:includes => 'otherbla',
|
60
|
+
:excludes => 'otherblub',
|
61
|
+
:dir => 'otheranything'
|
62
|
+
}
|
63
|
+
]
|
64
|
+
}
|
65
|
+
mock(@ant).fileset nested[:fileset][0]
|
66
|
+
mock(@ant).fileset nested[:fileset][1]
|
67
|
+
|
68
|
+
@target.call_nested(nested)
|
69
|
+
end
|
70
|
+
|
71
|
+
def test_call_recursive_nested
|
72
|
+
nested = {
|
73
|
+
:taskdef =>
|
74
|
+
{
|
75
|
+
:name => 'bla',
|
76
|
+
:nested => {
|
77
|
+
:fileset => {
|
78
|
+
:includes => 'bla',
|
79
|
+
:excludes => 'blub',
|
80
|
+
:dir => 'anything'}
|
81
|
+
}
|
82
|
+
}
|
83
|
+
}
|
84
|
+
|
85
|
+
# define the method that yields if a block is given, to test the nested stuff
|
86
|
+
def @ant.taskdef(p)
|
87
|
+
raise "Invalid params to many" unless p.size == 1
|
88
|
+
raise "Wrong parameter value" unless 'bla' == p[:name]
|
89
|
+
raise "missing block for method" unless block_given?
|
90
|
+
yield
|
91
|
+
end
|
92
|
+
mock(@ant).fileset nested[:taskdef][:nested][:fileset]
|
93
|
+
|
94
|
+
@target.call_nested(nested)
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__),'..','..','lib')
|
2
|
+
|
3
|
+
require 'test/unit'
|
4
|
+
require 'ivy/targets'
|
5
|
+
require 'ivy4r'
|
6
|
+
|
7
|
+
module Ivy
|
8
|
+
class TargetsTest < Test::Unit::TestCase
|
9
|
+
|
10
|
+
def setup
|
11
|
+
ivy4r = Ivy4r.new
|
12
|
+
ivy4r.ant_home = File.join(File.dirname(__FILE__), '..', '..', 'jars')
|
13
|
+
ivy4r.lib_dir = ivy4r.ant_home
|
14
|
+
@ivy_test_xml = File.join(File.dirname(__FILE__), 'ivytest.xml')
|
15
|
+
@info = Ivy::Info.new(ivy4r.ant)
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_execute_empty_parameters_missing_mandatory_exception
|
19
|
+
assert_raise(ArgumentError) { @info.execute({}) }
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_execute_validate_with_unkown_parameter_exception
|
23
|
+
assert_raise(ArgumentError) { @info.execute(:unknown_parameter => 'unknown') }
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_execute_simple_file_correct_return_values
|
27
|
+
result = @info.execute(:file => @ivy_test_xml)
|
28
|
+
|
29
|
+
assert_not_nil result
|
30
|
+
%w[ivy.organisation ivy.revision ivy.module].each do |var|
|
31
|
+
assert_equal true, result.keys.member?(var), "Contains key '#{var}', has '#{result.keys.join(', ')}'"
|
32
|
+
end
|
33
|
+
assert_equal 'blau', result['ivy.organisation']
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
data/test/test_ivy4r.rb
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__),'..','..','lib')
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'test/unit'
|
5
|
+
require 'ivy4r'
|
6
|
+
require 'antwrap'
|
7
|
+
require 'fileutils'
|
8
|
+
|
9
|
+
module Ivy
|
10
|
+
class Ivy4rTest < Test::Unit::TestCase
|
11
|
+
|
12
|
+
def setup
|
13
|
+
@ivy4r = Ivy4r.new
|
14
|
+
@ivy4r.ant_home = File.join(File.dirname(__FILE__), '..', 'jars')
|
15
|
+
@ivy4r.lib_dir = @ivy4r.ant_home
|
16
|
+
@ivy_test_xml = File.join(File.dirname(__FILE__), 'ivy', 'ivytest.xml')
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_ant_returns_default_wrapper
|
20
|
+
assert_not_nil @ivy4r.ant
|
21
|
+
assert_kind_of ::Antwrap::AntProject, @ivy4r.ant
|
22
|
+
assert_equal Dir.pwd, @ivy4r.ant.basedir
|
23
|
+
assert_equal true, @ivy4r.ant.declarative
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_ant_returns_always_same_instance
|
27
|
+
first = @ivy4r.ant
|
28
|
+
second = @ivy4r.ant
|
29
|
+
assert_same first, second
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_ant_returns_set_instance_if_provided
|
33
|
+
provided = "bla"
|
34
|
+
@ivy4r.ant = provided
|
35
|
+
@ivy4r.instance_eval("@init_done = true")
|
36
|
+
assert_equal provided, @ivy4r.ant
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_cleancache_returns_nil
|
40
|
+
result = @ivy4r.cleancache
|
41
|
+
|
42
|
+
assert_nil result
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_info_returns_values_for_file
|
46
|
+
result = @ivy4r.info :file => @ivy_test_xml
|
47
|
+
|
48
|
+
assert_not_nil result
|
49
|
+
assert_equal 'blau', result['ivy.organisation']
|
50
|
+
end
|
51
|
+
|
52
|
+
def test_buildnumber_returns_infos
|
53
|
+
result = @ivy4r.buildnumber :organisation => 'oro', :module => 'oro'
|
54
|
+
|
55
|
+
assert_not_nil result
|
56
|
+
assert_equal '2.0.8', result['ivy.revision']
|
57
|
+
assert_equal '2.0.9', result['ivy.new.revision']
|
58
|
+
assert_equal '8', result['ivy.build.number']
|
59
|
+
assert_equal '9', result['ivy.new.build.number']
|
60
|
+
end
|
61
|
+
|
62
|
+
def test_settings_returns_nil
|
63
|
+
result = @ivy4r.settings :file => File.join(File.dirname(__FILE__), 'ivy', 'ivysettings.xml')
|
64
|
+
|
65
|
+
assert_nil result
|
66
|
+
end
|
67
|
+
|
68
|
+
def test_configure_returns_custom_properties
|
69
|
+
result = @ivy4r.configure :file => File.join(File.dirname(__FILE__), 'ivy', 'ivysettings.xml')
|
70
|
+
|
71
|
+
assert_not_nil result
|
72
|
+
assert_equal 'myvalue', result['myparam.ivy.instance']
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_property_setting_getting_to_from_ant
|
76
|
+
# use a java hashmap for testing!!
|
77
|
+
@ivy4r.instance_eval("def ant_properties;@ant_properties||=java.util.HashMap.new;end")
|
78
|
+
name, value = 'name', 'value'
|
79
|
+
@ivy4r.property[name] = value
|
80
|
+
|
81
|
+
assert_equal value, @ivy4r.property[name]
|
82
|
+
end
|
83
|
+
|
84
|
+
def test_resolve_values_for_file
|
85
|
+
result = @ivy4r.resolve :file => @ivy_test_xml
|
86
|
+
|
87
|
+
assert_not_nil result
|
88
|
+
assert_equal 'blau', result['ivy.organisation']
|
89
|
+
assert_equal 4, result['ivy.resolved.configurations'].size, "has: #{result['ivy.resolved.configurations'].join(', ')}"
|
90
|
+
end
|
91
|
+
|
92
|
+
def test_cachepath_using_previous_resolve_contains_jar
|
93
|
+
@ivy4r.resolve :organisation => "oro", :module => "oro", :revision => "2.0.8", :keep => true, :inline => true
|
94
|
+
result = @ivy4r.cachepath :pathid => 'mytestpathid'
|
95
|
+
|
96
|
+
assert_not_nil result
|
97
|
+
assert result.any? {|a| a =~ /.*oro.*\.jar/ && a =~ /.*2\.0\.8*/ }
|
98
|
+
end
|
99
|
+
|
100
|
+
def test_cachepath_with_resolve_contains_jars
|
101
|
+
result = @ivy4r.cachepath :organisation => "oro", :module => "oro", :revision => "2.0.8", :inline => true, :pathid => 'mytestpathid'
|
102
|
+
|
103
|
+
assert_not_nil result
|
104
|
+
assert result.any? {|a| a =~ /.*oro.*\.jar/ && a =~ /.*2\.0\.8*/ }
|
105
|
+
end
|
106
|
+
|
107
|
+
def test_findrevision_found_correct_version
|
108
|
+
result = @ivy4r.findrevision :organisation => "oro", :module => "oro", :revision => "2.0.8"
|
109
|
+
|
110
|
+
assert_equal '2.0.8', result
|
111
|
+
end
|
112
|
+
|
113
|
+
def test_findrevision_not_found_nil
|
114
|
+
result = @ivy4r.findrevision :organisation => "oro", :module => "oro", :revision => "1unknown1"
|
115
|
+
|
116
|
+
assert_nil result
|
117
|
+
end
|
118
|
+
|
119
|
+
def test_artifactproperty_deps_contained
|
120
|
+
@ivy4r.resolve :file => @ivy_test_xml
|
121
|
+
result = @ivy4r.artifactproperty :name => '[organisation]-[module]', :value => '[revision]'
|
122
|
+
|
123
|
+
assert_not_nil result
|
124
|
+
assert result.any? {|k,v| k == 'oro-oro' && v == '2.0.8' }
|
125
|
+
end
|
126
|
+
|
127
|
+
def test_artifactreport_xml_returned
|
128
|
+
target = File.join(Dir.pwd, "temp_test#{Time.new.strftime('%Y%m%d%H%M%S')}")
|
129
|
+
FileUtils.mkdir(target)
|
130
|
+
@ivy4r.resolve :file => @ivy_test_xml
|
131
|
+
result = @ivy4r.artifactreport :tofile => File.join(target, 'test.xml')
|
132
|
+
|
133
|
+
assert_not_nil result
|
134
|
+
assert result =~ /.*<module organisation="oro".*/
|
135
|
+
ensure
|
136
|
+
FileUtils.rm_rf target
|
137
|
+
end
|
138
|
+
|
139
|
+
def test_retrieve_created_dir_with_artifacts
|
140
|
+
target = File.join(Dir.pwd, "temp_test#{Time.new.strftime('%Y%m%d%H%M%S')}")
|
141
|
+
FileUtils.mkdir(target)
|
142
|
+
@ivy4r.resolve :file => @ivy_test_xml
|
143
|
+
result = @ivy4r.retrieve :pattern => "#{target}/[organisation]/[module].[ext]"
|
144
|
+
|
145
|
+
assert_nil result
|
146
|
+
assert Dir.glob(File.join(target, '**/oro.jar')).size > 0, "Contains the artifacts"
|
147
|
+
ensure
|
148
|
+
FileUtils.rm_rf target
|
149
|
+
end
|
150
|
+
|
151
|
+
def test_report_created_reports
|
152
|
+
target = File.join(Dir.pwd, "temp_test#{Time.new.strftime('%Y%m%d%H%M%S')}")
|
153
|
+
FileUtils.mkdir(target)
|
154
|
+
@ivy4r.resolve :file => @ivy_test_xml
|
155
|
+
result = @ivy4r.report :todir => target
|
156
|
+
|
157
|
+
assert_nil result
|
158
|
+
assert Dir.glob(File.join(target, '**/*')).size > 0, "Contains the reports"
|
159
|
+
ensure
|
160
|
+
FileUtils.rm_rf target
|
161
|
+
end
|
162
|
+
|
163
|
+
def test_buildlist_correct_list
|
164
|
+
target = File.join(File.dirname(__FILE__), "buildlist")
|
165
|
+
result = @ivy4r.buildlist :reference => 'testpath', :nested => {
|
166
|
+
:fileset => [
|
167
|
+
{:dir => File.join(target, "sub"), :includes => '**/buildfile'},
|
168
|
+
{:dir => File.join(target, "p1"), :includes => 'buildfile'}
|
169
|
+
]
|
170
|
+
}
|
171
|
+
|
172
|
+
assert_equal 3, result.size
|
173
|
+
result.map! { |file| File.expand_path(file) }
|
174
|
+
assert_equal File.expand_path(File.join(target, "p1", "buildfile")), result[0]
|
175
|
+
assert_equal File.expand_path(File.join(target, "sub", "p2", "buildfile")), result[1]
|
176
|
+
assert_equal File.expand_path(File.join(target, "sub", "p3", "buildfile")), result[2]
|
177
|
+
end
|
178
|
+
|
179
|
+
def test_makepom_returns_content
|
180
|
+
target = File.join(File.dirname(__FILE__), "testpom.xml")
|
181
|
+
result = @ivy4r.makepom :ivyfile => @ivy_test_xml, :pomfile => target, :nested => {
|
182
|
+
:mapping => {:conf => 'default', :scope => 'runtime' }
|
183
|
+
}
|
184
|
+
|
185
|
+
assert_equal IO.read(target), result
|
186
|
+
ensure
|
187
|
+
FileUtils.rm target
|
188
|
+
end
|
189
|
+
|
190
|
+
#def test_listmodules_lists_ivy_stuff
|
191
|
+
# result = @antwrap.listmodules :organisation => '*apache*', :module => '*ivy*', :revision => '2.*',
|
192
|
+
# :matcher => 'glob', :property => 'rums-[organisation][module]', :value => 'found'
|
193
|
+
# assert result.find {|k,v| k =~ /rums-/ && v == 'found'}, "found: #{result.inspect}"
|
194
|
+
#end
|
195
|
+
end
|
196
|
+
end
|
metadata
ADDED
@@ -0,0 +1,112 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: klaas1979-ivy4r
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Klaas Prause
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-06-17 00:00:00 -07:00
|
13
|
+
default_executable: ivy4r
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: Antwrap
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.7.0
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: hoe
|
27
|
+
type: :development
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 2.1.0
|
34
|
+
version:
|
35
|
+
description: Apache Ivy dependency manager wrapper for ruby (see http://ant.apache.org/ivy/index.html for more information).Use Ivy via a ruby wrapper without the need to use Apache Ant. The wrapper uses Antwrap (see http://antwrap.rubyforge.org/) to interface with Ivy.
|
36
|
+
email:
|
37
|
+
- klaas.prause@googlemail.com
|
38
|
+
executables:
|
39
|
+
- ivy4r
|
40
|
+
extensions: []
|
41
|
+
|
42
|
+
extra_rdoc_files:
|
43
|
+
- History.txt
|
44
|
+
- Manifest.txt
|
45
|
+
- README.txt
|
46
|
+
files:
|
47
|
+
- History.txt
|
48
|
+
- Manifest.txt
|
49
|
+
- README.txt
|
50
|
+
- Rakefile
|
51
|
+
- lib/ivy/artifactproperty.rb
|
52
|
+
- lib/ivy/artifactreport.rb
|
53
|
+
- lib/ivy/buildlist.rb
|
54
|
+
- lib/ivy/buildnumber.rb
|
55
|
+
- lib/ivy/cachepath.rb
|
56
|
+
- lib/ivy/cleancache.rb
|
57
|
+
- lib/ivy/configure.rb
|
58
|
+
- lib/ivy/findrevision.rb
|
59
|
+
- lib/ivy/info.rb
|
60
|
+
- lib/ivy/listmodules.rb
|
61
|
+
- lib/ivy/makepom.rb
|
62
|
+
- lib/ivy/publish.rb
|
63
|
+
- lib/ivy/report.rb
|
64
|
+
- lib/ivy/resolve.rb
|
65
|
+
- lib/ivy/retrieve.rb
|
66
|
+
- lib/ivy/settings.rb
|
67
|
+
- lib/ivy/target.rb
|
68
|
+
- lib/ivy/targets.rb
|
69
|
+
- lib/ivy4r.rb
|
70
|
+
- test/buildlist/p1/buildfile
|
71
|
+
- test/buildlist/p1/ivy.xml
|
72
|
+
- test/buildlist/sub/p2/buildfile
|
73
|
+
- test/buildlist/sub/p2/ivy.xml
|
74
|
+
- test/buildlist/sub/p3/buildfile
|
75
|
+
- test/buildlist/sub/p3/ivy.xml
|
76
|
+
- test/ivy/ivysettings.xml
|
77
|
+
- test/ivy/ivytest.xml
|
78
|
+
- test/ivy/test_target.rb
|
79
|
+
- test/ivy/test_targets.rb
|
80
|
+
- test/test_ivy4r.rb
|
81
|
+
has_rdoc: true
|
82
|
+
homepage: http://github.com/klaas1979/ivy4r/tree/master
|
83
|
+
post_install_message:
|
84
|
+
rdoc_options:
|
85
|
+
- --main
|
86
|
+
- README.txt
|
87
|
+
- --charset=UTF-8
|
88
|
+
require_paths:
|
89
|
+
- lib
|
90
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
91
|
+
requirements:
|
92
|
+
- - ">="
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: "0"
|
95
|
+
version:
|
96
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
97
|
+
requirements:
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: "0"
|
101
|
+
version:
|
102
|
+
requirements: []
|
103
|
+
|
104
|
+
rubyforge_project: ivy4r
|
105
|
+
rubygems_version: 1.2.0
|
106
|
+
signing_key:
|
107
|
+
specification_version: 3
|
108
|
+
summary: Apache Ivy dependency manager wrapper for ruby (see http://ant.apache.org/ivy/index.html for more information).Use Ivy via a ruby wrapper without the need to use Apache Ant
|
109
|
+
test_files:
|
110
|
+
- test/test_ivy4r.rb
|
111
|
+
- test/ivy/test_target.rb
|
112
|
+
- test/ivy/test_targets.rb
|