Supported platform | shell parameter |
Description | Command run internally |
---|---|---|---|
Linux / macOS | unspecified | The default shell on non-Windows platforms. Note that this runs a different command to when bash is specified explicitly. If bash is not found in the path, this is treated as sh . |
bash -e {0} |
All | bash |
The default shell on non-Windows platforms with a fallback to sh . When specifying a bash shell on Windows, the bash shell included with Git for Windows is used. |
bash --noprofile --norc -eo pipefail {0} |
All | pwsh |
The PowerShell Core. {% data variables.product.prodname_dotcom %} appends the extension .ps1 to your script name. |
pwsh -command ". '{0}'" |
All | python |
Executes the python command. | python {0} |
Linux / macOS | sh |
The fallback behavior for non-Windows platforms if no shell is provided and bash is not found in the path. |
sh -e {0} |
Windows | cmd |
{% data variables.product.prodname_dotcom %} appends the extension .cmd to your script name and substitutes for {0} . |
%ComSpec% /D /E:ON /V:OFF /S /C "CALL "{0}"" . |
Windows | pwsh |
This is the default shell used on Windows. The PowerShell Core. {% data variables.product.prodname_dotcom %} appends the extension .ps1 to your script name. If your self-hosted Windows runner does not have PowerShell Core installed, then PowerShell Desktop is used instead. |
pwsh -command ". '{0}'" . |
Windows | powershell |
The PowerShell Desktop. {% data variables.product.prodname_dotcom %} appends the extension .ps1 to your script name. |
powershell -command ". '{0}'" . |