135 votes

Archiver les artefacts de hudson / jenkins

Quelqu'un pourrait-il m'expliquer l'idée d' artefacts dans le processus de construction ?

J'ai le répertoire d'espace de travail où j'ai vérifier le code, compiler et exécuter mes scripts ant etc. À la fin, dans mon cas, j'obtiens un fichier jar des thats prêt à installer. Est considéré pour être l'artefact ?

Où dois-je dire à mon script de build pour mettre le fichier jar ? Dans le répertoire d'espace de travail ? Mon jar fichier est un nom de fichier unique en fonction de variables comme BUILD_ID et de ce fait, comment puis-je savoir Jenkins fichier jar à choisir ?

Je suis un peu confus ici, serais reconnaissant de toute explication ou un lien vers une explication sur le web.

merci !

EDIT: Ok, j'ai donc essayer de faire quelque chose comme ceci :

enter image description here

Le chemin d'accès n'existe pas encore dans mon espace de travail, parce que le script ant est supposer pour le créer, et bien sûr, l' .jar et .properties fichiers ne sont pas là parce qu'ils n'ont pas été générés encore. pourquoi faut-il me donner une erreur alors ? me semble que je suis en manque de quelque chose.

Aussi, ne Jenkins supprimer les artefacts après chaque version ? (pas archivés des artefacts, je sais que je peux supprimer ces) Sinon il va boucher le disque dur assez rapidement.

68voto

Anders Lindahl Points 17380

Votre interprétation est correcte, qu'un artefact dans le sens de Jenkins est le résultat d’une génération - la sortie prévue du processus de génération.

Une convention courante est de mettre le résultat d’une génération dans un , ou `` répertoire.

L’archiveur Jenkins peut utiliser des gouttes ( `` ) pour prendre facilement le droit déposer, même si vous avez un nom unique par génération.

11voto

Matthias Alleweldt Points 1812

Un artefact peut être le résultat de votre processus de création. La chose importante est qu'il n'a pas d'importance sur lequel un client, il a été construit il va être transférées à partir de l'espace de travail de retour pour le maître (serveur) et qui y sont stockées avec un lien vers le build. L'avantage est qu'il est versionized de cette façon, vous n'avez qu'à la configuration de sauvegarde sur votre maître, et que tous les objets sont accessibles via l'interface web, même si construire tous les clients sont en mode hors connexion.

Il est possible de définir une expression régulière comme nom d'artefact. Dans mon cas, j'ai zippé tous les fichiers que je voulais stocker dans un fichier avec un nom de constante lors de la compilation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X