@@ -73,17 +73,6 @@ if (![string]::IsNullOrEmpty($settingsPath) -and (Test-Path -Path $settingsPath)
7373 $settings = @ {}
7474}
7575
76- $unsupportedReleaseSettings = @ (
77- Get-UnsupportedPSModuleReleaseSetting - PublishModule $settings.Publish.Module
78- )
79- if ($unsupportedReleaseSettings.Count -gt 0 ) {
80- throw (
81- " Unsupported Process-PSModule v9 release settings: [$ ( $unsupportedReleaseSettings -join ' , ' ) ]. " +
82- ' Remove these settings. Release decisions now use only release:patch, release:minor, ' +
83- ' release:major, release:pre-release, and release:skip.'
84- )
85- }
86-
8776LogGroup ' Name' {
8877 [pscustomobject ]@ {
8978 InputName = $name
@@ -201,9 +190,15 @@ $settings = [pscustomobject]@{
201190 Module = [pscustomobject ]@ {
202191 Skip = $settings.Publish.Module.Skip ?? $false
203192 AutoCleanup = $settings.Publish.Module.AutoCleanup ?? $true
193+ AutoPatching = $settings.Publish.Module.AutoPatching ?? $true
204194 IncrementalPrerelease = $settings.Publish.Module.IncrementalPrerelease ?? $true
205195 DatePrereleaseFormat = $settings.Publish.Module.DatePrereleaseFormat ?? ' '
206196 VersionPrefix = $settings.Publish.Module.VersionPrefix ?? ' v'
197+ MajorLabels = $settings.Publish.Module.MajorLabels ?? ' major, breaking'
198+ MinorLabels = $settings.Publish.Module.MinorLabels ?? ' minor, feature'
199+ PatchLabels = $settings.Publish.Module.PatchLabels ?? ' patch, fix'
200+ IgnoreLabels = $settings.Publish.Module.IgnoreLabels ?? ' NoRelease'
201+ PrereleaseLabels = $settings.Publish.Module.PrereleaseLabels ?? ' prerelease'
207202 UsePRTitleAsReleaseName = $settings.Publish.Module.UsePRTitleAsReleaseName ?? $false
208203 UsePRBodyAsReleaseNotes = $settings.Publish.Module.UsePRBodyAsReleaseNotes ?? $true
209204 UsePRTitleAsNotesHeading = $settings.Publish.Module.UsePRTitleAsNotesHeading ?? $true
@@ -324,6 +319,11 @@ LogGroup 'Calculate Job Run Conditions:' {
324319 AssociatedPullRequest = $pullRequestContext.Number
325320 } | Format-List | Out-String
326321
322+ # Check if a prerelease label exists on the PR
323+ $prereleaseLabels = $settings.Publish.Module.PrereleaseLabels -split ' ,' | ForEach-Object { $_.Trim () }
324+ $prLabels = @ ($pullRequestContext.Labels )
325+ $hasPrereleaseLabel = ($prLabels | Where-Object { $prereleaseLabels -contains $_ }).Count -gt 0
326+
327327 # Check if important files have changed in the PR
328328 # Important files are determined by the configured ImportantFilePatterns setting
329329 $hasImportantChanges = $false
@@ -449,7 +449,8 @@ If you believe this is incorrect, please verify that your changes are in the cor
449449 - IsTargetDefaultBranch $isTargetDefaultBranch `
450450 - IsPushToDefaultBranch $isPushToDefaultBranch `
451451 - IsManualDispatchToDefaultBranch $isManualDispatchToDefaultBranch `
452- - HasImportantChanges $hasImportantChanges
452+ - HasImportantChanges $hasImportantChanges `
453+ - HasPrereleaseLabel $hasPrereleaseLabel
453454 $releaseType = $routing.ReleaseType
454455
455456 [pscustomobject ]@ {
@@ -463,6 +464,8 @@ If you believe this is incorrect, please verify that your changes are in the cor
463464 isManualDispatch = $routing.IsManualDispatch
464465 isPushToDefaultBranch = $routing.IsPushToDefaultBranch
465466 isTargetDefaultBranch = $routing.IsTargetDefaultBranch
467+ hasPrereleaseLabel = $hasPrereleaseLabel
468+ shouldPrerelease = $routing.ShouldPrerelease
466469 ReleaseType = $releaseType
467470 HasImportantChanges = $hasImportantChanges
468471 } | Format-List | Out-String
0 commit comments