web-dev-qa-db-fra.com

TeamCity, passage d'un identifiant généré lors d'une étape de génération à une étape de génération ultérieure

Nouveau sur TeamCity. J'ai plusieurs étapes de construction. L'étape 3 génère un identifiant nécessaire à l'étape 4. Quelle est la meilleure façon de transmettre l'identifiant (une chaîne) entre l'étape 3 et l'étape 4? Les étapes de génération sont écrites en Ruby. Puis-je définir une variable d'environnement?

45
Mike Jr

Oui, vous pouvez définir une variable d'environnement en une seule étape de construction et l'utiliser à l'étape suivante. Vous devrez utiliser un message de service dans votre script de génération comme décrit ici http://confluence.jetbrains.net/display/TCD65/Build+Script+Interaction+with+TeamCity#BuildScriptInteractionwithTeamCity-AddingorChangingaBuildParameterfromaBuildStep to mettre à jour dynamiquement un paramètre de construction, que vous pouvez utiliser à l'étape suivante. Notez qu'il ne sera pas disponible dans l'étape qui le génère, uniquement dans la suivante.

Notez que pour définir la variable, elle doit être écrite d'une manière ou d'une autre (**echo** pour la ligne de commande bash, **write-Host** pour Powershell), entre guillemets. Exemple:

echo "##teamcity[setParameter name='env.ENV_AAA' value='aaaaaaaaaa']"

et pour utiliser cette variable, écrivez %env.ENV_AAA% dans la boîte de la prochaine étape de construction (Atleast dans TeamCity 9.1.7))

75
Maria Khalusova