I wish I had a good answer for you, but we pretty much ran into the same problem. We figured that because no one else seemed to be reporting our problem it must be something we were doing wrong in our setup, so you can imagine my joy to see we're not alone.
We ended up working around the issue by doing gets with HTTP and puts with SSH; this isn't ideal, but we kind of needed to get on with things. We now have some time to make this right, so I'm very interested if anyone else has any suggestions. Rich On Tue, Apr 6, 2010 at 11:58 AM, Michael Shea <[email protected]> wrote: > Hi Maarten, > > Yes, my apache server is configured to accept HTTP PUT requests. > > I've done some debugging using curl to PUT files on the server, and yeah, > it looks like the server doesn't create the required subdirectories. So... > Is creating the necessary subdirectories (or "collections", in > webdav-speak?) when receiving a PUT request a standard thing that webservers > do? I presume that it isn't. > > So the question I have is: > > Is this a "bug" in Ivy, that Ivy doesn't send the necessary MKCOL commands > first? Or is this something that is undesirable to have Ivy do for some > reason? I know that there's the VFS stuff as well, presumably that would > issue the MKCOL commands. It's not really an option for me though, since I > want to use this in a production environment where we require stability, and > we're not too keen on using projects that haven't ever actually been > released (ie: commons-vfs). > > Anyway - it just looks to me like the usefulness of using URL resolvers for > publishing is severely limited, given that what Ivy actually tries to do > when doing an http publish isn't supported by Apache webserver without > writing a custom put-script. Maybe if it's not a bug, something in the docs > would be useful? > > > Mike Shea. > > > Is your apache server configured to accept HTTP PUT requests? >> If so, mabye you should use another put-script that creates the missing >> directories? >> >> Maarten >> >> >> >> >> ----- Original Message ---- >> From: Michael Shea <[email protected]> >> To: [email protected] >> Sent: Thu, April 1, 2010 11:54:58 PM >> Subject: publishing via http >> >> Hi folks, >> >> I am trying to publish to an HTTP Ivy repository, and having some trouble >> with it. I'm using ivy-2.1.0. >> >> The resolver I am using in ivysettings.xml looks like this: >> >> <url name="shared-publisher"> >> <ivy >> pattern="http://${server}/${infrastructure.lib.dir}/${ivy.artifact.pattern}" >> /> >> <artifact >> pattern="http://${server}/${infrastructure.lib.dir}/${ivy.artifact.pattern}" >> /> >> </url> >> >> >> Basically, I get this in the logs from my ant build when I call >> ivy:publish: >> >> Caused by: java.io.IOException: Access to URL http:// >> [server]/lib/nitido/project24/1.0.0.0/zips/project24-resources.zip was >> refused by the server >> >> If I check the apache logs on the server, I see this: >> >> <snip> >> 192.168.13.68 - - [01/Apr/2010:17:38:56 -0400] "HEAD >> /lib/nitido/project24/1.0.0.0/zips/project24-resources.zip HTTP/1.1" 401 >> 224 "-" "Apache Ivy/2.1.0" >> 192.168.13.68 - [email protected] [01/Apr/2010:17:38:56 -0400] >> "HEAD /lib/nitido/project24/1.0.0.0/zips/project24-resources.zipHTTP/1.1" >> 404 163 "-" "Apache Ivy/2.1.0" >> 192.168.13.68 - - [01/Apr/2010:17:38:56 -0400] "PUT /lib/nitido/project24/ >> 1.0.0.0/zips/project24-resources.zip HTTP/1.1" 401 741 "-" "Apache >> Ivy/2.1.0" >> 192.168.13.68 - [email protected] [01/Apr/2010:17:38:56 -0400] >> "PUT /lib/nitido/project24/1.0.0.0/zips/project24-resources.zip HTTP/1.1" >> 403 538 "-" "Apache Ivy/2.1.0" >> </snip> >> >> It looks to me like it's trying to just run a PUT without creating the >> necessary subdirectories first...? >> >> I've also tried messing around with the vfs resolver (compiled my own >> commons-vfs jar, based on the 1.0 tag from the vfs svn repo), but I didn't >> have any luck with it. >> >> I haven't found much about this on google... bits and pieces here and >> there, but nothing that has really helped me yet. Is what I am trying to do >> even possible currently? Or should I just abandon this approach, and set up >> an FTP server to handle publishing instead? =) >> >> Thanks, >> >> >> Mike Shea. >> >> >> >> >> > >
