[ http://jira.codehaus.org/browse/MRM-244?page=all ]
Brett Porter updated MRM-244: ----------------------------- Fix Version/s: 1.0 > Mirror/Proxy functionality is broken in Archiva > ----------------------------------------------- > > Key: MRM-244 > URL: http://jira.codehaus.org/browse/MRM-244 > Project: Archiva > Issue Type: Bug > Components: remote proxy > Reporter: Aaron Digulla > Priority: Critical > Fix For: 1.0 > > > Currently, the archiva admin has to specify which sites Archiva should > proxy/mirror and in which managed repository the downloaded artefacts should > end up. > This approach has several drawbacks: > - Resources with a similar name but from different sites can end up in the > same managed repository. This is deadly if there is a bug in the resource > which is fixed on site A but archiva downloads it from B. Since the resource > exists, Archiva will not download it again even after the problem is fixed > and the maven mirrors re-synchronized. > - Since every POM can define their own repositories, it's very hard to > maintain the list of proxied repositories. The situation gets worse when you > download a new plugin which in turn wants artefacts from other sites which > are not yet in the list. Maven will not use Archiva for these which means > every developer downloads those resources. > This also means I have to configure maven to be able to access the internet > directly while I would prefer to be able to force it to make all connections > via archiva. This way, I can fix all broken POMs inhouse, for example. > - In maven's settings, I have to specify which mirrors exist. The key for the > decision is the ID of the repository. Unfortunately, the ID is just an > arbitrary string. Many projects use different IDs for the same repository. > Some use "codehaus.org", some use "codehaus". I've seen POMs which think > "codehaus.org" is for snapshots while they use "codehaus" for the releases. > In the end, there is no way to map repository "IDs" to mirrors which will > work for all maven projects out there. > Therefore, I suggest that you change the handling of proxied repositories. > Instead of using mirror settings, I would prefer to use the proxy settings of > maven to integrate Archiva. > Archiva should keep a blacklist of repositories which are to be ignored but > everything else should be downloaded into a mirror directory which contains > the hostnames of the sites as first level. This means artefacts from > "http://people.apache.org/maven-snapshot-repository/" would end up in > C:\archiva\mirror\people.apache.org\maven-snapshot-repository\..." > If the port number is != 80, you can add another level for the port. > This should allow us to force maven to download everything through Archiva. > We would be able to control which plugins and which versions are used and we > could fix broken POMs. We could even put patched versions of plugins into the > mirror directory. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira