Déploiement d'artefact Maven sur plusieurs référentiels avec des paramètres différents

Nous avons de nombreux projets Java, qui sont CI construit avec Jenkins. Ils sont déployés à notre propre serveur Nexus amende juste.
Le problème est, nous avons besoin de fournir ces bibliothèques à un tiers, mais sans le code source.
Ainsi, pour chaque projet, au programme nous avons:

  • Communiqués de référentiel pour nos devs (comprend déployé code source)
  • Instantanés des référentiels pour nos devs (comprend déployé code source)
  • Tiers de presse répertoire de dépôt (POT + POM)
  • (et il serait bon d'avoir): Tiers instantané répertoire de dépôt (POT + POM) pour des tiers, les nightly builds

La question est: comment est-ce généralement traités dans Jenkins/Nexus monde? Je préfère avoir un seul Emploi dans Jenkins qui gère le CI de construire et de la libération (artefact de déploiement des processus de la "automatiquement".
Actuellement, je suis en utilisant plusieurs <distributionManagement> profils dans notre "racine principale pom.xml" (inclus par tous les projets):

[...]
<profiles>
    <profile>
        <id>default</id>
        <distributionManagement>
            <repository>
                <id>releases</id>
                <name>Release</name>
                <url>http://path/to/nexus/content/repositories/releases/</url>
            </repository>
            <snapshotRepository>
                <id>snapshots</id>
                <name>Snapshot</name>
                <url>http://path/to/nexus/content/repositories/snapshots/</url>
                <uniqueVersion>false</uniqueVersion>
            </snapshotRepository>
        </distributionManagement>
    </profile>
    <profile>
        <id>third-party</id>
        <distributionManagement>
            <repository>
                <id>releases</id>
                <name>Release</name>
                <url>http://path/to/nexus/content/repositories/third-party/</url>
            </repository>
            <snapshotRepository>
                <id>snapshots</id>
                <name>Snapshot</name>
                <url>http://path/to/nexus/content/repositories/third-party-snapshots/</url>
                <uniqueVersion>false</uniqueVersion>
            </snapshotRepository>
        </distributionManagement>
    </profile>
</profiles>

De l'Maven docs, il semble y avoir aucun moyen de l'utilisation de plusieurs dépôts au cours de la même version du cycle de vie, pour ne pas mentionner le fait que nous avons besoin/n'ont pas besoin de la source en fonction de la cible repo.

Je peux faire un truc avec la création d'un Emploi dans Jenkins, avec le Maven "les Objectifs et les options": clean deploy -P third-partypuis en ajoutant de l'après-construire l'action "Déployer des artefacts Maven repository" avec le "défaut" de données, mais dans ce cas, seuls les Instantanés allons à la fois les pensions de titres et d'objets débloqués via Jenkins, Maven Version Plug-in sont dans le même référentiel.

En pratique des idées comment puis-je le faire sans surcharger nos ie travail de la hiérarchie?

Merci d'avance!

source d'informationauteur Siaynoq