Sad Tux - Windows bias detected
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

Detected Bias Types
powershell_heavy
windows_tools
missing_linux_example
windows_first
Summary
The documentation is heavily focused on Windows PowerShell and PowerShell Workflow, with all examples, terminology, and workflows centered around PowerShell cmdlets and scripting. There is no mention of Linux, Bash, or cross-platform scripting alternatives. The documentation assumes familiarity with Windows-centric tools and patterns, and does not provide parity or guidance for Linux users or those using non-Windows environments.
Recommendations
  • Explicitly state that Azure Automation graphical runbooks are currently limited to PowerShell and clarify platform support (e.g., Windows-only or cross-platform PowerShell Core).
  • If Linux support is available (e.g., via PowerShell Core on Linux), provide examples and guidance for Linux users, including any differences in cmdlet availability or behavior.
  • Include a section comparing graphical runbooks with textual runbooks, highlighting scenarios where Bash, Python, or other languages (supported in Azure Automation) may be preferable, and link to relevant documentation.
  • Mention any limitations or considerations for Linux-based Automation workers, if applicable.
  • Where possible, provide cross-platform PowerShell examples (using PowerShell Core syntax) and clarify when examples are Windows-specific.
  • Add references or links to documentation for authoring and running runbooks in other languages (Bash, Python) for users who do not use PowerShell.
GitHub Create Pull Request

Scan History

Date Scan Status Result
2026-01-14 00:00 #250 in_progress Biased Biased
2026-01-13 00:00 #246 completed Biased Biased
2026-01-12 00:00 #243 cancelled Biased Biased
2026-01-11 00:00 #240 completed Biased Biased
2026-01-10 00:00 #237 completed Biased Biased
2026-01-09 00:34 #234 completed Biased Biased
2026-01-08 00:53 #231 completed Clean Clean
2026-01-06 18:15 #225 cancelled Clean Clean
2025-08-17 00:01 #83 cancelled Clean Clean
2025-07-13 21:37 #48 completed Biased Biased
2025-07-09 13:09 #3 cancelled Clean Clean
2025-07-08 04:23 #2 cancelled Biased Biased

Flagged Code Snippets

You can join multiple conditions in your runbook using a [logical operator](/powershell/module/microsoft.powershell.core/about/about_logical_operators), such as `-and` or `-or`. For example, the following condition checks to see if the virtual machine in the previous example is in a state of Stopped or Stopping.

After you configure a retry condition for an activity, the activity includes two visual cues to remind you. One is presented in the activity and the other is shown when you review the configuration of the activity.

![Activity Retry Visual Indicators](media/automation-graphical-authoring-intro/runbook-activity-retry-visual-cue.png)

### Workflow Script control

A workflow Script control is a special activity that accepts PowerShell or PowerShell Workflow script, depending on the type of graphical runbook being authored. This control provides functionality that might not be available by other means. It cannot accept parameters, but it can use variables for activity output and runbook input parameters. Any output of the activity is added to the databus. An exception is output with no outgoing link, in which case the output is added to the output of the runbook.

For example, the following code performs date calculations using a runbook input variable named `NumberOfDays`. It then sends a calculated DateTime value as output to be used by subsequent activities in the runbook.

You can join multiple conditions in your runbook using a [logical operator](/powershell/module/microsoft.powershell.core/about/about_logical_operators), such as `-and` or `-or`. For example, the following condition checks to see if the virtual machine in the previous example is in a state of Stopped or Stopping.

### Use hashtables

[Hashtables](/powershell/module/microsoft.powershell.core/about/about_hash_tables) are name-value pairs that are useful for returning a set of values. You might also see a hashtable referred to as a dictionary. Properties for certain activities expect a hashtable instead of a simple value.

Create a hashtable using the following syntax. It can contain any number of entries, but each is defined by a name and value.