I have any Ivy-less repository configured something like:

<filesystem name="my-repo">
<artifact pattern="${my.default.root}/builds/[artifact]-[revision]-inst.tar.gz" />
</filesystem>

I also point the appropriate organisation to this resolver:

<modules>
<module organisation="blah" resolver="my-repo"/>
</modules>

I want to consider each tar.gz file to be a module with an artifact of the same name. Luckily the filenames are nicely versioned, so it should work fine.

I believe the issue is primarily with the fact that the artifacts I want to consume are not jar files. I can get around this with dependencies with the <artifact> element:

<dependency org="blah" name="mymodule" rev="8.4.+" conf="installkit->default">
<artifact name="mymodule" type="tar.gz" />
</dependency>

But this arrangement is a bit awkward (and also slow to resolve). So I'd prefer to have everything in a more conventional Ivy repository complete with Ivy XML files. The problem is, if I try to use ivy:install a la:

<ivy:install organisation="blah" module="mymodule" revision="latest.integration" from="my-repo" to="ivy-repo" overwrite="true" />

it will assume that the type of the file is jar, and so it won't work correctly.

My work around has been to create dependencies as above, resolve them, and then manually copy the resolved ivy.xml files and the corresponding artifact into my repository folder. (ick)


-Tim

Inactive hide details for Maarten Coene ---01/25/2010 05:43:55 PM---Tim,Maarten Coene ---01/25/2010 05:43:55 PM---Tim,


From:

Maarten Coene <maarten_coene@yahoo.com>

To:

ivy-user@ant.apache.org

Date:

01/25/2010 05:43 PM

Subject:

Re: Using ivy:install to install non-jar artifacts





Tim,

could you give a little more details, I don't fully understand what your problem is.

Maarten




________________________________
From: Timothy Aston <Timothy.Aston@ca.ibm.com>
To: ivy-user@ant.apache.org
Sent: Mon, January 25, 2010 3:09:47 PM
Subject: Re: Using ivy:install to install non-jar artifacts


This brings up a related question regarding a situation I've been dealing with.  I'm trying to work with a repository without Ivy XML files, and the artifacts in this repository are not jar files (they are tar.gz files).  With dependencies, this is fine because I can just use the <artifact> child.  However when it comes to using <install>, there does not seem to be a way to deal with ivy-less repositories, or am I missing something?


-Tim

Maarten Coene ---01/22/2010 04:39:48 PM---Your module containing the swc file should have an ivy.xml file defining the swc artifact with correct extension.



From:
Maarten Coene <maarten_coene@yahoo.com>

To:
ivy-user@ant.apache.org

Date:
01/22/2010 04:39 PM

Subject:
Re: Using ivy:install to install non-jar artifacts
________________________________



Your module containing the swc file should have an ivy.xml file defining the swc artifact with correct extension.
Can you confirm this is the case in the repository you have specified in the "from" attribute of your ivy:install task?

Maarten




----- Original Message ----
From: "Steele, Richard" <rich@steelezone.net>
To: ivy-user@ant.apache.org
Sent: Fri, January 22, 2010 3:20:13 PM
Subject: Using ivy:install to install non-jar artifacts

We're struggling to figure out how to install artifacts to our local http
repository with non-jar artifacts (in this case, a Flex SWC file).  We've
tried specifying type="swc" on the Ant ivy:install task, but Ivy can't find
the artifact because the [ext] isn't set.  We tried installing to a
SWC-specific repository with its own pattern, hard-coding the extension as
"swc", but the type attribute on the install task seems to be ignored: the
generated ivy.xml still declares the artifact is a jar type.

What on earth are we missing?

Thanks,
Rich