STASH 2.1 est livré avec un Nouvelle API de repos qui vous permet de dire à la cachette des constructions liées à des modifications spécifiques. Comment puis-je laisser Stash savoir sur mes constructions dans TeamCity? P>
3 Réponses :
Dans vos configurations de construction, insérez ce script PowerShell comme première étape de construction: Ceci permettra à Stache savoir qu'une construction pour une certaine modification a commencé. P> En tant que dernière étape de construction, insérez ce script PowerShell et sélectionnez l'option pour l'exécuter même si votre construction échoue: P> $xml = [xml](curl --request GET http://USERNAME:PASSWORD@TEAMCITY-HOSTNAME/httpAuth/app/rest/builds/%teamcity.build.id%)
Microsoft.PowerShell.Utility\Select-Xml $xml -XPath "/build" | %% { $status = $_.Node.status }
switch ($status) {
"SUCCESS" { $stashStatus = "SUCCESSFUL"; }
default { $stashStatus = "FAILED"; }
}
$do = @'
curl -v -H "Content-Type: application/json" -X POST -d '{ \"state\": \"$stashStatus\", \"key\": \"%teamcity.build.id%\", \"name\": \"#%build.number%: %system.teamcity.buildConfName%; %system.teamcity.projectName%\", \"url\": \"http://TEAMCITY-HOSTNAME/viewLog.html?buildId=%teamcity.build.id%\", \"description\": \"Revision: %build.vcs.number%; Triggered by: %build.triggeredBy%\" }' http://USERNAME:PASSWORD@STASH-HOSTNAME/rest/build-status/1.0/commits/%build.vcs.number%
'@
$do = $do -Replace '\$stashStatus', "$stashStatus"
Invoke-Expression $do
Vous pouvez utiliser ce Plugin TeamCity qui publie à l'API de repos avec des statuts de construction. < / p>
Remarque: je suis le développeur p>
Edit: Jetbrains a également un plugin qui fait la même chose, voir ici: P>
http://confluence.jetbrains.com/display/tw/commit+ Statut + éditeur p>
Jetbrains propose désormais un plug-in officiel appelé " commettre statut Editeur "Cela peut envoyer un statut de construction à Atlassian Stash ou l'outil de révision de code Gerrit. P>
code source est sur Github . P>
Pour quelqu'un d'autre qui a installé ce plugin puis passe 45 minutes à googler comment l'utiliser, vous devez ajouter une fonctionnalité de construction, appelée "Éditeur d'état de validation"
C'est le problème que vous pouvez difficilement trouver des tutoriels sur la façon de l'utiliser. Vous installez le plugin puis quoi ?! Merci @ BigJoe714 pour la clarification.