Nello script precedente abbiamo visto quelle che sono alcune shortcut in YAML per richiamare script esistenti. Sebbene queste utility siano molto comode nella maggior parte degli scenari, può sempre succedere di dover applicare delle personalizzazioni: il task PowerShell è da dove nascono le shortcut ed è proprio lui che possiamo referenziare quando abbiamo esigenze specifiche.
Il task è così definito:
- task: PowerShell@2 inputs: targetType: # 'filePath' oppure 'inline' filePath: # percorso del file .ps1 quando 'targetType == filePath' arguments: # opzionali script: # script da scrivere in linea quando 'targetType == inline' errorActionPreference: # 'stop', 'continue', 'silentlyContinue' failOnStderr: # false di default ignoreLASTEXITCODE: # false di default pwsh: # false di default, true per indicare che referenziamo PowerShell Core workingDirectory: # opzionale
Come si può notare dalla documentazione, infatti, possiamo andare non solo a specificare dove si trova il file di PowerShell o a scriverne uno in linea, ma possiamo anche definire argomenti da passare agli script stessi, la working directory e il comportamento da tenere in caso di errore. L'impostazione di pwsh a true, indica l'esecuzione dello script su PowerShell Core, da cui la shortcut del task pwsh: in alternativa, la shortcut di default è powershell.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Managed deployment strategy in Azure DevOps
Recuperare gli audit log in Azure DevOps
Creare una libreria CSS universale - Rotazione degli elementi
Evitare memory leaks nelle closure JavaScript
Interagire con Azure DevOps tramite MCP Server
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Rendere le variabili read-only in una pipeline di Azure DevOps