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
⚠️ windows_tools
⚠️ missing_linux_example
Summary:
The documentation demonstrates a strong Windows and PowerShell bias. All scripting examples use PowerShell, and the primary script-based deployment method is via PowerShell scripts (.ps1). The 'Azure PowerShell' task is featured exclusively, with no mention of Bash, CLI, or cross-platform scripting alternatives. The file copy and deployment examples use the 'windows-latest' build agent pool, and there are no Linux or macOS-specific instructions or examples. Windows tools and patterns (such as Visual Studio project scripts and PowerShell) are referenced before or instead of Linux equivalents.
Recommendations:
  • Provide equivalent examples using Azure CLI (az) in Bash scripts, which are cross-platform and commonly used on Linux/macOS.
  • Include YAML pipeline examples that use 'ubuntu-latest' or 'macos-latest' build agents for all tasks, not just for PowerShell.
  • Mention and demonstrate how to use Bash scripts for ARM template deployment, including sample Bash scripts.
  • Reference cross-platform editors and tools (such as VS Code) alongside or instead of Visual Studio.
  • Clarify that PowerShell Core is available cross-platform, but also show how to use native shell scripting on Linux.
  • Ensure that all tasks (such as file copy) have Linux-compatible alternatives, and provide examples using those alternatives (e.g., using AzCopy in Bash).
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

Flagged Code Snippets

trigger: - master pool: vmImage: 'ubuntu-latest' steps: - task: AzurePowerShell@5 inputs: azureSubscription: 'script-connection' ScriptType: 'FilePath' ScriptPath: './Deploy-AzTemplate.ps1' ScriptArguments: -Location 'centralus' -ResourceGroupName 'demogroup' -TemplateFile templates\mainTemplate.json azurePowerShellVersion: 'LatestVersion'
steps: - task: AzurePowerShell@3
ScriptPath: '<your-relative-path>/<script-file-name>.ps1'
ScriptArguments: -Location 'centralus' -ResourceGroupName 'demogroup' -TemplateFile templates\mainTemplate.json
trigger: - master pool: vmImage: 'windows-latest' steps: - task: AzureFileCopy@4 inputs: SourcePath: 'templates' azureSubscription: 'copy-connection' Destination: 'AzureBlob' storage: 'demostorage' ContainerName: 'projecttemplates' name: AzureFileCopy
trigger: - master pool: vmImage: 'windows-latest' steps: - task: AzureFileCopy@4 inputs: SourcePath: 'templates' azureSubscription: 'copy-connection' Destination: 'AzureBlob' storage: 'demostorage' ContainerName: 'projecttemplates' name: AzureFileCopy - task: AzureResourceManagerTemplateDeployment@3 inputs: deploymentScope: 'Resource Group' azureResourceManagerConnection: 'copy-connection' subscriptionId: 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e' action: 'Create Or Update Resource Group' resourceGroupName: 'demogroup' location: 'West US' templateLocation: 'URL of the file' csmFileLink: '$(AzureFileCopy.StorageContainerUri)templates/mainTemplate.json$(AzureFileCopy.StorageContainerSasToken)' csmParametersFileLink: '$(AzureFileCopy.StorageContainerUri)templates/mainTemplate.parameters.json$(AzureFileCopy.StorageContainerSasToken)' deploymentMode: 'Incremental' deploymentName: 'deploy1'