This page contains Windows bias

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.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-07-12 23:44 #41 in_progress ❌ Biased
2025-07-12 00:58 #8 cancelled ✅ Clean
2025-07-10 05:06 #7 processing ✅ Clean
2025-07-09 23:22 #6 cancelled ✅ Clean

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).