Evotec

Project

PSPublishModule

PSPublishModule is an open-source PowerShell and .NET project with packages, release history, and technical documentation.

Stars 43
Forks 13
Open issues 1
PowerShell Gallery downloads 13,876
Release v3.0.3
Language: C# Updated: 2026-04-14

API Reference

Cmdlet

Invoke-ProjectBuild

Namespace PSPublishModule
Inputs
None
Outputs
PowerForge.ProjectBuildResult

Executes a repository-wide .NET build/release pipeline from a JSON configuration.

Remarks

The configuration file follows Schemas/project.build.schema.json in the PSPublishModule repository. Use it to define discovery rules, versioning, staging, NuGet publishing, and GitHub release settings. GitHub tag/release templates support tokens: {Project}, {Version}, {PrimaryProject}, {PrimaryVersion}, {Repo}, {Repository}, {Date}, {UtcDate}, {DateTime}, {UtcDateTime}, {Timestamp}, {UtcTimestamp}. When GitHub release mode is Single and multiple project versions are present, {Version} defaults to the local date (yyyy.MM.dd) unless a primary project version is available.

Examples

Authored help example

EXAMPLE 1


Invoke-ProjectBuild -ConfigPath 'C:\Path'
        

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.

Syntax

Invoke-ProjectBuild [-Build] -ConfigPath <String> [-Plan] [-PlanPath <String>] [-PublishGitHub] [-PublishNuget] [-UpdateVersions] [<CommonParameters>]
#
Parameter set: All Parameter Sets

Parameters

Build SwitchParameter optionalposition: namedpipeline: False
Run build/pack step.
ConfigPath String requiredposition: namedpipeline: False
Path to the JSON configuration file.
Plan SwitchParameter optionalposition: namedpipeline: False
Generate a plan only (no build/publish actions).
PlanPath String optionalposition: namedpipeline: False
Optional path to write the plan JSON file.
PublishGitHub SwitchParameter optionalposition: namedpipeline: False
Publish artifacts to GitHub.
PublishNuget SwitchParameter optionalposition: namedpipeline: False
Publish packages to NuGet.
UpdateVersions SwitchParameter optionalposition: namedpipeline: False
Run version update step.

Outputs

PowerForge.ProjectBuildResult