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 is heavily biased towards Windows and PowerShell. All code examples use PowerShell cmdlets and Windows-specific DSC resources (e.g., WindowsFeature IIS). The prerequisites and instructions focus exclusively on Windows VMs, with no Linux-specific examples or guidance. References and links are also Windows/PowerShell-centric, and there is no demonstration of managing Linux nodes or using Linux-compatible DSC resources.
Recommendations:
  • Add parallel examples for onboarding and configuring Linux VMs, including sample configurations using Linux DSC resources (e.g., nxFile, nxPackage).
  • Include prerequisites and instructions for Linux VMs, such as supported distributions and required packages.
  • Provide Bash/CLI examples where possible, or at least reference how Linux users can interact with Azure Automation State Configuration.
  • Clarify in the introduction and throughout the document whether Linux is still supported, especially in light of the included retirement announcement.
  • Link to documentation specifically about managing Linux nodes with Azure Automation State Configuration, if still supported.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-08-17 00:01 #83 in_progress ✅ Clean
2025-07-13 21:37 #48 completed ❌ Biased
2025-07-09 13:09 #3 cancelled ✅ Clean
2025-07-08 04:23 #2 cancelled ❌ Biased

Flagged Code Snippets

Connect-AzAccount
$registerAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' AzureVMName = 'DscVm' } Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
configuration TestConfig { Node WebServer { WindowsFeature IIS { Ensure = 'Present' Name = 'Web-Server' IncludeAllSubFeature = $true } } }
$importAzAutomationDscConfigurationSplat = @{ SourcePath = 'C:\DscConfigs\TestConfig.ps1' ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' Published = $true } Import-AzAutomationDscConfiguration @importAzAutomationDscConfigurationSplat
$startAzAutomationDscCompilationJobSplat = @{ ConfigurationName = 'TestConfig' ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' } Start-AzAutomationDscCompilationJob @startAzAutomationDscCompilationJobSplat
$registerAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' AzureVMName = 'DscVm' ConfigurationMode = 'ApplyOnly' } Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
# Run a DSC check every 60 minutes $registerAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' AzureVMName = 'DscVm' ConfigurationModeFrequencyMins = 60 } Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
# Get the ID of the DSC node $getAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' Name = 'DscVm' } $node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat # Assign the node configuration to the DSC node $setAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' NodeConfigurationName = 'TestConfig.WebServer' NodeId = $node.Id } Set-AzAutomationDscNode @setAzAutomationDscNodeSplat
# Get the ID of the DSC node $getAzAutomationDscNodeSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' Name = 'DscVm' } $node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat # Get an array of status reports for the DSC node $getAzAutomationDscNodeReportSplat = @{ ResourceGroupName = 'MyResourceGroup' AutomationAccountName = 'myAutomationAccount' NodeId = $node.Id } $reports = Get-AzAutomationDscNodeReport @getAzAutomationDscNodeReportSplat # Display the most recent report $reports[0]