Project

PSPublishModule

Build, test, version, sign, and publish PowerShell modules with reusable PowerForge pipelines.

Stars 48
Forks 16
PowerShell Gallery downloads 17,213
Release v3.0.186
Language: C# Updated: 2026-11-04
Command

Invoke-ReleaseValidation

Module
PSPublishModule
Inputs
PowerForge.ReleaseValidationSpec
Outputs
PowerForge.ReleaseValidationReport System.String

Validates final artifacts and runs isolated product smoke tests without publishing.

Syntax

Invoke-ReleaseValidation
-ConfigPath <String>
[-JsonOnly]
[-JsonPath <String>]
[-ProjectRoot <String>]
[-Variables <Hashtable>]
[-Version <String>]
[<CommonParameters>]
#
Parameter set: Config
Invoke-ReleaseValidation
-Configuration <ReleaseValidationSpec>
[-JsonOnly]
[-JsonPath <String>]
[-ProjectRoot <String>]
[-Variables <Hashtable>]
[-Version <String>]
[<CommonParameters>]
#
Parameter set: Configuration
Invoke-ReleaseValidation
[-JsonOnly]
[-JsonPath <String>]
[-ProjectRoot <String>]
-Settings <ScriptBlock>
[-Variables <Hashtable>]
[-Version <String>]
[<CommonParameters>]
#
Parameter set: Settings

Description

Configuration can come from JSON, a typed object, or a settings block using New-ConfigurationReleaseValidation.

Examples

Validate a local package set

Invoke-ReleaseValidation -ConfigPath './Build/validation.json' -Variables @{ PackageRoot = './Artifacts/packages' }

Export a command contract as JSON

Invoke-ReleaseValidation -JsonOnly -Settings { New-ConfigurationReleaseValidation -Commands @{ Name = 'CLI help'; FileName = 'example'; Arguments = @('--help') } }

Parameters

-ConfigPath String requiredsets: Config
Path to a release-validation JSON file.
-JsonOnly SwitchParameter optional
Return JSON without executing validation.
-JsonPath String optional
Optional configuration export path. Relative paths use the current PowerShell directory.
-ProjectRoot String optional
Optional project-root override.
-Variables Hashtable optional
Named path and value substitutions used by the configuration.
-Version String optional
Expected artifact version; otherwise inferred from the package or module.
-Configuration ReleaseValidationSpec requiredpipeline: True (ByValue)sets: Configuration
Typed validation configuration.
-Settings ScriptBlock requiredsets: Settings
Block that emits one New-ConfigurationReleaseValidation object.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.