[ 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