Skip to content

Test-NBMinimumVersion

Since

v4.5.0.0

SYNOPSIS

Checks if the connected Netbox version meets the minimum requirement.

SYNTAX

Test-NBMinimumVersion [-ParameterName] <String> [-MinimumVersion] <String> [-BoundParameters] <Hashtable> [[-FeatureName] <String>] [-ProgressAction <ActionPreference>] [<CommonParameters>]

DESCRIPTION

This helper function checks if a parameter requires a minimum Netbox version and handles it appropriately: - Emits a warning if the current Netbox version is \< the required version - Returns $true if the parameter should be excluded from the API request - Returns $false if the parameter can be used (version meets requirement)

This allows for graceful handling of new features that only work on newer Netbox versions while maintaining backwards compatibility.

EXAMPLES

EXAMPLE 1

```

In a function with a Profile parameter that requires Netbox 4.5+:

if (Test-NBMinimumVersion -ParameterName 'Profile' -MinimumVersion '4.5.0' -BoundParameters $PSBoundParameters) { # Version too low - parameter will be excluded } ```

PARAMETERS

-ParameterName

The name of the parameter that requires a minimum version.

```yaml Type: String Parameter Sets: (All) Aliases:

Required: True Position: 1 Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-MinimumVersion

The minimum Netbox version required for this parameter.

```yaml Type: String Parameter Sets: (All) Aliases:

Required: True Position: 2 Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-BoundParameters

The $PSBoundParameters from the calling function.

```yaml Type: Hashtable Parameter Sets: (All) Aliases:

Required: True Position: 3 Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-FeatureName

Optional friendly name for the feature (used in warning message).

```yaml Type: String Parameter Sets: (All) Aliases:

Required: False Position: 4 Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-ProgressAction

{{ Fill ProgressAction Description }}

```yaml Type: ActionPreference Parameter Sets: (All) Aliases: proga

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

OUTPUTS

[bool] - $true if parameter should be excluded (version too low), $false if it can be used

NOTES

AddedInVersion: v4.5.0.0 This function requires that Connect-NBAPI has been called and $script:NetboxConfig.ParsedVersion is set.

Common parameters

common request params