Nello script precedente su questo canale, abbiamo avuto modo di vedere come sia possibile convidere una variabile creata all'interno di un task, per poterla riutilizzare all'interno di altri task contenuti nello stesso job e nello stesso stage di una determinata pipeline.
Tuttavia, può talvolta diventare utile poter condividere la variabile tra più job all'interno della stessa pipeline, così che questa venga riutilizzata in contesti o su agent differenti per eseguire azioni collegate fra di loro logicamente.
Come abbiamo visto precedetemente, possiamo creare una variabile all'interno di uno script in questo modo:
echo "##vso[task.setvariable variable=myVariableName]$myVar"
Per poterla utilizzare fra più job, dobbiamo solamente crearla come variabile di output, specificando l'attributo isOutput:
echo "##vso[task.setvariable variable=myVariableName;isOutput=true]$myVar"
A questo punto la variabile sarà visibile ai job successivi tramite la reference a dependencies.{jobName}.outputs['{stepName}.{varName}']:
- job: A steps: - script: echo "##vso[task.setvariable variable=myOutputVar;isOutput=true]this is the deployment variable value" name: setvarStep - script: echo $(setvarStep.myOutputVar) name: echovar - job: B dependsOn: A variables: myVarFromDeploymentJob: $[ dependencies.A.outputs['setvarStep.myOutputVar'] ] steps: - script: "echo $(myVarFromDeploymentJob)" name: echovar
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Eseguire i worklow di GitHub su runner potenziati
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Ricevere notifiche sui test con Azure Load Testing
Gestione file Javascript in Blazor con .NET 9
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
Gestire i dati con Azure Cosmos DB Data Explorer
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Utilizzare Locust con Azure Load Testing
Ottenere un token di accesso per una GitHub App
.NET Aspire per applicazioni distribuite