PowerCraft.Release.psd1
|
@{ RootModule = 'PowerCraft.Release.psm1' ModuleVersion = '1.2.0' CompatiblePSEditions = @('Core') GUID = 'f3a1b2c4-d5e6-4f78-9a0b-1c2d3e4f5a6b' Author = 'The Code Kitchen' CompanyName = 'The Code Kitchen' Copyright = '(c) 2026 The Code Kitchen. All rights reserved.' Description = 'Universal release automation for PowerShell modules, .NET projects, Node.js packages, and Python projects. Provides version detection, bumping, validation, and publishing across ecosystems.' PowerShellVersion = '7.0' FunctionsToExport = @( 'Get-PCProjectVersion' 'Set-PCProjectVersion' 'Get-PCNextVersion' 'Test-PCReleaseReady' 'Publish-PCRelease' 'Install-PCReleaseWorkflow' ) CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() PrivateData = @{ PSData = @{ Tags = @('Release', 'Versioning', 'SemVer', 'CI-CD', 'Automation', 'PowerCraft') LicenseUri = 'https://github.com/The-Code-Kitchen/PowerCraft.Release/blob/main/LICENSE' ProjectUri = 'https://github.com/The-Code-Kitchen/PowerCraft.Release' ReleaseNotes = @' ## 1.2.0 (2026-07-01) ### Changed - Unified extensibility model: hooks replace token-generated code blocks - {{SECRETS_BOOTSTRAP}} token removed — replaced by {{SECRETS_ENV}} (job-level env from config) - Secrets now declared in .powercraft/release.json ci.secrets array (data-driven) - Hook steps use hashFiles() conditional: test-setup.ps1, test-secrets.ps1, test-validate.ps1 - Get-SecretBootstrapBlock removed — replaced by Get-SecretsEnvBlock (config-driven) ### Added - .github/test-secrets.ps1 hook convention (project owns secret bootstrap logic) - .github/test-validate.ps1 hook convention (post-test extended validation) - Get-SecretsEnvBlock: renders job-level env block from ci.secrets config ## 1.1.0 (2026-06-28) ### Added - Stage-gated release: validate job must pass before publish job runs - .github/test-setup.ps1 hook convention for project-specific test dependencies - Test Setup step in ci.yml and release.yml templates - Install Dependencies step in publish job (fixes RequiredModules validation) - GitHub Release via softprops/action-gh-release in publish job - -CreateGitHubRelease parameter (opt-in, replaces -SkipGitHubRelease) ## 1.0.0 (2026-06-26) ### Added - Multi-technology template engine with {{TOKEN}} resolution - Templates/powershell/ and Templates/shared/ folder structure - Resolve-TemplateTokens: generic token replacement engine - Read-PCReleaseConfig: optional .powercraft/release.json per-repo overrides - {{MODULE_NAME}}, {{RUNNER}}, {{DEFAULT_BRANCH}} tokens in CI template - dependency-check.yml only installed when RequiredModules present - Version stamp header on all generated workflows - Disabled template support via config ### Fixed - ci.yml {{MODULE_NAME}} token was never resolved (copied as-is) ### Changed - Install-PCReleaseWorkflow now uses Get-ProjectType for technology detection - Templates restructured into technology-specific subfolders '@ } } } |