OK, this answer is bailing on the way you're trynig to do things. You may
want to try creating a second Ivy resolver in your ivysettings.xml just for
publishing. Instead of a URL resolver, make this a filesystem resolver. This
is presuming that the machine doing the ivy:publish has filesystem access to
the Ivy repository. Something like:
<filesystem name="local-filesystem">
<ivy
pattern="/var/www/ivy/[organisation]/[module]/[revision]/ivy.xml" />
</filesystem>
Caveat: I'm saying this from the perspective of someone who has used a URL
resolver for resolves but then a filesystem resolver for publishes. Maybe
someone has an idea how to get the URL resolver working for publishes.
On Fri, Nov 21, 2008 at 11:56 AM, csanders <[EMAIL PROTECTED]> wrote:
> Hi! I'm new to ivy and maven, we have setup a maven2 repository for use
> with ivy, and I'm trying to publish my artifacts to it but am having trouble
> understanding how to do this.
>
> I'm trying to use the <url> resolver but am getting a
> 'UnsupportedOperationException: URL repository do not support append
> operations at the moment' error.
>
> Heres my ivysettings.xml file:
>
> <ivysettings>
> <properties file="${ivy.settings.dir}/ivysettings.properties"/>
> <settings defaultCache="${ivy.settings.dir}/ivy-cache"
> defaultResolver="projects"/>
> <resolvers>
> <url name="projects" m2compatible="true">
> <ivy pattern="
> http://something.fake.com:8081/nexus/content/repositories/hoovers/[module]/[revision]/ivy-[revision].xml<http://something.fake.com:8081/nexus/content/repositories/hoovers/%5Bmodule%5D/%5Brevision%5D/ivy-%5Brevision%5D.xml>"
> />
> <artifact pattern="
> http://ivyrep.mycompany.com/[module]/[revision]/[artifact]-[revision].[ext]<http://ivyrep.mycompany.com/%5Bmodule%5D/%5Brevision%5D/%5Bartifact%5D-%5Brevision%5D.%5Bext%5D>"
> />
> <artifact pattern="
> http://ivyrep.mycompany.com/[module]/[revision]/[artifact].[ext]<http://ivyrep.mycompany.com/%5Bmodule%5D/%5Brevision%5D/%5Bartifact%5D.%5Bext%5D>"
> />
> </url>
> <ibiblio name="libraries" m2compatible="true" usepoms="false" />
> </resolvers>
> <modules>
> <module organisation="org.apache" name="dependee" resolver="projects"/>
> </modules>
> </ivysettings>
>
>
> And the publish target for my build.xml:
>
> <target name="publish" depends="build" description="--> publish this
> project in the ivy repository">
> <property name="revision" value="${version}"/>
> <delete file="${build.dir}/ivy.xml"/>
> <ivy:publish artifactspattern="${build.dir}/[artifact].[ext]"
> resolver="projects"
> pubrevision="${revision}"
> status="release"
> />
> <echo message="project ${ant.project.name} released with version
> ${revision}" />
> </target>
>
>
> Thanks! Any help appreciated.
>
>