Description
I have some doubts about default value of Ivy deliver branch.
In Ivy publish task, the publication branch value is get from property ivy.deliver.branch. If this property is not set, the default branch value (as specified in Ivy settings file) is used.
Why does the branch value specified in the module descriptior of the artifact (module.ivy) is not used before the default branch value?
For example, considering the following module.ivy file and an Ivy settings file which set the default branch to master, the described artifact will be published in master branch, not in my.branch branch.
<ivy-module version="2.0" xmlns:ea="http://www.easyant.org"> <info organisation="my.org" module="my.mod" branch="my.branch" status="integration" revision="1.0.0"> <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.+"> </ea:build> </info> <publications> </publications> <dependencies> </dependencies> </ivy-module>
But, if I explicitly set the property ivy.deliver.branch (as in the following module.ivy), artifact pub branch is my.branch.
<ivy-module version="2.0" xmlns:ea="http://www.easyant.org"> <info organisation="my.org" module="my.mod" branch="my.branch" status="integration" revision="1.0.0"> <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.+"> <ea:property name="ivy.deliver.branch" value="my.branch" /> </ea:build> </info> <publications> </publications> <dependencies> </dependencies> </ivy-module>
Is it the desired behavior ? If so, what is the point of specifying branch attribute in info tag of artifact modules ?