🩹 [Patch]: Prerelease cleanup no longer depends on module artifact (#400)
Prerelease cleanup now runs as an independent workflow action, so publish logic and cleanup logic can execute in the right scenarios without being coupled to module artifact download.
Changed: Publish and cleanup are now separate actions
Publish-PSModule now only performs artifact download and publish/release work, while cleanup moved into a dedicated Cleanup-PSModulePrereleases action.
Fixed: No-build cleanup paths no longer depend on publish action internals
Publish-Module.yml now runs publish only when ReleaseType != 'None', and runs cleanup independently when ReleaseType != 'Prerelease' with existing AutoCleanup and WhatIf controls.
Technical Details
- Removed cleanup inputs and cleanup step from
.github/actions/Publish-PSModule/action.yml. - Added
.github/actions/Cleanup-PSModulePrereleases/with its own composite action and cleanup script. - Updated
.github/workflows/Publish-Module.ymlto call the two actions as separate, scenario-gated steps. - Preserved release-tag exclusion by passing
PSMODULE_PUBLISH_PSMODULE_CONTEXT_ReleaseTaginto the cleanup action when publish ran earlier in the job. - Implementation plan progress: completed the decoupling requested in issue #376 by separating cleanup from publish artifact flow.
Related issues
- Fixes #376