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_tools
⚠️
windows_first
⚠️
missing_linux_example
Summary:
The documentation page demonstrates a strong Windows and PowerShell bias. All command-line examples use Windows PowerShell and Az PowerShell cmdlets, with no mention of Bash, Azure CLI, or Linux-native scripting. The internal cmdlets and runbook examples are PowerShell-centric. The only alternative shown is Python, but there are no examples or guidance for Linux shell users or for using Azure CLI. Windows tools and terminology (e.g., 'Windows PowerShell', 'Windows Hybrid Runbook Worker') are referenced exclusively or before any cross-platform alternatives.
Recommendations:
- Add equivalent examples using Azure CLI (az automation variable ...) for variable management, which works cross-platform.
- Include Bash or shell script examples for Linux users, especially for common tasks like creating, retrieving, and updating variables.
- When referencing PowerShell, clarify that Az PowerShell modules are available cross-platform, and provide explicit instructions for Linux/macOS environments.
- Avoid using 'Windows PowerShell' as the default term; use 'PowerShell' unless specifically referring to Windows-only features.
- Mention and provide guidance for running runbooks on Linux Hybrid Runbook Workers, not just Windows.
- Ensure that references to tools and workflows are not Windows-first; present cross-platform options in parallel or with equal prominence.
Create pull request
Flagged Code Snippets
$rgName = "ResourceGroup01"
$accountName = "MyAutomationAccount"
$variableValue = "My String"
New-AzAutomationVariable -ResourceGroupName "ResourceGroup01"
-AutomationAccountName "MyAutomationAccount" -Name 'MyStringVariable' `
-Encrypted $false -Value 'My String'
$string = (Get-AzAutomationVariable -ResourceGroupName "ResourceGroup01" `
-AutomationAccountName "MyAutomationAccount" -Name 'MyStringVariable').Value
$rgName = "ResourceGroup01"
$accountName = "MyAutomationAccount"
$numberOfIterations = Get-AutomationVariable -Name "numberOfIterations"
$numberOfRunnings = Get-AutomationVariable -Name "numberOfRunnings"
$sampleMessage = Get-AutomationVariable -Name "sampleMessage"
Write-Output "Runbook has been run $numberOfRunnings times."
for ($i = 1; $i -le $numberOfIterations; $i++) {
Write-Output "$i`: $sampleMessage"
}
Set-AutomationVariable -Name numberOfRunnings -Value ($numberOfRunnings += 1)
$encryptvar = Get-AutomationVariable -Name TestVariable
Write-output "The encrypted value of the variable is: $encryptvar"
$rgName = "ResourceGroup01"
$accountName = "MyAutomationAccount"
$vm = Get-AzVM -ResourceGroupName "ResourceGroup01" -Name "VM01" | Select Name, Location, Extensions
New-AzAutomationVariable -ResourceGroupName "ResourceGroup01" -AutomationAccountName "MyAutomationAccount" -Name "MyComplexVariable" -Encrypted $false -Value $vm
$vmValue = Get-AzAutomationVariable -ResourceGroupName "ResourceGroup01" `
-AutomationAccountName "MyAutomationAccount" -Name "MyComplexVariable"
$vmName = $vmValue.Value.Name
$vmTags = $vmValue.Value.Tags