About This Page
This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.
Bias Analysis
Bias Types:
⚠️
powershell_heavy
⚠️
windows_first
⚠️
missing_linux_example
⚠️
windows_tools
Summary:
The documentation page demonstrates a strong Windows bias by exclusively providing examples and instructions using Windows PowerShell cmdlets and patterns. There are no examples or guidance for starting runbooks using cross-platform tools such as Azure CLI, Bash, or Python SDKs. The PowerShell approach is presented as the primary or only command-line method, and there is no mention of Linux or macOS environments, nor are Linux-native tools or shell examples provided.
Recommendations:
- Add equivalent Azure CLI examples for starting and managing runbooks, including parameter passing and job status retrieval.
- Include Bash shell script examples for Linux/macOS users, especially for API calls using curl or similar tools.
- Mention and provide examples for using the Azure SDKs (e.g., Python, .NET, Java) to start runbooks programmatically from non-Windows environments.
- Clarify that PowerShell Core (pwsh) is cross-platform, and if supported, provide examples that work on Linux/macOS as well as Windows.
- Reorganize sections so that cross-platform or platform-neutral methods (e.g., Azure CLI, REST API) are presented before or alongside Windows-specific tools.
- Explicitly state the platform requirements and alternatives for each method, helping users on Linux or macOS identify suitable options.
Create pull request
Flagged Code Snippets
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][object]$user
)
$userObject = $user | ConvertFrom-JSON
if ($userObject.Show) {
foreach ($i in 1..$userObject.RepeatCount) {
$userObject.FirstName
$userObject.LastName
}
}
}
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][array]$user
)
if ($user[3]) {
foreach ($i in 1..$user[2]) {
$ user[0]
$ user[1]
}
}
}
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][PSCredential]$credential
)
$credential.UserName
}
`Start-AzAutomationRunbook` returns a job object that you can use to track status once the runbook is started. You can then use this job object with [Get-AzAutomationJob](/powershell/module/Az.Automation/Get-AzAutomationJob) to determine the status of the job and [Get-AzAutomationJobOutput](/powershell/module/az.automation/get-azautomationjoboutput) to retrieve its output. The following example starts a runbook called **Test-Runbook**, waits until it has completed, and then displays its output.
If the runbook requires parameters, then you must provide them as a [hashtable](/powershell/module/microsoft.powershell.core/about/about_hash_tables). The key of the hashtable must match the parameter name and the value is the parameter value. The following example shows how to start a runbook with two string parameters named FirstName and LastName, an integer named RepeatCount, and a boolean parameter named Show. For more information on parameters, see [Runbook Parameters](#work-with-runbook-parameters).