You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by John Hite <jh...@appsecinc.com> on 2011/01/07 18:59:49 UTC

Add artifacts to a module already in a repository?

I'm new to ivy. I've been going through the tutorials and trying to set up my own ivy repository. I ran the build-a-repository sample and I am wondering if there is a way to manually add artifacts to the repository? For example, I have hibernate in my ivy repository and I would like to add the license file as an artifact. Is there a way to do this?

Thanks,
John


RE: Add artifacts to a module already in a repository?

Posted by John Hite <jh...@appsecinc.com>.
Thanks Steve and Valerie, I'll give it a shot. We are just setting up a repository and no one is using it yet, so I won't need to worry about messing with version numbers. It seems that no one is providing the license as an artifact, so I'll have to make this change for every library I add to my repository. It seems strange that the license is not an artifact since, for the majority of open source licenses, you have to distribute a copy of the license when you re-distribute the library. This requirement has pretty much stopped us from using things like ivy or maven since we would have to manually manage and include the licenses with our final build. It may turn out to be too much work to add artifacts to all these libraries by hand so it may still prevent us from using ivy. Anyway, thanks for the help!

John

-----Original Message-----
From: Valerie Wagner [mailto:valerie.wagner@sri.com] 
Sent: Friday, January 07, 2011 2:45 PM
To: ivy-user@ant.apache.org
Subject: Re: Add artifacts to a module already in a repository?

If you already have hibernate installed, and want to add an artifact that the original publishers didn't include, you'll have to do it "by hand" by manually editing the ivy.xml for that module. A couple of warnings:

(1) If anyone has already downloaded version X of your module and you modify it, those people won't necessarily get the changes you made. So it would be a good idea to increment the version number and "re-publish" 
it. (You can manually copy the files/directories in your Ivy repository to make a new version.)

(2) Since the original authors didn't make this change, the next time you update to a new version of hibernate, you'll have to go through the exercise again. In my experience, it's hard to remember that you made manual changes, so you might want to leave yourself some hints/breadcrumbs/notes. Also beware of changing a version number to one that hibernate might use next. You might consider doing something like modifying the name of the module so you know it's not out-of-the-box, like "hibernate-custom".

I'm also with you on wishing more orgs would include the license file!

cheers,
Valerie


John Hite wrote:
> I'm new to ivy. I've been going through the tutorials and trying to set up my own ivy repository. I ran the build-a-repository sample and I am wondering if there is a way to manually add artifacts to the repository? For example, I have hibernate in my ivy repository and I would like to add the license file as an artifact. Is there a way to do this?
>
> Thanks,
> John
>
>
>    

Re: Add artifacts to a module already in a repository?

Posted by Valerie Wagner <va...@sri.com>.
If you already have hibernate installed, and want to add an artifact 
that the original publishers didn't include, you'll have to do it "by 
hand" by manually editing the ivy.xml for that module. A couple of warnings:

(1) If anyone has already downloaded version X of your module and you 
modify it, those people won't necessarily get the changes you made. So 
it would be a good idea to increment the version number and "re-publish" 
it. (You can manually copy the files/directories in your Ivy repository 
to make a new version.)

(2) Since the original authors didn't make this change, the next time 
you update to a new version of hibernate, you'll have to go through the 
exercise again. In my experience, it's hard to remember that you made 
manual changes, so you might want to leave yourself some 
hints/breadcrumbs/notes. Also beware of changing a version number to one 
that hibernate might use next. You might consider doing something like 
modifying the name of the module so you know it's not out-of-the-box, 
like "hibernate-custom".

I'm also with you on wishing more orgs would include the license file!

cheers,
Valerie


John Hite wrote:
> I'm new to ivy. I've been going through the tutorials and trying to set up my own ivy repository. I ran the build-a-repository sample and I am wondering if there is a way to manually add artifacts to the repository? For example, I have hibernate in my ivy repository and I would like to add the license file as an artifact. Is there a way to do this?
>
> Thanks,
> John
>
>
>    

Re: Add artifacts to a module already in a repository?

Posted by Steve Miller <th...@gmail.com>.
Hi John,
You can use the install ant task. This involves writing your own ivy.xml
file for file. If you wanted it to be part of an existing module, I think
you have to change the ivy.xml for that module, and then install over it.

http://ant.apache.org/ivy/history/latest-milestone/use/install.html

Any questions, email again :)

On Fri, Jan 7, 2011 at 12:59 PM, John Hite <jh...@appsecinc.com> wrote:

> I'm new to ivy. I've been going through the tutorials and trying to set up
> my own ivy repository. I ran the build-a-repository sample and I am
> wondering if there is a way to manually add artifacts to the repository? For
> example, I have hibernate in my ivy repository and I would like to add the
> license file as an artifact. Is there a way to do this?
>
> Thanks,
> John
>
>