Skip to main content

Documentation Index

Fetch the complete documentation index at: https://tally.wharflab.com/llms.txt

Use this file to discover all available pages before exploring further.

powershell/PSAvoidShouldContinueWithoutForce is a PSScriptAnalyzer diagnostic emitted by tally for PowerShell snippets embedded in Dockerfiles.
PropertyValue
SeverityWarning
CategoryPSScriptAnalyzer
Auto-fixNo

Description

Functions that use ShouldContinue should have a boolean force parameter to allow user to bypass it. You can get more details by running Get-Help about_Functions_CmdletBindingAttribute and Get-Help about_Functions_Advanced_Methods command in PowerShell.

How

Call the ShouldContinue method in advanced functions when ShouldProcess method returns $true.

Examples

Problematic code

Function Test-ShouldContinue
{
    [CmdletBinding(SupportsShouldProcess=$true)]
    Param
    (
        $MyString = 'blah'
    )

    if ($PsCmdlet.ShouldContinue('ShouldContinue Query', 'ShouldContinue Caption'))
    {
        ...
    }
}

Correct code

Function Test-ShouldContinue
{
    [CmdletBinding(SupportsShouldProcess=$true)]
    Param
    (
        $MyString = 'blah',
        [Switch]$Force
    )

    if ($Force -or $PsCmdlet.ShouldContinue('ShouldContinue Query', 'ShouldContinue Caption'))
    {
        ...
    }
}

Source

This rule documentation is adapted from Microsoft’s PSScriptAnalyzer documentation for AvoidShouldContinueWithoutForce, licensed under CC BY 4.0.