Skip to content

Commit 12197e1

Browse files
authored
Enhance Nova CLI commands with improved feedback and error handling (#236)
* fix(#215): restore deploy help related links * fix(#215): close raw upload coverage gaps * #215 fix: nomalize command help related links * #215 fix(#217): clarify update notification perference status * #215 feat: enhance scaffold feedback and error handling in Initialize-NovaModule * #215 feat: enhance Invoke-NovaAgenticCopilotScaffold with progress feedback and clearer cancellation guidance * #215 feat: enhance Invoke-NovaBuild with progress reporting and next steps guidance Closes refactor(Install-NovaCli): align with terminal-ux-design principles Fixes #219 Closes refactor(Invoke-NovaAgenticCopilotScaffold): align with terminal-ux-design principles Fixes #220 Closes refactor(Invoke-NovaBuild): align with terminal-ux-design principles Fixes #221 * #215 feat: enhance Invoke-NovaCli command handling with improved help and error messages refactor(Invoke-NovaCli): align with terminal-ux-design principles Fixes #222 * #215 feat: enhance Invoke-NovaRelease with progress reporting and next-step guidance refactor(Invoke-NovaRelease): align with terminal-ux-design principles Fixes #223 * #215 feat: enhance New-NovaModulePackage with progress reporting and next-step guidance refactor(New-NovaModulePackage): align with terminal-ux-design principles Fixes #224 * #215 feat: enhance Publish-NovaModule with progress reporting and next-step guidance refactor(Publish-NovaModule): align with terminal-ux-design principles Fixes #225 * #215 feat: enhance Set-NovaUpdateNotificationPreference with WhatIf support and improved messaging refactor(Set-NovaUpdateNotificationPreference): align with terminal-ux-design principles Fixes #226 * #215 feat: enhance Test-NovaBuild with progress reporting and actionable guidance in WhatIf mode refactor(Test-NovaBuild): align with terminal-ux-design principles Fixes #227 * #215 feat: enhance Update-NovaModuleTool with improved workflow and WhatIf support refactor(Update-NovaModuleTools): align with terminal-ux-design principles Fixes #228 * #215 feat: enhance version update workflow with progress reporting and detailed summaries refactor(Update-NovaModuleVersion): align with terminal-ux-design principles Fixes #229 * #215 feat: add tests for NovaPackage and NovaTest workflows, enhancing coverage and status messaging
1 parent 71855b5 commit 12197e1

60 files changed

Lines changed: 2569 additions & 229 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
2121
- `Get-NovaProjectInfo` now fails with clearer recovery guidance when `-Path` does not exist, points to a file, or the target folder is missing `project.json`.
2222
- `Get-NovaUpdateNotificationPreference -Verbose` now explains whether Nova is reading a stored preference or the built-in default, and the command help now points read-only PowerShell users to the matching `% nova notification` workflow.
2323
- `Initialize-NovaModule` now shows scaffold progress, ends with the created project root plus the next suggested cmdlet, and fails with clearer guidance when the target project folder already exists.
24+
- `Install-NovaCli` now prints the installed launcher path, suggests the next command to run, and gives a clearer `PATH` warning when the destination directory is not yet available from the shell.
25+
- `Invoke-NovaAgenticCopilotScaffold` now shows apply progress, ends with the project root plus suggested review and validation steps, and fails with clearer cancellation guidance when the overwrite warning is declined.
26+
- `Invoke-NovaBuild` now shows progress for the main build phases, ends with the output module directory plus the next suggested validation step, and explains the refreshed session when `-ContinuousIntegration` reloads the built module.
27+
- `Invoke-NovaCli` now treats blank command input as root help, reports unknown commands with clearer recovery guidance, and ships a dedicated PlatyPS help topic for the PowerShell wrapper surface.
28+
- `Invoke-NovaRelease` now shows progress for the main release phases, ends with the publish target plus a next-step hint, and uses a plan summary instead of a success summary when `-WhatIf` previews the release.
29+
- `New-NovaModulePackage` now shows progress for build validation and artifact creation, ends with the package target plus the next suggested deployment step, and uses a package-plan summary in `-WhatIf` mode.
30+
- `Publish-NovaModule` now shows progress for build validation, publish, local import, and CI restore phases, ends with the publish target plus a suggested verification step, and uses a publish-plan summary in `-WhatIf` mode.
31+
- `Set-NovaUpdateNotificationPreference` now ends with a clear success or preview summary, prints the settings file path, suggests `Get-NovaUpdateNotificationPreference` as the next verification step, and gives a more actionable validation error when no enable/disable switch is supplied.
32+
- `Test-NovaBuild` now shows progress across the main test phases, ends with the result file path plus a coverage summary and next-step hint when tests pass, uses a test-plan summary in `-WhatIf` mode, and fails with more actionable guidance when Pester or coverage checks fail.
33+
- `Update-NovaModuleTool` now ends with a visible up-to-date, preview, cancelled, or updated summary, skips prerelease confirmation during `-WhatIf`, shows progress for the actual self-update step, and suggests `Get-NovaProjectInfo -Installed` after a successful update.
34+
- `Update-NovaModuleVersion` now ends with a visible preview, cancelled, or updated summary, prints the resolved version file plus the detected/applied release label, shows progress while writing `project.json`, and suggests the next command to run after the bump.
2435

2536
### Deprecated
2637

RELEASE_NOTE.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,17 @@ This file summarizes the release notes for NovaModuleTools. **UNRELEASED** chang
1717
- `Get-NovaProjectInfo` now explains how to recover when `-Path` is invalid or the target folder is not a Nova project root.
1818
- `Get-NovaUpdateNotificationPreference -Verbose` now tells you whether Nova is using a stored update-notification preference or the built-in default, and the help now points to the matching `% nova notification` workflow.
1919
- `Initialize-NovaModule` now shows scaffold progress, ends with the project root and the next suggested cmdlet, and gives clearer recovery guidance when the target project folder already exists.
20+
- `Install-NovaCli` now prints the installed launcher path, suggests the next command to run, and gives a clearer `PATH` warning when the launcher directory is not yet available from the shell.
21+
- `Invoke-NovaAgenticCopilotScaffold` now shows apply progress, ends with the project root plus suggested review and validation steps, and gives clearer cancellation guidance when the overwrite warning is declined.
22+
- `Invoke-NovaBuild` now shows progress for the main build phases, ends with the output module directory plus the next suggested validation step, and explains the refreshed session when `-ContinuousIntegration` reloads the built module.
23+
- `Invoke-NovaCli` now treats blank command input as root help, reports unknown commands with clearer recovery guidance, and ships a dedicated help topic for the PowerShell wrapper surface.
24+
- `Invoke-NovaRelease` now shows progress for the main release phases, ends with the publish target plus a next-step hint, and uses a plan summary instead of a success summary when `-WhatIf` previews the release.
25+
- `New-NovaModulePackage` now shows progress for build validation and artifact creation, ends with the package target plus the next suggested deployment step, and uses a package-plan summary in `-WhatIf` mode.
26+
- `Publish-NovaModule` now shows progress for build validation, publish, local import, and CI restore phases, ends with the publish target plus a suggested verification step, and uses a publish-plan summary in `-WhatIf` mode.
27+
- `Set-NovaUpdateNotificationPreference` now ends with a clear success or preview summary, prints the settings file path, suggests `Get-NovaUpdateNotificationPreference` as the next verification step, and gives a more actionable validation error when no enable/disable switch is supplied.
28+
- `Test-NovaBuild` now shows progress across the main test phases, ends with the result file path plus a coverage summary and next-step hint when tests pass, uses a test-plan summary in `-WhatIf` mode, and fails with more actionable guidance when Pester or coverage checks fail.
29+
- `Update-NovaModuleTool` now ends with a visible up-to-date, preview, cancelled, or updated summary, skips prerelease confirmation during `-WhatIf`, shows progress for the actual self-update step, and suggests `Get-NovaProjectInfo -Installed` after a successful update.
30+
- `Update-NovaModuleVersion` now ends with a visible preview, cancelled, or updated summary, prints the resolved version file plus the detected/applied release label, shows progress while writing `project.json`, and suggests the next command to run after the bump.
2031

2132
### Deprecated
2233

docs/NovaModuleTools/en-US/Install-NovaCli.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ PS> Install-NovaCli [[-DestinationDirectory] <string>] [-Force] [-WhatIf] [-Conf
3030
By default, the launcher is installed to `~/.local/bin/nova` on macOS and Linux. If that directory is not on your
3131
`PATH`, the command warns so you can update your shell profile.
3232

33-
After a successful install, `Install-NovaCli` also prints the release notes link from the installed module manifest.
33+
After a successful install, `Install-NovaCli` prints the installed launcher path, suggests the next command to run,
34+
and also prints the release notes link from the installed module manifest.
3435

3536
Use this command when you want `nova` to be available directly from your shell as the launcher-oriented CLI entrypoint.
3637

@@ -168,8 +169,13 @@ Returns the installed command name, destination directory, installed path, and w
168169

169170
## NOTES
170171

171-
After running `Install-NovaCli`, add the destination directory to your shell `PATH` if needed.
172+
`Install-NovaCli` currently supports macOS and Linux. On Windows, use `Invoke-NovaCli` from `pwsh` after importing
173+
NovaModuleTools.
174+
175+
After running `Install-NovaCli`, add the destination directory to your shell `PATH` if needed, start a new shell,
176+
and then run `nova --help` to confirm the launcher is available.
172177

173178
## RELATED LINKS
174179

180+
- [Update-NovaModuleTool](./Update-NovaModuleTools.md)
175181
- [Publish-NovaModule](./Publish-NovaModule.md)

docs/NovaModuleTools/en-US/Invoke-NovaAgenticCopilotScaffold.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ By default the workflow shows an overwrite warning before it updates the managed
3434

3535
The target path must contain a valid `project.json`. Invalid project metadata or an invalid short name stops the command with a clear validation error.
3636

37+
During apply or refresh, Nova shows progress for the main scaffold phases and ends with the project root plus the next suggested review and validation steps.
38+
3739
## EXAMPLES
3840

3941
### EXAMPLE 1
@@ -201,6 +203,8 @@ This workflow does not persist `ShortName` to `project.json` and does not infer
201203

202204
`README.md`, `CHANGELOG.md`, and `RELEASE_NOTE.md` are created only when they are missing.
203205

206+
Press `Ctrl+C` before confirming the overwrite warning if you want to cancel the apply without changing files.
207+
204208
## RELATED LINKS
205209

206210
- [Initialize-NovaModule](./Initialize-NovaModule.md)

docs/NovaModuleTools/en-US/Invoke-NovaBuild.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ PS> Invoke-NovaBuild [-ContinuousIntegration] [-OverrideWarning] [-WhatIf] [-Con
2929

3030
This command supports `-WhatIf` and `-Confirm` through PowerShell `SupportsShouldProcess`. Use `-WhatIf` to preview the build target without clearing `dist/` or generating new build output.
3131

32+
During a real build, Nova shows progress for the main build phases and ends with the output module directory plus the next suggested validation step.
33+
3234
Use `-ContinuousIntegration` when the same PowerShell session needs to keep using the freshly built `dist/` module after the build completes. In CI/self-hosting flows, that re-activates the built module before the command returns.
3335

3436
Use `-OverrideWarning` only when you intentionally want to continue a build even though a file under `src/public`
@@ -62,15 +64,15 @@ If `Preamble` is configured, those lines are written at the very top of the gene
6264
PS> Invoke-NovaBuild
6365
```
6466

65-
Builds the current project into `dist/<ProjectName>/`.
67+
Builds the current project into `dist/<ProjectName>/`, prints the output module directory, and suggests `Test-NovaBuild` as the next validation step.
6668

6769
### EXAMPLE 2
6870

6971
```text
7072
PS> Invoke-NovaBuild -Verbose
7173
```
7274

73-
Builds the current project and writes verbose progress for the build workflow.
75+
Builds the current project, shows phase progress for the build workflow, and writes verbose details from the underlying build helpers.
7476

7577
### EXAMPLE 3
7678

@@ -172,6 +174,8 @@ When `-ContinuousIntegration` is used together with a real build, the command re
172174

173175
Files under `src/public` are expected to contain exactly one top-level function each. Use `-OverrideWarning` only when you intentionally want to bypass that guard for the current build.
174176

177+
Use `Ctrl+C` if you need to stop a running build before all phases complete.
178+
175179
## RELATED LINKS
176180

177181
- [Get-NovaProjectInfo](./Get-NovaProjectInfo.md)
Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
1+
---
2+
document type: cmdlet
3+
external help file: NovaModuleTools-Help.xml
4+
HelpUri: ''
5+
Locale: en-US
6+
Module Name: NovaModuleTools
7+
ms.date: 05/24/2026
8+
PlatyPS schema version: 2024-05-01
9+
title: Invoke-NovaCli
10+
---
11+
12+
# Invoke-NovaCli
13+
14+
## SYNOPSIS
15+
16+
Runs Nova's launcher-style command routing from PowerShell.
17+
18+
## SYNTAX
19+
20+
### __AllParameterSets
21+
22+
```text
23+
PS> Invoke-NovaCli [[-Command] <string>] [[-Arguments] <string[]>] [-WhatIf] [-Confirm] [<CommonParameters>]
24+
```
25+
26+
## DESCRIPTION
27+
28+
`Invoke-NovaCli` is the PowerShell entrypoint behind the launcher-style `nova <command>` workflow.
29+
30+
Use this cmdlet when you want Nova's routed CLI experience from inside PowerShell, including root help, per-command help, and the routed command surfaces such as `build`, `test`, `package`, `publish`, `release`, `update`, and `notification`.
31+
32+
When `-Command` is omitted or blank, Nova falls back to the root CLI help.
33+
34+
This cmdlet forwards `-WhatIf` and `-Confirm` semantics to the routed command surface instead of treating `Invoke-NovaCli` itself as the mutating operation owner.
35+
36+
Use `Get-Help Invoke-NovaCli -Full` when you want the PowerShell wrapper help. Use `nova --help`, `nova <command> --help`, or `nova --help <command>` when you want launcher-native CLI help.
37+
38+
## EXAMPLES
39+
40+
### EXAMPLE 1
41+
42+
```text
43+
PS> Invoke-NovaCli
44+
```
45+
46+
Shows the root Nova CLI help.
47+
48+
### EXAMPLE 2
49+
50+
```text
51+
PS> Invoke-NovaCli build --help
52+
```
53+
54+
Shows the short help for the routed `build` command by using launcher-style arguments from PowerShell.
55+
56+
### EXAMPLE 3
57+
58+
```text
59+
PS> Invoke-NovaCli --help build
60+
```
61+
62+
Shows the long help for the routed `build` command.
63+
64+
### EXAMPLE 4
65+
66+
```text
67+
PS> Invoke-NovaCli publish --repository PSGallery --api-key <key> -WhatIf
68+
```
69+
70+
Previews the routed publish workflow without changing files or publishing artifacts.
71+
72+
## PARAMETERS
73+
74+
### -Arguments
75+
76+
Pass the remaining launcher-style arguments for the routed command.
77+
78+
Use CLI syntax here, for example `--help`, `--verbose`, `--what-if`, or route-specific flags such as `--repository`.
79+
80+
```yaml
81+
Type: System.String[]
82+
DefaultValue: ''
83+
SupportsWildcards: false
84+
Aliases: []
85+
ParameterSets:
86+
- Name: (All)
87+
Position: 1
88+
IsRequired: false
89+
ValueFromPipeline: false
90+
ValueFromPipelineByPropertyName: false
91+
ValueFromRemainingArguments: true
92+
DontShow: false
93+
AcceptedValues: []
94+
HelpMessage: ''
95+
```
96+
97+
### -Command
98+
99+
Choose the routed Nova command to run, for example `build`, `test`, `package`, `publish`, `release`, `notification`, `update`, or the root help/version forms such as `--help` and `--version`.
100+
101+
When this parameter is omitted or blank, Nova shows the root CLI help.
102+
103+
```yaml
104+
Type: System.String
105+
DefaultValue: ''
106+
SupportsWildcards: false
107+
Aliases: []
108+
ParameterSets:
109+
- Name: (All)
110+
Position: 0
111+
IsRequired: false
112+
ValueFromPipeline: false
113+
ValueFromPipelineByPropertyName: false
114+
ValueFromRemainingArguments: false
115+
DontShow: false
116+
AcceptedValues: []
117+
HelpMessage: ''
118+
```
119+
120+
### -Confirm
121+
122+
Forward confirmation behavior to routed mutating commands that support Nova's CLI confirmation flow.
123+
124+
```yaml
125+
Type: System.Management.Automation.SwitchParameter
126+
DefaultValue: ''
127+
SupportsWildcards: false
128+
Aliases:
129+
- cf
130+
ParameterSets:
131+
- Name: (All)
132+
Position: Named
133+
IsRequired: false
134+
ValueFromPipeline: false
135+
ValueFromPipelineByPropertyName: false
136+
ValueFromRemainingArguments: false
137+
DontShow: false
138+
AcceptedValues: []
139+
HelpMessage: ''
140+
```
141+
142+
### -WhatIf
143+
144+
Forward preview behavior to routed commands that support Nova's non-destructive preview flow.
145+
146+
```yaml
147+
Type: System.Management.Automation.SwitchParameter
148+
DefaultValue: ''
149+
SupportsWildcards: false
150+
Aliases:
151+
- wi
152+
ParameterSets:
153+
- Name: (All)
154+
Position: Named
155+
IsRequired: false
156+
ValueFromPipeline: false
157+
ValueFromPipelineByPropertyName: false
158+
ValueFromRemainingArguments: false
159+
DontShow: false
160+
AcceptedValues: []
161+
HelpMessage: ''
162+
```
163+
164+
### CommonParameters
165+
166+
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216).
167+
168+
## INPUTS
169+
170+
### None
171+
172+
You can't pipe objects to this cmdlet.
173+
174+
## OUTPUTS
175+
176+
### System.Object
177+
178+
This cmdlet returns the routed command result or CLI help text for help and version requests.
179+
180+
## NOTES
181+
182+
`Invoke-NovaCli` is a PowerShell wrapper around Nova's launcher-style command routing. The routed command surfaces keep CLI syntax such as `--help`, `--verbose`, and `--what-if`.
183+
184+
Use `Ctrl+C` if you need to cancel a running routed workflow.
185+
186+
## RELATED LINKS
187+
188+
- [Invoke-NovaBuild](./Invoke-NovaBuild.md)
189+
- [Test-NovaBuild](./Test-NovaBuild.md)
190+
- [Install-NovaCli](./Install-NovaCli.md)
191+
- [NovaModuleTools Module](./NovaModuleTools.md)

docs/NovaModuleTools/en-US/Invoke-NovaRelease.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ When local release mode is selected, the resolved local publish target is previe
5757

5858
This command supports `-WhatIf` and `-Confirm` through PowerShell `SupportsShouldProcess`. Use `-WhatIf` to preview the entire release workflow and resolved publish target without building, testing, versioning, or publishing.
5959

60+
During the workflow, Nova shows progress for the main release phases. When the workflow completes, Nova prints the publish target and a short next-step hint. In `-WhatIf` mode, Nova ends with a release-plan summary instead of a release-complete message.
61+
6062
## EXAMPLES
6163

6264
### EXAMPLE 1
@@ -323,6 +325,8 @@ When `-ContinuousIntegration` is used, the release workflow restores the built `
323325
`Invoke-NovaRelease` uses `SupportsShouldProcess`, so `Get-Help Invoke-NovaRelease -Full` surfaces native `-WhatIf`
324326
and `-Confirm` support.
325327

328+
Use `Ctrl+C` if you need to stop a running release before all phases complete.
329+
326330
## RELATED LINKS
327331

328332
- [Invoke-NovaBuild](./Invoke-NovaBuild.md)

docs/NovaModuleTools/en-US/New-NovaModulePackage.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ Use `-OverrideWarning` only when you intentionally want the nested build to cont
3535

3636
The package is written to `artifacts/packages/` by default. You can override generic package metadata through the optional `Package` section in `project.json`.
3737

38+
During a packaging run, Nova shows progress for the build-validation phase and the artifact-creation phase. When packaging completes, Nova prints the package target together with the next suggested step. In `-WhatIf` mode, Nova ends with a package-plan summary instead of a package-created summary.
39+
3840
Use this `project.json` shape when you want to control package types and the package output directory:
3941

4042
```json
@@ -275,6 +277,8 @@ When `-SkipTests` is used, only `Test-NovaBuild` is skipped. Build still runs.
275277

276278
Files under `src/public` are expected to contain exactly one top-level function each. `-OverrideWarning` bypasses that guard only for the current packaging run.
277279

280+
Use `Ctrl+C` if you need to stop a running packaging workflow before the package artifacts are created.
281+
278282
## RELATED LINKS
279283

280284
- [Invoke-NovaBuild](./Invoke-NovaBuild.md)

docs/NovaModuleTools/en-US/NovaModuleTools.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ Shows whether prerelease update notifications are enabled. Stable release notifi
3232

3333
Installs the bundled command-line launcher into a user command directory on macOS or Linux.
3434

35+
### `PS> Invoke-NovaCli`
36+
37+
Runs Nova's launcher-style command routing from inside PowerShell.
38+
3539
### `PS> Invoke-NovaBuild`
3640

3741
Builds the current NovaModuleTools project into a ready-to-import PowerShell module.

docs/NovaModuleTools/en-US/Publish-NovaModule.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,12 @@ Use `-ContinuousIntegration` when the same CI/self-hosting session should switch
4545
Use `-OverrideWarning` only when you intentionally want the nested build to continue even though a file under
4646
`src/public` contains zero or multiple top-level functions.
4747

48-
This command supports `-WhatIf` and `-Confirm` through PowerShell `SupportsShouldProcess`. Use `-WhatIf` to preview the resolved publish target and workflow without building, testing, or publishing.
48+
This command supports `-WhatIf` and `-Confirm` through PowerShell `SupportsShouldProcess`. Use `-WhatIf` when you want the normal build-validation flow to run but the nested publish step to stay in preview mode.
4949

5050
Use `-Confirm` when you want PowerShell to prompt before the publish workflow starts.
5151

52+
During a publish run, Nova shows progress for the build-validation phase, the publish phase, the local import phase when applicable, and the CI restore phase when `-ContinuousIntegration` is used. When the run completes, Nova prints the publish target together with the next suggested verification step. In `-WhatIf` mode, Nova ends with a publish-plan summary instead of a publish-completed summary.
53+
5254
## EXAMPLES
5355

5456
### EXAMPLE 1
@@ -89,7 +91,7 @@ Prompts before the repository publish workflow starts.
8991
PS> Publish-NovaModule -Local -WhatIf
9092
```
9193

92-
Previews the local publish workflow and target directory without making changes. No module copy or import happens when `-WhatIf` is used.
94+
Runs the normal build-validation flow, then previews the local publish target directory without copying or importing the module.
9395

9496
### EXAMPLE 6
9597

@@ -300,6 +302,8 @@ When `-ContinuousIntegration` is used, Nova restores the built `dist/` module af
300302
`Publish-NovaModule` uses `SupportsShouldProcess`, so `Get-Help Publish-NovaModule -Full` should surface native
301303
`-WhatIf` and `-Confirm` support.
302304

305+
Use `Ctrl+C` if you need to stop a running publish workflow before the publish step finishes.
306+
303307
## RELATED LINKS
304308

305309
- [Invoke-NovaBuild](./Invoke-NovaBuild.md)

0 commit comments

Comments
 (0)