Plusieurs déploiements dans maven
Nous avons un interne artifactory référentiel. Au moment où tous les clichés seront déployés. Nous voulons aussi un autre serveur avec une interface web, et vous voulez copier la de la créé des artefacts.
Pour nos builds nous d'Hudson, mais le post-construire l'action "Déployer des artefacts Maven repository" avec scp ne fonctionne pas. Donc il y a la question de le faire d'une autre manière élégante. Pourquoi n'est-ce pas maven en mesure d'avoir plusieurs dépôts distribution? Des idées?
La plus belle chose serait si artifactory serait en faveur d'un (automatique!) différentiels à l'exportation à un standard repository maven après chaque nouveau déploiement.
OriginalL'auteur Mauli | 2009-03-11
Vous devez vous connecter pour publier un commentaire.
Je ne pense pas que maven prend en charge le déploiement de plusieurs référentiels pour un seul profil, mais peut-être que les profils pourraient modifier l'id et l'url du dépôt.
Maven Déploiement
Puis utiliser des profils de choisir la ou les pensions de déployer à:
Des profils Maven
<activation> <property><name>!repo2</name></property> </activation>
pour activer repo2, et de la même façon avec ! pour repo2, puis il suffit de-Drepo2
)ou mettre le
distributionManagement
directement dans leprofile
définition, si vous préférez ne pas utiliser les propriétésOriginalL'auteur jon077
Si vous êtes prêt à utiliser un plugin personnalisé, vous pouvez configurer Maven pour déployer à une liste de "miroir" des endroits en même temps que le standard de déploiement. Je vous recommande de définir ce dans un profil de sorte que vous pouvez contrôler ce que les déploiements sont en miroir (il pourrait ne pas être approprié pour ce faire, à chaque génération).
Pour définir un nouveau plugin, vous devez créer un nouveau projet Maven et spécifier la POM a de l'emballage maven-plugin:
Dans src/main/java définir un Mojo. Le code ci-dessous déclare un "miroir" de l'objectif, il prend une liste de mirrorRepository éléments (contenant un repositoryId et url) au miroir de l'artefact de déploiement. Le plugin utilise la même approche pour le déploiement de l'maven-déployer-plugin, et prend la plupart de ces mêmes paramètres.
Notez que vous devez toujours définir un serveur dans votre settings.xml pour chaque dépôt avec les autorisations appropriées pour faire du déploiement ou de la compilation échouera!
Le mojo fait référence à un MirrorRepository type d'encapsuler le repositoryId et l'url, c'est un simple haricot:
Voici un exemple de configuration à l'aide du plugin. Remarque tous les déployer les formats sont pris en charge (http, scp, ftp):
OriginalL'auteur Rich Seller
Artifactory ne automatique fonctionnalité d'exportation. De la documentation:
N'est-ce pas exactement ce dont vous avez besoin?
Pour transférer les fichiers, vous pouvez soit monter un répertoire partagé sur le serveur à distance et de faire la sauvegarde, ou de faire la sauvegarde en local et ensuite rsync.
OriginalL'auteur Olivier
Je pense que dans Artifactory, par défaut, il maintient logiques différents référentiels pour le téléchargement des instantanés et des non-instantanés. Utilisation des autorisations, vous pouvez faire le référentiel visible seulement à certains.
Si cela ne suffit pas, une autre solution qui fonctionne avec Artifactory 2.0 est d'avoir Artifactory utiliser une base de données MySQL qui ne réplication asynchrone à une autre base de données MySQL, qui à son tour est en cours de lecture par une installation séparée de Artifactory. Si c'est trop en temps réel, vous pouvez tout simplement avoir deux différentes installations qui ne sont mises à jour en fonction de règles métier.
OriginalL'auteur James Kingsbery