5656 default : |
5757 ^src/
5858 ^README\.md$
59+ ReleaseDecision :
60+ type : string
61+ description : Explicit decision for a direct push or workflow dispatch.
62+ required : false
5963
6064 outputs :
6165 Settings :
@@ -120,6 +124,7 @@ jobs:
120124 Debug : ${{ inputs.Debug }}
121125 Verbose : ${{ inputs.Verbose }}
122126 WorkingDirectory : ${{ inputs.WorkingDirectory }}
127+ ReleaseDecision : ${{ inputs.ReleaseDecision }}
123128
124129 - name : Enrich-Settings
125130 # Merge the resolved version into the Settings object so all downstream jobs
@@ -134,13 +139,25 @@ jobs:
134139 RELEASE_TYPE : ${{ steps.Resolve-Version.outputs.ReleaseType }}
135140 CREATE_RELEASE : ${{ steps.Resolve-Version.outputs.CreateRelease }}
136141 run : |
142+ Import-Module -Name './_wf/.github/actions/Get-PSModuleSettings/src/Get-PSModuleSettings.Helpers.psm1' -Force
143+
137144 $settings = $env:SETTINGS | ConvertFrom-Json
145+ $releaseType = if ([string]::IsNullOrEmpty($env:RELEASE_TYPE)) { 'None' } else { $env:RELEASE_TYPE }
146+ $shouldPublish = $env:CREATE_RELEASE -eq 'true'
147+
138148 $settings.Publish.Module | Add-Member -MemberType NoteProperty -Name Resolution -Value ([pscustomobject]@{
139149 Version = $env:VERSION
140150 Prerelease = $env:PRERELEASE
141151 FullVersion = $env:FULL_VERSION
142- ReleaseType = if ([string]::IsNullOrEmpty($env:RELEASE_TYPE)) { 'None' } else { $env:RELEASE_TYPE }
143- CreateRelease = $env:CREATE_RELEASE -eq 'true'
152+ ReleaseType = $releaseType
153+ CreateRelease = $shouldPublish
144154 }) -Force
155+ $publishStateParams = @{
156+ Settings = $settings
157+ ReleaseType = $releaseType
158+ ShouldPublish = $shouldPublish
159+ }
160+ $settings = Resolve-PSModulePublishState @publishStateParams
161+
145162 $enriched = $settings | ConvertTo-Json -Depth 10 -Compress
146163 "Settings=$enriched" >> $env:GITHUB_OUTPUT
0 commit comments