ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Seaborne, Andy" <andy.seabo...@hp.com>
Subject Experience with ivy from SVN (2008-09-16)
Date Tue, 16 Sep 2008 16:43:10 GMT
Hi there,

I just tried building ivy from SVN then using it on a project.  I had two minor problems which
don't seem to be in the CHANGES file (but I'm a beginner with Ivy so they may be expressed
in language I didn't grok) and one case of something seeming wrong in 2.0.0-beta and SVN.

Are these intentional changes or am I unlucky?

Ant 1.7.1
Ivy 20080916162121
Java: 1.6.0_07
Vista (up to date)
Cygwin (up to date as of last week)


1/ sftp resolver

UNIX style file name for key file no longer accepted.

Running on Cygwin on Windows Vista

With the SVN build:
...
[ivy:resolve] :: Ivy 2.0.0-rc1-local-20080916162121 - 20080916162121 :: http://ant.apache.org/ivy/
::
:: loading settings :: file = c:\home\afs\Projects\TDB\ivysettings.xml

BUILD FAILED
c:\home\afs\Projects\TDB\build-lib.xml:357: impossible to configure ivy:settings with given
file: c:\home\afs\Projects\TDB\ivysettings.xml : java.text.ParseException: failed to load
settings from file:/c:/home/afs/Projects/TDB/ivysettings.xml: impossible to convert /home/afs/.ssh/ivy-pub-jena-key
to class java.io.File for setting keyFile on class org.apache.ivy.plugins.resolver.SFTPResolver

This works with 2.0.0-beta

From ivysetting.xml:

    <sftp name="dev-publish" host="jena.hpl.hp.com"
          user="${env.IVYUSER}" keyFile="${env.IVYKEY}">
      <ivy pattern="repo-dev/com/hp/hpl/jena/[module]/[revision]/ivy.xml"/>
      <artifact pattern="repo-dev/com/hp/hpl/jena/[module]/[revision]/[artifact]-[revision].[ext]"/>
    </sftp>

And env.IVYUSER is "afs" and env.IVYKEY is "/home/afs/.ssh/ivy-pub-jena-key"

If I set IVYKEY to a windows style path, c:\home\afs\.ssh\ivy-pub-jena-key it works with the
SVN version and in 2.0.0-beta.


2/ Filesystem resolver
...
c:\home\afs\Projects\TDB\build-lib.xml:357: impossible to configure ivy:settings with given
file: c:\home\afs\Projects\TDB\ivysettings.xml : java.text.ParseException: failed to load
settings from file:/c:/home/afs/Projects/TDB/ivysettings.xml: impossible to add configured
child for ivy on class org.apache.ivy.plugins.resolver.FileSystemResolver: ivy pattern must
be absolute: build/pub/[module]-[revision]/ivy.xml

ivysettings.xml:

    <filesystem name="dev-resolver" >
       <ivy      pattern="build/pub/[module]-[revision]/ivy.xml"/>
       <artifact pattern="build/pub/[module]-[revision]/[artifact]-[revision].[ext]"/>
    </filesystem>

I use this to quickly test the publishing process so it isn't particularly important to me
but it would be nice.

Using \ for / does not make a difference.
Using "/home/afs/Projects/TDB/build/pub..." does not work.
Using "c:\home\afs\Projects\TDB\build\pub\..." does work.

In my cygwin installation /home/afs as c:\home\afs so there is a pun going on but I was hoping
to use the same setup across windows and Linux and be neutral to file separator (and ideally
file system location).

org.apache.ivy.util.Checks.java is doing  "f.isAbsolute()" which makes it sensitive to the
filename format.


In both cases, build-lib.xml:357 is the task:
  <target name="ivy-resolve-report" depends="ivy-init">
    <ivy:resolve conf="dev"
                 haltonfailure="false" failureproperty="ivy.resolve.failed"/>
    <ivy:report todir="${reports.dir}"/>
    <fail message="Ivy dependency failed" if="ivy.resolve.failed"/>
  </target>

The complete files can be picked up from
https://jena.svn.sourceforge.net/svnroot/jena/TDB/trunk/ revision 4630


3/ With ivy-2.0.0-beta and ivy SVN:

The filesystem resolver seems to publish the wrong bytes (i.e. different from the sftp resolver).

My build artifacts are:
2011 bytes --    ivy-0.5.4-dev.jar
478122 bytes --  tdb-0.5.4-dev.jar
2239 --          tdb-0.5.4-dev.pom

But the published tdb-0.5.4-dev.pom is the bytes for tdb-0.5.4-dev.jar (478122 is them)

        Andy

--------------------------------------------
  Hewlett-Packard Limited
  Registered Office: Cain Road, Bracknell, Berks RG12 1HN
  Registered No: 690597 England

Mime
View raw message