We are a team of about 20 I was hoping to have a publicly shared repo
where all team members could publish their artifacts, maybe I'm taking
the wrong approach ?
Mitch Gitman wrote:
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.