ivy4r 0.12.8 → 0.12.9
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/CHANGELOG +3 -0
- data/lib/buildr/ivy_extension.rb +257 -257
- data/lib/ivy/install.rb +33 -0
- data/lib/ivy/targets.rb +49 -48
- data/lib/ivy4r.rb +5 -0
- data/lib/ivy4r/version.rb +1 -1
- metadata +4 -3
data/CHANGELOG
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
=== 0.12.9 / 2011-01-17
|
2
|
+
* Added missing 'install' target, use it as defined in Ivy documentation
|
3
|
+
|
1
4
|
=== 0.12.8 / 2011-01-14
|
2
5
|
* Converted all tests to RSpec2 specs and grouped them according to functional and normal spec
|
3
6
|
* Started adding more specs to get a descent test coverage
|
data/lib/buildr/ivy_extension.rb
CHANGED
@@ -471,32 +471,32 @@ module Buildr
|
|
471
471
|
def valid_config_call?(method_name)
|
472
472
|
valid_calls = []
|
473
473
|
TYPES.each do|type|
|
474
|
-
|
475
|
-
|
474
|
+
TARGETS.each do|target|
|
475
|
+
valid_calls << type.to_s << target.to_s << "#{type}_#{target}" << "#{target}_#{type}"
|
476
|
+
end
|
477
|
+
end
|
478
|
+
valid_calls.member? method_name.to_s
|
476
479
|
end
|
477
|
-
end
|
478
|
-
valid_calls.member? method_name.to_s
|
479
|
-
end
|
480
480
|
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
481
|
+
# Sets a variable for given basename and type to given values. If values are empty returns the
|
482
|
+
# current value.
|
483
|
+
# I.e. <tt>handle_variable(:package, :include, /blua.*\.jar/, /da.*\.jar/)</tt>
|
484
|
+
def handle_variable(target, type, *values)
|
485
|
+
unless TARGETS.member?(target) && TYPES.member?(type)
|
486
|
+
raise ArgumentError, "Unknown config value for target #{target.inspect} and type #{type.inspect}"
|
487
|
+
end
|
488
|
+
if values.empty?
|
489
|
+
@target_config[target][type] ||= [Ivy.setting("#{target.to_s}.#{type.to_s}") || ''].flatten.uniq
|
490
|
+
else
|
491
|
+
@target_config[target][type] = [values].flatten.uniq
|
492
|
+
self
|
493
|
+
end
|
494
|
+
end
|
495
495
|
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
end
|
496
|
+
def post_resolve_tasks
|
497
|
+
@base_ivy ? @base_ivy.post_resolve_task_list : post_resolve_task_list
|
498
|
+
end
|
499
|
+
end
|
500
500
|
|
501
501
|
=begin rdoc
|
502
502
|
The Ivy Buildr extension adding the new tasks for ivy.
|
@@ -518,290 +518,290 @@ To use ivy in a +buildfile+ do something like:
|
|
518
518
|
|
519
519
|
For more configuration options see IvyConfig.
|
520
520
|
=end
|
521
|
-
module IvyExtension
|
522
|
-
|
521
|
+
module IvyExtension
|
522
|
+
include Buildr::Extension
|
523
523
|
|
524
|
-
|
524
|
+
class << self
|
525
525
|
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
526
|
+
def add_ivy_deps_to_java_tasks(project)
|
527
|
+
resolve_target = project.ivy.file_project.task('ivy:resolve')
|
528
|
+
project.task :compiledeps => resolve_target do
|
529
|
+
includes = project.ivy.compile_include
|
530
|
+
excludes = project.ivy.compile_exclude
|
531
|
+
types = project.ivy.compile_type
|
532
|
+
confs = [project.ivy.compile_conf].flatten
|
533
|
+
if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
|
534
|
+
project.compile.with [deps, project.compile.dependencies].flatten
|
535
|
+
sort_dependencies(project.compile.dependencies, deps, project.path_to(''))
|
536
|
+
info "Ivy adding compile dependencies '#{confs.join(', ')}' to project '#{project.name}'"
|
537
|
+
end
|
538
|
+
end
|
539
539
|
|
540
|
-
|
540
|
+
project.task :compile => "#{project.name}:compiledeps"
|
541
|
+
|
542
|
+
project.task :testdeps => resolve_target do
|
543
|
+
includes = project.ivy.test_include
|
544
|
+
excludes = project.ivy.test_exclude
|
545
|
+
types = project.ivy.test_type
|
546
|
+
confs = [project.ivy.test_conf, project.ivy.compile_conf].flatten.uniq
|
547
|
+
if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
|
548
|
+
project.test.with [deps, project.test.dependencies].flatten
|
549
|
+
sort_dependencies(project.test.dependencies, deps, project.path_to(''))
|
550
|
+
sort_dependencies(project.test.compile.dependencies, deps, project.path_to(''))
|
551
|
+
info "Ivy adding test dependencies '#{confs.join(', ')}' to project '#{project.name}'"
|
552
|
+
end
|
553
|
+
end
|
554
|
+
project.task "test:compile" => "#{project.name}:testdeps"
|
541
555
|
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
sort_dependencies(project.test.compile.dependencies, deps, project.path_to(''))
|
551
|
-
info "Ivy adding test dependencies '#{confs.join(', ')}' to project '#{project.name}'"
|
552
|
-
end
|
553
|
-
end
|
554
|
-
project.task "test:compile" => "#{project.name}:testdeps"
|
556
|
+
project.task :javadocdeps => resolve_target do
|
557
|
+
confs = [project.ivy.test_conf, project.ivy.compile_conf].flatten.uniq
|
558
|
+
if deps = project.ivy.deps(confs)
|
559
|
+
project.javadoc.with deps
|
560
|
+
info "Ivy adding javadoc dependencies '#{confs.join(', ')}' to project '#{project.name}'"
|
561
|
+
end
|
562
|
+
end
|
563
|
+
project.task :javadoc => "#{project.name}:javadocdeps"
|
555
564
|
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
project.javadoc.with deps
|
560
|
-
info "Ivy adding javadoc dependencies '#{confs.join(', ')}' to project '#{project.name}'"
|
565
|
+
[project.task(:eclipse), project.task(:idea), project.task(:idea7x)].each do |task|
|
566
|
+
task.prerequisites.each{|p| p.enhance ["#{project.name}:compiledeps", "#{project.name}:testdeps"]}
|
567
|
+
end
|
561
568
|
end
|
562
|
-
end
|
563
|
-
project.task :javadoc => "#{project.name}:javadocdeps"
|
564
|
-
|
565
|
-
[project.task(:eclipse), project.task(:idea), project.task(:idea7x)].each do |task|
|
566
|
-
task.prerequisites.each{|p| p.enhance ["#{project.name}:compiledeps", "#{project.name}:testdeps"]}
|
567
|
-
end
|
568
|
-
end
|
569
569
|
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
570
|
+
# Sorts the dependencies in #deps replacing the old order.
|
571
|
+
# Sorting is done as follows:
|
572
|
+
# 1. all dependencies that belong to the project identified by #project_path,
|
573
|
+
# .i.e. instrumented-classes, resources in the order the are contained in the array
|
574
|
+
# 2. all ivy dependencies identified by #ivy_deps
|
575
|
+
# 3. all dependencies added automatically by buildr
|
576
|
+
def sort_dependencies(deps, ivy_deps, project_path)
|
577
|
+
old_deps = deps.dup
|
578
|
+
belongs_to_project = /#{project_path}/
|
579
|
+
deps.sort! do |a, b|
|
580
|
+
a_belongs_to_project = belongs_to_project.match(a.to_s)
|
581
|
+
b_belongs_to_project = belongs_to_project.match(b.to_s)
|
582
|
+
a_ivy = ivy_deps.member? a
|
583
|
+
b_ivy = ivy_deps.member? b
|
584
584
|
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
585
|
+
if a_belongs_to_project && !b_belongs_to_project
|
586
|
+
-1
|
587
|
+
elsif !a_belongs_to_project && b_belongs_to_project
|
588
|
+
1
|
589
|
+
elsif a_ivy && !b_ivy
|
590
|
+
-1
|
591
|
+
elsif !a_ivy && b_ivy
|
592
|
+
1
|
593
|
+
else
|
594
|
+
old_deps.index(a) <=> old_deps.index(b)
|
595
|
+
end
|
596
|
+
end
|
595
597
|
end
|
596
|
-
end
|
597
|
-
end
|
598
598
|
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
599
|
+
def add_manifest_to_distributeables(project)
|
600
|
+
pkgs = project.packages.find_all { |pkg| ['jar', 'war', 'ear'].member? pkg.type.to_s }
|
601
|
+
pkgs.each do |pkg|
|
602
|
+
name = "#{pkg.name}manifest"
|
603
|
+
task = project.task name => project.ivy.file_project.task('ivy:resolve') do
|
604
|
+
if pkg.manifest # source jars have no manifest, only add to existing manifest files
|
605
|
+
pkg.with :manifest => pkg.manifest.merge(project.manifest.merge(project.ivy.manifest))
|
606
|
+
info "Adding manifest entries to package '#{pkg.name}'"
|
607
|
+
else
|
608
|
+
info "Could not merge info to package '#{pkg.to_s}' it has no manifest!"
|
609
|
+
end
|
610
|
+
end
|
611
|
+
project.task :build => task
|
609
612
|
end
|
610
613
|
end
|
611
|
-
project.task :build => task
|
612
|
-
end
|
613
|
-
end
|
614
614
|
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
615
|
+
def add_prod_libs_to_distributeables(project)
|
616
|
+
pkgs = project.packages.find_all { |pkg| ['war'].member? pkg.type.to_s }
|
617
|
+
pkgs.each do |pkg|
|
618
|
+
task = project.task "#{pkg.name}deps" => project.ivy.file_project.task('ivy:resolve') do
|
619
|
+
includes = project.ivy.package_include
|
620
|
+
excludes = project.ivy.package_exclude
|
621
|
+
types = project.ivy.package_type
|
622
|
+
confs = project.ivy.package_conf
|
623
|
+
if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
|
624
|
+
pkg.with :libs => [deps, pkg.libs].flatten
|
625
|
+
info "Adding production libs from conf '#{confs.join(', ')}' to WAR '#{pkg.name}' in project '#{project.name}'"
|
626
|
+
end
|
627
|
+
end
|
628
|
+
project.task :build => task
|
626
629
|
end
|
627
|
-
end
|
628
|
-
project.task :build => task
|
629
|
-
end
|
630
630
|
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
631
|
+
pkgs = project.packages.find_all { |pkg| ['ear'].member? pkg.type.to_s }
|
632
|
+
pkgs.each do |pkg|
|
633
|
+
task = project.task "#{pkg.name}deps" => project.ivy.file_project.task('ivy:resolve') do
|
634
|
+
includes = project.ivy.package_include
|
635
|
+
excludes = project.ivy.package_exclude
|
636
|
+
types = project.ivy.package_type
|
637
|
+
confs = project.ivy.package_conf
|
638
|
+
if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
|
639
|
+
pkg.add deps, :type => :lib, :path => ''
|
640
|
+
info "Adding production libs from conf '#{confs.join(', ')}' to EAR '#{pkg.name}' in project '#{project.name}'"
|
641
|
+
end
|
642
|
+
end
|
643
|
+
project.task :build => task
|
641
644
|
end
|
642
645
|
end
|
643
|
-
project.task :build => task
|
644
|
-
end
|
645
|
-
end
|
646
646
|
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
|
-
end
|
652
|
-
project.packages.each do |pkg|
|
653
|
-
target_file = project.ivy.publish[pkg] || File.basename(pkg.name).gsub(/-#{project.version}/, '')
|
654
|
-
taskname = ivy_project.path_to(ivy_project.ivy.publish_from, target_file)
|
655
|
-
if taskname != pkg.name
|
656
|
-
project.file taskname => pkg.name do
|
657
|
-
verbose "Ivy copying '#{pkg.name}' to '#{taskname}' for publishing"
|
658
|
-
FileUtils.mkdir_p File.dirname(taskname) unless File.directory?(File.dirname(taskname))
|
659
|
-
FileUtils.cp pkg.name, taskname
|
647
|
+
def add_copy_tasks_for_publish(project)
|
648
|
+
ivy_project = project
|
649
|
+
until ivy_project.ivy.own_file?
|
650
|
+
ivy_project = ivy_project.parent
|
660
651
|
end
|
661
|
-
|
652
|
+
project.packages.each do |pkg|
|
653
|
+
target_file = project.ivy.publish[pkg] || File.basename(pkg.name).gsub(/-#{project.version}/, '')
|
654
|
+
taskname = ivy_project.path_to(ivy_project.ivy.publish_from, target_file)
|
655
|
+
if taskname != pkg.name
|
656
|
+
project.file taskname => pkg.name do
|
657
|
+
verbose "Ivy copying '#{pkg.name}' to '#{taskname}' for publishing"
|
658
|
+
FileUtils.mkdir_p File.dirname(taskname) unless File.directory?(File.dirname(taskname))
|
659
|
+
FileUtils.cp pkg.name, taskname
|
660
|
+
end
|
661
|
+
end
|
662
662
|
|
663
|
-
|
663
|
+
ivy_project.task 'ivy:publish' => taskname
|
664
|
+
end
|
665
|
+
end
|
664
666
|
end
|
665
|
-
end
|
666
|
-
end
|
667
667
|
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
668
|
+
# Returns the +ivy+ configuration for the project. Use this to configure Ivy.
|
669
|
+
# see IvyConfig for more details about configuration options.
|
670
|
+
def ivy
|
671
|
+
@ivy_config ||= IvyConfig.new(self)
|
672
|
+
end
|
673
673
|
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
674
|
+
first_time do
|
675
|
+
namespace 'ivy' do
|
676
|
+
desc 'Resolves the ivy dependencies'
|
677
|
+
task :resolve
|
678
678
|
|
679
|
-
|
680
|
-
|
679
|
+
desc 'Publish the artifacts to ivy repository as defined by environment'
|
680
|
+
task :publish
|
681
681
|
|
682
|
-
|
683
|
-
|
682
|
+
desc 'Creates a dependency report for the project'
|
683
|
+
task :report
|
684
684
|
|
685
|
-
|
686
|
-
|
685
|
+
desc 'Clean the local Ivy cache and the local ivy repository'
|
686
|
+
task :clean
|
687
687
|
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
desc 'Clean the local Ivy result cache to force execution of ivy targets'
|
692
|
-
task :clean_result_cache
|
688
|
+
desc 'Creates default Maven POM for project from ivy.xml'
|
689
|
+
task :makepom
|
693
690
|
|
694
|
-
|
695
|
-
|
691
|
+
desc 'Clean the local Ivy result cache to force execution of ivy targets'
|
692
|
+
task :clean_result_cache
|
696
693
|
|
697
|
-
|
698
|
-
|
699
|
-
end
|
700
|
-
end
|
701
|
-
|
702
|
-
after_define do |project|
|
703
|
-
if project.ivy.enabled?
|
704
|
-
IvyExtension.add_ivy_deps_to_java_tasks(project)
|
705
|
-
IvyExtension.add_manifest_to_distributeables(project)
|
706
|
-
IvyExtension.add_prod_libs_to_distributeables(project)
|
707
|
-
IvyExtension.add_copy_tasks_for_publish(project)
|
694
|
+
desc 'Enable the local Ivy result cache by creating the marker file'
|
695
|
+
task :enable_result_cache
|
708
696
|
|
709
|
-
|
710
|
-
|
711
|
-
project.ivy.configure
|
697
|
+
desc 'Disable the local Ivy result cache by removing the marker file'
|
698
|
+
task :disable_result_cache
|
712
699
|
end
|
700
|
+
end
|
701
|
+
|
702
|
+
after_define do |project|
|
703
|
+
if project.ivy.enabled?
|
704
|
+
IvyExtension.add_ivy_deps_to_java_tasks(project)
|
705
|
+
IvyExtension.add_manifest_to_distributeables(project)
|
706
|
+
IvyExtension.add_prod_libs_to_distributeables(project)
|
707
|
+
IvyExtension.add_copy_tasks_for_publish(project)
|
708
|
+
|
709
|
+
namespace 'ivy' do
|
710
|
+
task :configure do
|
711
|
+
project.ivy.configure
|
712
|
+
end
|
713
713
|
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
714
|
+
task :clean => :configure do
|
715
|
+
# TODO This is redundant, refactor ivy_ant_wrap and this to use a single config object
|
716
|
+
rm_rf project.path_to(:reports, 'ivy')
|
717
|
+
project.ivy.cleancache
|
718
|
+
end
|
719
719
|
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
720
|
+
task :clean_result_cache do
|
721
|
+
project.send(:info, "Deleting IVY result cache dir '#{project.ivy.result_cache_dir}'")
|
722
|
+
rm_rf project.ivy.result_cache_dir
|
723
|
+
end
|
724
724
|
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
|
725
|
+
task :enable_result_cache do
|
726
|
+
project.send(:info, "Creating IVY caching marker file '#{project.ivy.caching_marker}'")
|
727
|
+
touch project.ivy.caching_marker
|
728
|
+
end
|
729
729
|
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
730
|
+
task :disable_result_cache do
|
731
|
+
project.send(:info, "Deleting IVY caching marker file '#{project.ivy.caching_marker}'")
|
732
|
+
rm_f project.ivy.caching_marker
|
733
|
+
end
|
734
734
|
|
735
|
-
|
736
|
-
|
737
|
-
|
735
|
+
task :resolve => "#{project.name}:ivy:configure" do
|
736
|
+
project.ivy.__resolve__
|
737
|
+
end
|
738
738
|
|
739
|
-
|
740
|
-
|
741
|
-
|
739
|
+
task :report => "#{project.name}:ivy:resolve" do
|
740
|
+
project.ivy.report
|
741
|
+
end
|
742
742
|
|
743
|
-
|
744
|
-
|
745
|
-
|
743
|
+
task :publish => "#{project.name}:ivy:resolve" do
|
744
|
+
project.ivy.__publish__
|
745
|
+
end
|
746
746
|
|
747
|
-
|
748
|
-
|
747
|
+
task :makepom => "#{project.name}:ivy:resolve" do
|
748
|
+
project.ivy.makepom
|
749
|
+
end
|
750
|
+
end
|
749
751
|
end
|
750
752
|
end
|
751
753
|
end
|
752
|
-
end
|
753
|
-
end
|
754
754
|
|
755
|
-
# Global targets that are not bound to a project
|
756
|
-
namespace 'ivy' do
|
757
|
-
|
758
|
-
|
759
|
-
|
760
|
-
|
761
|
-
|
755
|
+
# Global targets that are not bound to a project
|
756
|
+
namespace 'ivy' do
|
757
|
+
task :clean do
|
758
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
759
|
+
project.task('ivy:clean').invoke
|
760
|
+
end
|
761
|
+
end
|
762
762
|
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
763
|
+
task :clean_result_cache do
|
764
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
765
|
+
project.task('ivy:clean_result_cache').invoke
|
766
|
+
end
|
767
|
+
end
|
768
768
|
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
769
|
+
task :enable_result_cache do
|
770
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
771
|
+
project.task('ivy:enable_result_cache').invoke
|
772
|
+
end
|
773
|
+
end
|
774
774
|
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
775
|
+
task :disable_result_cache do
|
776
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
777
|
+
project.task('ivy:disable_result_cache').invoke
|
778
|
+
end
|
779
|
+
end
|
780
780
|
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
781
|
+
task :resolve do
|
782
|
+
info "Resolving all distinct ivy files"
|
783
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
784
|
+
project.task('ivy:resolve').invoke
|
785
|
+
end
|
786
|
+
end
|
787
787
|
|
788
|
-
|
789
|
-
|
790
|
-
|
791
|
-
|
788
|
+
task :publish => :package do
|
789
|
+
info "Publishing all distinct ivy files"
|
790
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
791
|
+
project.task('ivy:publish').invoke
|
792
|
+
end
|
793
|
+
end
|
794
|
+
|
795
|
+
task :makepom => :resolve do
|
796
|
+
info "Create Maven POMs for all projects with distinct ivy files"
|
797
|
+
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
798
|
+
project.task('ivy:makepom').invoke
|
799
|
+
end
|
800
|
+
end
|
792
801
|
end
|
793
|
-
end
|
794
802
|
|
795
|
-
|
796
|
-
|
797
|
-
Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
|
798
|
-
project.task('ivy:makepom').invoke
|
803
|
+
class Buildr::Project # :nodoc:
|
804
|
+
include IvyExtension
|
799
805
|
end
|
800
806
|
end
|
801
807
|
end
|
802
|
-
|
803
|
-
class Buildr::Project # :nodoc:
|
804
|
-
include IvyExtension
|
805
|
-
end
|
806
|
-
end
|
807
|
-
end
|
data/lib/ivy/install.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'ivy/target'
|
2
|
+
|
3
|
+
module Ivy
|
4
|
+
class Install < Ivy::Target
|
5
|
+
def parameter
|
6
|
+
[
|
7
|
+
Parameter.new(:from, true),
|
8
|
+
Parameter.new(:to, true),
|
9
|
+
Parameter.new(:organisation, true),
|
10
|
+
Parameter.new(:module, true),
|
11
|
+
Parameter.new(:branch, false),
|
12
|
+
Parameter.new(:revision, true),
|
13
|
+
Parameter.new(:type, false),
|
14
|
+
Parameter.new(:validate, false),
|
15
|
+
Parameter.new(:overwrite, false),
|
16
|
+
Parameter.new(:transitive, false),
|
17
|
+
Parameter.new(:matcher, false),
|
18
|
+
Parameter.new(:settingsRef, false),
|
19
|
+
Parameter.new(:haltonfailure, false)
|
20
|
+
]
|
21
|
+
end
|
22
|
+
|
23
|
+
protected
|
24
|
+
def execute_ivy
|
25
|
+
call_nested :ivy_install => params
|
26
|
+
end
|
27
|
+
|
28
|
+
def create_return_values
|
29
|
+
nil
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
data/lib/ivy/targets.rb
CHANGED
@@ -1,49 +1,50 @@
|
|
1
|
-
require 'ivy/target'
|
2
|
-
require 'ivy/info'
|
3
|
-
require 'ivy/settings'
|
4
|
-
require 'ivy/configure'
|
5
|
-
require 'ivy/cleancache'
|
6
|
-
require 'ivy/resolve'
|
7
|
-
require 'ivy/makepom'
|
8
|
-
require 'ivy/cachepath'
|
9
|
-
#require 'ivy/listmodules'
|
10
|
-
require 'ivy/artifactproperty'
|
11
|
-
require 'ivy/artifactreport'
|
12
|
-
require 'ivy/findrevision'
|
13
|
-
require 'ivy/
|
14
|
-
require 'ivy/
|
15
|
-
require 'ivy/
|
16
|
-
require 'ivy/
|
17
|
-
require 'ivy/
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
*
|
23
|
-
*
|
24
|
-
*
|
25
|
-
*
|
26
|
-
*
|
27
|
-
*
|
28
|
-
*
|
29
|
-
*
|
30
|
-
*
|
31
|
-
*
|
32
|
-
*
|
33
|
-
*
|
34
|
-
*
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
*
|
41
|
-
*
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
*
|
1
|
+
require 'ivy/target'
|
2
|
+
require 'ivy/info'
|
3
|
+
require 'ivy/settings'
|
4
|
+
require 'ivy/configure'
|
5
|
+
require 'ivy/cleancache'
|
6
|
+
require 'ivy/resolve'
|
7
|
+
require 'ivy/makepom'
|
8
|
+
require 'ivy/cachepath'
|
9
|
+
#require 'ivy/listmodules'
|
10
|
+
require 'ivy/artifactproperty'
|
11
|
+
require 'ivy/artifactreport'
|
12
|
+
require 'ivy/findrevision'
|
13
|
+
require 'ivy/install'
|
14
|
+
require 'ivy/buildnumber'
|
15
|
+
require 'ivy/retrieve'
|
16
|
+
require 'ivy/publish'
|
17
|
+
require 'ivy/report'
|
18
|
+
require 'ivy/buildlist'
|
19
|
+
|
20
|
+
=begin
|
21
|
+
finished
|
22
|
+
* info
|
23
|
+
* settings
|
24
|
+
* configure
|
25
|
+
* cleancache
|
26
|
+
* buildnumber
|
27
|
+
* findrevision
|
28
|
+
* cachepath
|
29
|
+
* artifactreport
|
30
|
+
* resolve
|
31
|
+
* makepom
|
32
|
+
* retrieve
|
33
|
+
* publish
|
34
|
+
* artifactproperty
|
35
|
+
* report
|
36
|
+
o Using yEd to layout report graphs
|
37
|
+
* buildlist
|
38
|
+
|
39
|
+
TODO
|
40
|
+
* deliver
|
41
|
+
* install
|
42
|
+
* repreport
|
43
|
+
|
44
|
+
not working:
|
45
|
+
* listmodules
|
46
|
+
|
47
|
+
makes no sense:
|
48
|
+
* cachefileset
|
49
|
+
* var
|
49
50
|
=end
|
data/lib/ivy4r.rb
CHANGED
@@ -148,6 +148,11 @@ class Ivy4r
|
|
148
148
|
def findrevision(*params)
|
149
149
|
Ivy::Findrevision.new(ant, cache_dir).execute(*params)
|
150
150
|
end
|
151
|
+
|
152
|
+
# Calls the __install__ ivy target with given parameters always returns nil
|
153
|
+
def install(*params)
|
154
|
+
Ivy::Install.new(ant, cache_dir).execute(*params)
|
155
|
+
end
|
151
156
|
|
152
157
|
# Calls the __artifactproperty__ ivy target with given parameters and returns
|
153
158
|
# map with all defined properties
|
data/lib/ivy4r/version.rb
CHANGED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 12
|
8
|
-
-
|
9
|
-
version: 0.12.
|
8
|
+
- 9
|
9
|
+
version: 0.12.9
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Klaas Reineke
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-01-
|
17
|
+
date: 2011-01-17 00:00:00 +01:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -145,6 +145,7 @@ files:
|
|
145
145
|
- lib/ivy/configure.rb
|
146
146
|
- lib/ivy/findrevision.rb
|
147
147
|
- lib/ivy/info.rb
|
148
|
+
- lib/ivy/install.rb
|
148
149
|
- lib/ivy/java/all_version_matcher.rb
|
149
150
|
- lib/ivy/java/java_object_wrapper.rb
|
150
151
|
- lib/ivy/listmodules.rb
|