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:
⚠️ windows_first
⚠️ missing_linux_example
⚠️ windows_tools
⚠️ powershell_heavy
Summary:
The documentation is heavily Windows-centric, with all examples, tools, and scripts tailored for Windows environments. Only Windows commands (e.g., cmdkey, set, msiexec), Windows file paths, and Windows-specific tools are mentioned. PowerShell is the only scripting interface referenced for automation, and there are no examples or guidance for Linux or cross-platform environments. The documentation assumes the underlying platform is Windows and does not acknowledge or provide alternatives for Linux users.
Recommendations:
  • Explicitly state that Azure-SSIS IR currently only supports Windows-based runtimes, if that is the case. If Linux support is planned or available, provide equivalent Linux/bash examples and instructions.
  • Wherever Windows commands or tools are mentioned (e.g., cmdkey, set, msiexec), add notes or alternatives for Linux environments, or clarify that these steps are not applicable to Linux.
  • If PowerShell is the only supported automation interface, clarify this limitation early in the documentation. If bash or other scripting options are available, provide corresponding examples.
  • Review all sample scripts and setup instructions to ensure they are either cross-platform or clearly marked as Windows-only. Consider providing a table or section comparing Windows and Linux setup steps if both are supported.
  • For third-party component installation, indicate whether Linux-compatible versions exist or if the components are Windows-only.
  • Add a section on platform requirements and limitations, highlighting the OS support for Azure-SSIS IR and its custom setup features.
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

$ResourceGroupName = "[your Azure resource group name]" $DataFactoryName = "[your data factory name]" $AzureSSISName = "[your Azure-SSIS IR name]" # Custom setup info: Standard/express custom setups $SetupScriptContainerSasUri = "" # OPTIONAL to provide a SAS URI of blob container for standard custom setup where your script and its associated files are stored $ExpressCustomSetup = "[RunCmdkey|SetEnvironmentVariable|InstallAzurePowerShell|SentryOne.TaskFactory|oh22is.SQLPhonetics.NET|oh22is.HEDDA.IO|KingswaySoft.IntegrationToolkit|KingswaySoft.ProductivityPack|Theobald.XtractIS|AecorSoft.IntegrationService|CData.Standard|CData.Extended or leave it empty]" # OPTIONAL to configure an express custom setup without script # Add custom setup parameters if you use standard/express custom setups if(![string]::IsNullOrEmpty($SetupScriptContainerSasUri)) { Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -SetupScriptContainerSasUri $SetupScriptContainerSasUri } if(![string]::IsNullOrEmpty($ExpressCustomSetup)) { if($ExpressCustomSetup -eq "RunCmdkey") { $addCmdkeyArgument = "YourFileShareServerName or YourAzureStorageAccountName.file.core.windows.net" $userCmdkeyArgument = "YourDomainName\YourUsername or azure\YourAzureStorageAccountName" $passCmdkeyArgument = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourPassword or YourAccessKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.CmdkeySetup($addCmdkeyArgument, $userCmdkeyArgument, $passCmdkeyArgument) } if($ExpressCustomSetup -eq "SetEnvironmentVariable") { $variableName = "YourVariableName" $variableValue = "YourVariableValue" $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.EnvironmentVariableSetup($variableName, $variableValue) } if($ExpressCustomSetup -eq "InstallAzurePowerShell") { $moduleVersion = "YourAzModuleVersion" $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.AzPowerShellSetup($moduleVersion) } if($ExpressCustomSetup -eq "SentryOne.TaskFactory") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "oh22is.SQLPhonetics.NET") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "oh22is.HEDDA.IO") { $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup) } if($ExpressCustomSetup -eq "KingswaySoft.IntegrationToolkit") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "KingswaySoft.ProductivityPack") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "Theobald.XtractIS") { $jsonData = Get-Content -Raw -Path YourLicenseFile.json $jsonData = $jsonData -replace '\s','' $jsonData = $jsonData.replace('"','\"') $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString($jsonData) $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "AecorSoft.IntegrationService") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "CData.Standard") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "CData.Extended") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } # Create an array of one or more express custom setups $setups = New-Object System.Collections.ArrayList $setups.Add($setup) Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -ExpressCustomSetup $setups } Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -Force