Invoke-PackageParameterValidation
Validates and normalizes Chocolatey package parameters based on simple rule types.
Syntax
Invoke-PackageParameterValidation `
-Parameters <Hashtable> `
-Rules <Hashtable> `
[-RequiredParameters <String[]>] `
[-Dependencies <Object[]>] [<CommonParameters>]
Description
Checks supplied package parameters against a hashtable of rule names and types. Ensures required and dependent parameters are present, trims values, and normalizes booleans to ‘1’ or ‘0’. Throws descriptive errors when a parameter fails validation.
Aliases
None
Examples
EXAMPLE 1
$pp = Get-PackageParameters
$rules = @{
installDir = 'Path'
useSsl = 'Boolean'
certificateThumbprint = 'String'
retryCount = 'Integer'
}
$dependencies = @(
@{
Parameter = 'useSsl'
Value = '1'
Requires = @('certificateThumbprint')
}
)
Invoke-PackageParameterValidation -Parameters $pp -Rules $rules -RequiredParameters @('installDir') -Dependencies $dependencies
Inputs
None
Outputs
None
Parameters
-Parameters <Hashtable>
Hashtable of parameters, typically the result of Get-PackageParameters. Values are updated in place when trimmed or normalized.
| Property | Value |
|---|---|
| Aliases | |
| Required? | true |
| Position? | 1 |
| Default Value | |
| Accept Pipeline Input? | false |
-Rules <Hashtable>
Hashtable mapping parameter names to rule types. Supported types: ZeroOrOne, ZeroOneOrTwo, OneOrTwo, Path, String, Integer, Boolean.
| Property | Value |
|---|---|
| Aliases | |
| Required? | true |
| Position? | 2 |
| Default Value | |
| Accept Pipeline Input? | false |
-RequiredParameters [<String[]>]
Names of package parameters that must be supplied with a non-empty value.
| Property | Value |
|---|---|
| Aliases | |
| Required? | false |
| Position? | 3 |
| Default Value | @() |
| Accept Pipeline Input? | false |
-Dependencies [<Object[]>]
Dependency rules for conditionally required parameters. Each rule is a hashtable with Parameter and Requires keys. An optional Value key limits the rule to the specified normalized parameter value.
| Property | Value |
|---|---|
| Aliases | |
| Required? | false |
| Position? | 4 |
| Default Value | @() |
| Accept Pipeline Input? | false |
<CommonParameters>
This cmdlet supports the common parameters. For more information, see about_CommonParameters.
Links
NOTE: This documentation has been automatically generated using:
$extensionPath = Join-Path $env:ChocolateyInstall 'extensions\veeam'
Import-Module (Join-Path $extensionPath 'veeam.psm1') -Force
Get-Help Invoke-PackageParameterValidation -Full
View the source for Invoke-PackageParameterValidation