Skip to content

build: modernize build system with PowerShellBuild and GitHub Actions#163

Merged
HeyItsGilbert merged 2 commits intomasterfrom
fix/149-modernize-psake
May 2, 2026
Merged

build: modernize build system with PowerShellBuild and GitHub Actions#163
HeyItsGilbert merged 2 commits intomasterfrom
fix/149-modernize-psake

Conversation

@HeyItsGilbert
Copy link
Copy Markdown
Member

Summary

  • Replaces psake.ps1 with psakeFile.ps1 using PowerShellBuild -FromModule task delegation
  • Rewrites build.ps1 with -Bootstrap switch and PSDepend-managed dependencies (pinned to known-good versions)
  • Adds requirements.psd1 with pinned versions: psake 4.9.1, PowerShellBuild 0.7.2, Pester 5.7.1, PSScriptAnalyzer 1.19.1, BuildHelpers 2.0.16
  • Replaces appveyor.yml with .github/workflows/ci.yml (ubuntu/windows/macOS matrix, ./build.ps1 -Bootstrap -Task Test)
  • Adds PlatyPS markdown stubs in docs/en-US/ for all public functions
  • Removes deploy.psdeploy.ps1 (superseded by PowerShellBuild Publish task)

Test plan

  • ./build.ps1 -Bootstrap -Task Test passes locally on Windows
  • CI matrix passes on ubuntu/windows/macOS via GitHub Actions

Closes #149

🤖 Generated with Claude Code

HeyItsGilbert and others added 2 commits May 1, 2026 19:43
- Replace psake.ps1 with psakeFile.ps1 using PowerShellBuild -FromModule tasks
- Rewrite build.ps1 with -Bootstrap switch using PSDepend for dependency management
- Add requirements.psd1 listing all build dependencies (psake, PowerShellBuild, Pester, PSScriptAnalyzer, PSDeploy, BuildHelpers)
- Add .github/workflows/ci.yml (replaces Appveyor) with matrix across ubuntu/windows/macOS
- Switch test output to JUnitXml at ./Output/testResults.xml for CI artifact upload

Closes #149

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Pin requirements.psd1 to specific known-good versions (psake 4.9.1,
  PowerShellBuild 0.7.2, Pester 5.7.1, PSScriptAnalyzer 1.19.1,
  BuildHelpers 2.0.16) to avoid multi-version conflicts in psake's
  -FromModule module resolution
- Simplify build.ps1 bootstrap to match gatekeeper pattern: PSDepend
  handles install+import, no explicit secondary Import-Module calls
- Remove appveyor.yml and deploy.psdeploy.ps1 (superseded by
  .github/workflows/ci.yml and PowerShellBuild Publish task)
- Update PlatyPS-generated docs stubs with proper parameter set syntax

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 2, 2026

Test Results

0 tests  ±0   0 ✅ ±0   0s ⏱️ ±0s
0 suites ±0   0 💤 ±0 
0 files   ±0   0 ❌ ±0 

Results for commit 6bd63b2. ± Comparison against base commit 24a9271.

@HeyItsGilbert
Copy link
Copy Markdown
Member Author

Tests will continue fail until we get get Pester fixed via #151.

@HeyItsGilbert HeyItsGilbert merged commit 8fcca52 into master May 2, 2026
2 of 5 checks passed
@HeyItsGilbert HeyItsGilbert deleted the fix/149-modernize-psake branch May 2, 2026 03:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modernize psake.ps1 build file

1 participant