archiva-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "nicolas de loof" <nicolas.del...@gmail.com>
Subject Re: Maven and Archiva in a corporate environment
Date Fri, 20 Apr 2007 07:00:22 GMT
I myself have this config :

I have folder-based repositories (hand managed, not included in archiva as
managed repo) for
- private corporate artifacts (release + snapshots)
- restricted libs (sun jar, oracle driver...)
- free libs not available on repo1 OR -soures.jar for existing libs
(spring-xx)

I have configured an archiva managed repository that proxies

- my 3 private repos
- repo1.maven.org
- snapshots from apache & codehaus
- java.net repo

The developpers configure maven2 to use archiva as <mirrorOf>*</mirrorOf>

If some artifact is missing, I can add the expected repo as proxied or copy
the expected artifact in my "free libs" repo.

This config has an issue :
I' writing a corporate POM and deployed a snapshot. For any project to use
it as parent I have to add a repository entry with snapshot enabled,
pointing to my "corporate artifacts" repo. As mirrorOf redirects to archiva,
this also enables snapshots from apache/codehaus.
This may introduce unexpected snapshots pluginsin the build and make it
unreproductible.

I encourage users to force the plugin <version> (see recent thread on list)
to avoid this issue.

Nico.


2007/4/19, Arnaud HERITIER <aheritier@gmail.com>:
>
> Hi everybody,
>
>   I would like to have your feedback about the usage of maven (1 & 2) with
> archiva in a corporate environment.
>
>   Up until now in a corporate environment I was using by default 5 managed
> repositories :
>   - corporate-releases : for inhouse releases filled by teams (and by
> continuum 1.1 shortly).
>   - corporate-snapshots : for inhouse snapshots filled by the CI.
>   - proxy-releases : for the central repository and few others not
> synchronized.
>   - proxy-snapshots : for snapshots coming from apache, codehaus and more.
>   - 3rdparties : for 3rd party editors which don't publish their
> libraries.
>
>   I think it is a good separation for repositories because they don't have
> the same size (releases vs snapshots) and the same backup policy
> (corporate
> vs proxy).
>   The problem with this approach is that we have to deploy a "complex"
> settings.xml for developers. We have to define :
>   - several proxies using proxy-releases or proxy-snapshots
>   - 5 repositories
>   - 5 pluginRepositories
>   Another problem is that when maven (1 or 2) tries to download a missing
> dependency it will send several requests to archiva and it can be slow if
> the network isn't enough rapid. This problem occurs often when you have to
> update your IDE settings. Maven tries to download X times the javadocs and
> sources (but it's useful to have them).
>
>   I tried to find a workaroung for that by replacing both proxy
> repositories
> by only one (proxy-all) which proxies at the same time my internal
> repositories and the releases and snapshots outside of the company.
>   It's working find and I have better performances because maven send only
> one request to archiva. My settings are very reduced because I just have
> to
> define one proxy (with *), one repository and one pluginRepository.
>   The counterpart is that now maven 2 updates all its plugins with
> SNAPSHOTs
> because in my proxy-all repo, I have metadata updated from snapshots
> repositories. Thus I can't keep these settings without to have a unstable
> environment.
>
>   What do you think ? How are you doing ?
>
> Arnaud
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message