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: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters http://go.microsoft.com/fwlink/p/?LinkID=113216 .
Links
| [[Function Reference | HelpersReference]] |
NOTE: This documentation has been automatically generated from Import-Module "$env:ChocolateyInstalls\veeams\veeam.psm1" -Force; Get-Help Invoke-PackageParameterValidation -Full.
View the source for Invoke-PackageParameterValidation