You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove research, specification, and task documents for the local GitHub composite action for BeforeAll/AfterAll test scripts as part of project restructuring. This includes the deletion of research.md, spec.md, and tasks.md files, consolidating the documentation and streamlining the development process.
-**Execution**: Runs in `tests/` directory on ubuntu-latest with full access to environment secrets
183
+
-**Error Handling**: Script failures logged as warnings but don't halt workflow (cleanup is best-effort)
184
+
-**Always Executes**: Runs even if tests fail (via `if: always()` condition)
185
+
-**Example Use Cases**: Delete Azure/AWS resources via APIs, remove external databases, cleanup SaaS test accounts
186
+
187
+
**Key Distinction**: BeforeAll/AfterAll are for managing **external resources via APIs** that exist outside GitHub Actions execution environment. Test-specific resources for individual OS/platform combinations should be created within the tests themselves using Pester `BeforeAll`/`AfterAll` blocks.
164
188
165
189
**Key Points**:
166
190
@@ -360,6 +384,7 @@ All code changes MUST follow strict TDD practices using Pester and PSScriptAnaly
360
384
- **Modules MUST function identically** on Linux, macOS, and Windows
361
385
- Cross-platform compatibility is **verified through Test-ModuleLocal** workflow
362
386
- Test-ModuleLocal executes module tests on: `ubuntu-latest`, `windows-latest`, `macos-latest`
387
+
- **BeforeAll/AfterAll scripts** execute on `ubuntu-latest` only (external resource setup)
363
388
- Implement matrix testing across all supported operating systems for all workflow components
364
389
- Document any platform-specific behaviors or limitations explicitly
365
390
- Test failures on any platform MUST block merging
@@ -645,13 +670,23 @@ The standard execution order for Process-PSModule workflows MUST be:
645
670
3. **Test-SourceCode** - Parallel matrix testing of source code standards
646
671
4. **Lint-SourceCode** - Parallel matrix linting of source code
647
672
5. **Test-Module** - Framework validation and linting of built module
648
-
6. **Test-ModuleLocal** - Runs Pester tests with BeforeAll/AfterAll support
649
-
- **Verifies cross-platform module compatibility** on ubuntu-latest, windows-latest, macos-latest
673
+
6. **BeforeAll-ModuleLocal** - Optional: Execute tests/BeforeAll.ps1 setup script once before all test matrix jobs
674
+
- **Runs on ubuntu-latest only** (external resource setup via APIs)
11. **Build-Docs** and **Build-Site** - Generates documentation
689
+
12. **Publish-Module** and **Publish-Site** - Automated publishing on release
655
690
656
691
**Workflow Types**:
657
692
@@ -710,4 +745,4 @@ For agent-specific runtime development guidance **when developing the framework*
710
745
711
746
**For Consuming Repositories**: Follow the Required Module Structure and Workflow Integration Requirements documented in the Product Overview section. Start with [Template-PSModule](https://github.com/PSModule/Template-PSModule).
0 commit comments