Dans l'exemple suivant, je suis capable d'accéder aux variables de sortie de jobA
mais pas de deploymentA
. La principale différence étant que jobA
est un emploi "normal" et deploymentA
est un travail de déploiement.
jobs:
- deployment: deploymentA
environment: Test
strategy:
runOnce:
deploy:
steps:
- checkout: none
- pwsh: |
echo "##vso[task.setvariable variable=someVar;isOutput=true]someValue"
name: someName
- job: jobA
steps:
- checkout: none
- pwsh: |
echo "##vso[task.setvariable variable=someVarA;isOutput=true]someValueA"
name: someNameA
- job: jobB
dependsOn:
- deploymentA
- jobA
variables:
deployJobVar: $[dependencies.deploymentA.outputs['someName.someVar']]
jobVar: $[dependencies.jobA.outputs['someNameA.someVarA']]
steps:
- checkout: none
- pwsh: |
echo "$(deployJobVar)" # will display empty string
echo "$(jobVar)" # will display 'someValueA'
El meilleur indice que j'ai trouvé est :
Si vous définissez une variable à partir d'une matrice ou d'une tranche, alors pour référencer la variable, vous devez inclure le nom du travail ainsi que l'étape lorsque vous y accédez à partir d'un travail en aval.
Ce n'est pas exactement la même chose, mais j'ai essayé de faire précéder des identifiants similaires, mais aucune des propositions suivantes n'a fonctionné :
$[dependencies.deploymentA.outputs['runOnce.someName.someVar']]
$[dependencies.deploymentA.outputs['deploy.someName.someVar']]
$[dependencies.deploymentA.outputs['runOnce.deploy.someName.someVar']]
Quelqu'un connaît-il la syntaxe correcte pour accéder à des variables spécifiques produites par un travail de déploiement ? Sinon, quelqu'un sait-il comment afficher toutes les variables produites ?