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
Verificare la provenienza di un commit tramite le GitHub Actions
Workflow di continuous deployment tramite pull request label in GitHub
Installare le Web App site extension tramite una pipeline di Azure DevOps
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Migrare una service connection a workload identity federation in Azure DevOps
Disabilitare automaticamente un workflow di GitHub
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Eseguire operazioni con timeout in React
Evitare la command injection in un workflow di GitHub
Copiare automaticamente le secret tra più repository di GitHub
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Sostituire la GitHub Action di login su private registry