33 votes

Partager construire des artefacts entre les emplois à Hudson

Je suis en train de mettre en place notre processus de construction de hudson.

Job 1 sera un super vite (je l'espère), d'intégration continue, travail qui sera construit fréquemment.

Job 2, sera responsable de l'exécution d'un test complet de la suite, à intervalles réguliers, ou déclenché manuellement.

Job 3 sera responsable de l'exécution des outils d'analyse à travers la base de code (un peu comme la Tâche 2).

J'ai essayé d'utiliser les "Projets Avancés Options > utiliser l'espace de travail personnalisé" pour que le code compilé dans Job 1 peut être utilisé dans l'Emploi 2 et 3. Cependant, il semble que tous construire des artefacts restent à l'intérieur de ce Travail 1 de l'espace de travail. Je suis je en train de faire de ce droit? Est-il une meilleure manière de faire ceci? Je suppose que je suis à la recherche de quelque chose de semblable à construire un pipeline d'installation...de sorte que les choses peuvent être partagés et les emplois appropriés peut être fait en plusieurs étapes.

(J'ai aussi envisagé d'utiliser un lot "tâches" ...mais il semble que ceux qui ne peuvent pas être programmées? seulement déclenché manuellement?)

Toutes les suggestions sont les bienvenues. Merci!

15voto

aku Points 160

Vous voudrez peut-être essayer le plugin Copy Arteifact:

http://wiki.hudson-ci.org/display/HUDSON/Copy+Artifact+Plugin

Votre travail continu peut construire les artefacts nécessaires, et vos deux autres travaux peuvent les tirer dedans pour faire l'analyse.

7voto

seanf Points 1698

Hudson a un nouveau plugin pour juste ce problème: http://wiki.hudson-ci.org/display/HUDSON/Clone+Workspace+SCM+Plugin

2voto

aberrant80 Points 4544

Oui, cette page wiki n'était pas très utile en ce qu'elle tente de faire son très élégant. La vérité est que Hudson n'a pas de soutien de l'emploi des chaînes, très élégant, mais si vous devez passer des choses d'une tâche à l'autre.

Je fais également la fermeture éclair-vers le haut-et-copie-espace de travail méthode pour transférer des espaces de travail d'un emploi à un autre. J'ai une construction rapide, complète l'analyse de construire, puis de la distribution s'appuie. Entre temps, j'ai utiliser Ant pour générer des horodateurs et "l'accumulation de timbres" pour marquer les emplois du nombre construite pour d'autres emplois du nombre. L'empreinte fonctionnalité permet de garder la trace des fichiers, mais depuis que je ne vais pas à l'archive de l'espace de travail des zips, l'empreinte digitale est inutile pour les utilisateurs, car ils ne peuvent pas voir l'espace de travail de fermetures à glissière.

1voto

Michael Donohue Points 9831

Avez-vous regardé le wiki Hudson ? Plus précisément : Diviser un gros travail en petits emplois

0voto

sehugg Points 1862

J'ai eu le même problème, et ce que j'ai fini par aller avec est des projets distincts pour les long-tâches en cours d'exécution. La première étape de ces projets a été de copier tous les fichiers de l'espace de travail de Travail 1 (dernière génération) pour le Travail 2/3/etc espaces de travail. Cette habitude de travaillé moins de Travail 1 a été la construction à l'Emploi à temps 2/3 commencé, car il permettrait d'obtenir une incomplète de l'espace de travail. Vous pourriez contourner ce problème en détectant les "fin de build" dans Job 1 avec une sentinelle de fichier, ou de l'utilisation de l'Hudson serrures plugin (je n'ai pas essayé).

Vous ne pas avoir à utiliser un espace de travail personnalisé si vous faites des hypothèses au sujet de la place de l'autre des emplois par rapport à %de l'espace de travail%.

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