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

New-DotNetPublishConfig

Namespace PSPublishModule
Inputs
None
Outputs
System.String PowerForge.DotNetPublishConfigScaffoldResult

Scaffolds a starter powerforge.dotnetpublish.json configuration file.

Remarks

Use this cmdlet for JSON-first onboarding of the DotNet publish engine. The generated config can be executed with Invoke-DotNetPublish -ConfigPath ....

Examples

Authored help example

Create a starter config from the current repository root


New-DotNetPublishConfig -ProjectRoot '.' -PassThru
        

Generate config for a selected project and overwrite existing file


New-DotNetPublishConfig -Project '.\src\App\App.csproj' -Runtimes 'win-x64','win-arm64' -Styles PortableCompat,AotSpeed -Force
        

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

New-DotNetPublishConfig [-Configuration <String>] [-Force] [-Framework <String>] [-NoSchema] [-OutputPath <String>] [-PassThru] [-ProjectPath <String>] [-ProjectRoot <String>] [-Runtimes <String[]>] [-Styles <Portable>] [-TargetName <String>] [<CommonParameters>]
#
Parameter set: All Parameter Sets

Parameters

Configuration String optionalposition: namedpipeline: False
Build configuration (default: Release).
Force SwitchParameter optionalposition: namedpipeline: Falsealiases: Overwrite
Overwrite existing config file.
Framework String optionalposition: namedpipeline: False
Optional framework override (for example net10.0).
NoSchema SwitchParameter optionalposition: namedpipeline: False
Omits the $schema property from generated JSON.
OutputPath String optionalposition: namedpipeline: Falsealiases: ConfigPath, Path
Output config path (default: powerforge.dotnetpublish.json).
PassThru SwitchParameter optionalposition: namedpipeline: False
Returns detailed scaffold metadata instead of only config path.
ProjectPath String optionalposition: namedpipeline: Falsealiases: Project
Optional path to a specific project file. When omitted, the first matching .csproj is used.
ProjectRoot String optionalposition: namedpipeline: False
Project root used to resolve relative paths.
Runtimes String[] optionalposition: namedpipeline: False
Optional runtime identifiers override.
Styles DotNetPublishStyle[] optionalposition: namedpipeline: Falsevalues: 6
Optional publish styles override.
Possible values: Portable, PortableCompat, PortableSize, FrameworkDependent, AotSpeed, AotSize
TargetName String optionalposition: namedpipeline: False
Optional target name override. Defaults to project file name.

Outputs

System.String PowerForge.DotNetPublishConfigScaffoldResult