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
Summary:
The documentation provides only a PowerShell script for deploying Arc-enabled PostgreSQL in an Extended Zone, with no equivalent Bash or Linux shell example. The use of PowerShell as the sole scripting language and the absence of Linux/Unix command-line instructions indicate a clear Windows bias. This may hinder accessibility for users working primarily in Linux environments, which are common for Kubernetes and cloud-native workloads.
Recommendations:
  • Provide a Bash (or generic shell) script example alongside the PowerShell script to ensure Linux parity.
  • Explicitly mention that the steps can be performed on both Windows and Linux, and clarify any OS-specific prerequisites.
  • Where possible, use cross-platform tools and scripting patterns (e.g., az CLI, kubectl) in examples, and avoid wrapping them exclusively in PowerShell functions.
  • Include notes or sections highlighting any differences or additional steps required for Linux users.
  • Consider reordering or supplementing examples so that Linux/Bash instructions are presented first or alongside Windows/PowerShell.
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

. "./CreateArcEnabledAksOnEZ" function CreatePostgreSqlOnArcEnabledAksEz { param( [string] $SubscriptionId, [string] $AKSClusterResourceGroupName, [string] $location = "westus", [string] $AKSName, [string] $edgeZone, [int] $nodeCount = 2, [string] $vmSize = "standard_nv12ads_a10_v5", [string] $ArcResourceGroupName, [string] $DataControllerName, [string] $CustomLocationName, [string] $Namespace, [string] $DataControllerConfigProfile, [string] $KeyVaultName, [string] $VaultSecretUser, [string] $VaultSecretPass, [string] $PostgreSqlName, [switch] $Debug ) try { # Set the subscription az account set --subscription $SubscriptionId # Create the Arc-enabled EZ AKS cluster createArcEnabledAksOnEz -SubscriptionId $SubscriptionId -AKSClusterResourceGroupName $AKSClusterResourceGroupName -location $location -AKSName $AKSName -edgeZone $edgeZone -nodeCount $nodeCount -vmSize $vmSize -ArcResourceGroupName $ArcResourceGroupName -Debug:$Debug # Define name of the connected cluster resource $CLUSTER_NAME = "$ArcResourceGroupName-cluster" # Create a key vault and store login $AZDATA_USERNAME = az keyvault secret show --vault-name $KeyVaultName --name $VaultSecretUser --query value -o tsv $AZDATA_PASSWORD = az keyvault secret show --vault-name $KeyVaultName --name $VaultSecretPass --query value -o tsv # Define login for data controller and metrics $ENV:AZDATA_LOGSUI_USERNAME = $AZDATA_USERNAME $ENV:AZDATA_LOGSUI_PASSWORD = $AZDATA_PASSWORD $ENV:AZDATA_METRICSUI_USERNAME = $AZDATA_USERNAME $ENV:AZDATA_METRICSUI_PASSWORD = $AZDATA_PASSWORD $ENV:AZDATA_USERNAME = $AZDATA_USERNAME $ENV:AZDATA_PASSWORD = $AZDATA_PASSWORD # Define the connected cluster and extension for the custom location $CONNECTED_CLUSTER_ID=$(az connectedk8s show --resource-group $ArcResourceGroupName --name $CLUSTER_NAME --query id --output tsv) $EXTENSION_ID=$(az k8s-extension show ` --cluster-type connectedClusters ` --name 'my-data-controller-custom-location-ext' ` --cluster-name $CLUSTER_NAME ` --resource-group $ArcResourceGroupName ` --query id ` --output tsv) # Create a custom location for the data controller Write-Output "Creating data controller custom location..." az customlocation create ` --resource-group $ArcResourceGroupName ` --name $CustomLocationName ` --host-resource-id $CONNECTED_CLUSTER_ID ` --namespace $Namespace ` --cluster-extension-ids $EXTENSION_ID # Create data controller on Arc-enabled AKS cluster Write-Output "Creating Arc Data Controller..." az arcdata dc create --name $DataControllerName --subscription $SubscriptionId --cluster-name $CLUSTER_NAME --resource-group $ArcResourceGroupName --connectivity-mode direct --custom-location $CustomLocationName --profile-name $DataControllerConfigProfile # Create PostgreSQL server on Arc-enabled AKS cluster Write-Output "Creating PostgreSQL server..." az postgres server-arc create --name $PostgreSqlName --k8s-namespace $Namespace --use-k8s } catch { # Catch any error Write-Error "An error occurred" Write-Error $Error[0] } } CreatePostgreSqlOnArcEnabledAksEz -SubscriptionId "<your subscription>" ` -AKSClusterResourceGroupName "my-aks-cluster-group" ` -location "westus" ` -AKSName "my-aks-cluster" ` -edgeZone "losangeles" ` -nodeCount 2 ` -vmSize "standard_nv12ad-DataControllerConfigProfiles_a10_v5" ` -ArcResourceGroupName "myArcResourceGroup" ` -DataControllerName "myDataController" ` -CustomLocationName "dc-custom-location" ` -Namespace "my-data-controller-custom-location" ` -DataControllerConfigProfile "azure-arc-aks-premium-storage" ` -KeyVaultName "ezDataControllerConfig" ` -VaultSecretUser "AZDATA-USERNAME" ` -VaultSecretPass "AZDATA-PASSWORD" ` -PostgreSqlName "my-postgresql"