Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
0aa2dfc
Initial plan
Copilot Jul 4, 2025
4d3f4ff
Add BeforeAll and AfterAll job support for Test-ModuleLocal workflows
Copilot Jul 4, 2025
9eeb8c7
Add additional test BeforeAll/AfterAll scripts for comprehensive testing
Copilot Jul 4, 2025
2a30035
Add documentation for BeforeAll/AfterAll setup and teardown scripts
Copilot Jul 4, 2025
2027a0b
Rework BeforeAll/AfterAll to use PowerShell-based steps
Copilot Jul 6, 2025
92d0958
Update documentation for PowerShell-based BeforeAll/AfterAll implemen…
Copilot Jul 6, 2025
fdfea9e
Merge branch 'main' into copilot/fix-169
MariusStorhaug Sep 11, 2025
7b69fe7
Implement separate BeforeAll/AfterAll jobs with conditional execution
Copilot Sep 11, 2025
87ac2eb
Update documentation to reflect separate BeforeAll/AfterAll job archi…
Copilot Sep 11, 2025
f6fef54
Move BeforeAll/AfterAll jobs into Test-ModuleLocal workflow and remov…
Copilot Oct 1, 2025
3e25e4c
Move matrix strategy into Test-ModuleLocal workflow and update callin…
Copilot Oct 1, 2025
0ffc613
feat: Add PowerShell scripts for setup and agent context management
MariusStorhaug Oct 1, 2025
c9151a8
feat: Update constitution and implementation plan with expanded guida…
MariusStorhaug Oct 1, 2025
849ff31
chore: Update constitution version reference in plan template to v1.1.2
MariusStorhaug Oct 1, 2025
bfee666
chore: Update plan template to reference Constitution v1.3.0
MariusStorhaug Oct 1, 2025
e5077eb
feat: Update constitution to reflect new repository structure and aut…
MariusStorhaug Oct 1, 2025
205fb8b
feat: Add feature specification for local GitHub composite action to …
MariusStorhaug Oct 1, 2025
385c238
feat: Add quickstart guide for setup-test composite action integration
MariusStorhaug Oct 1, 2025
f02098b
feat: Enhance documentation for BeforeAll/AfterAll scripts to clarify…
MariusStorhaug Oct 1, 2025
7e67478
feat: Update documentation for BeforeAll/AfterAll scripts to clarify …
MariusStorhaug Oct 1, 2025
5bb6eee
feat: Enhance BeforeAll/AfterAll documentation and update task numbering
MariusStorhaug Oct 1, 2025
97d7a9f
feat: Add BeforeAll and AfterAll scripts for Environments and remove …
MariusStorhaug Oct 1, 2025
bbdf695
Dedub envs
MariusStorhaug Oct 1, 2025
1e6248b
Fix linter
MariusStorhaug Oct 1, 2025
d5fd598
Disable BIOME
MariusStorhaug Oct 1, 2025
7c35d66
Fix powershell files
MariusStorhaug Oct 1, 2025
520af2e
Linting
MariusStorhaug Oct 1, 2025
a8791ef
Fix linters
MariusStorhaug Oct 1, 2025
71d19b6
fix linting
MariusStorhaug Oct 1, 2025
af3b34c
fix: Correct terminology in documentation for clarity and consistency
MariusStorhaug Oct 1, 2025
9cf348a
Merge branch '001-building-on-this' of https://github.com/PSModule/Pr…
MariusStorhaug Oct 1, 2025
b2e6ebc
Fix MD
MariusStorhaug Oct 1, 2025
ec576d6
fix: Enhance analyze prompt with additional structure and clarity in …
MariusStorhaug Oct 1, 2025
17fa58d
fix: Improve formatting and clarity in prompt documentation
MariusStorhaug Oct 1, 2025
2f0508f
fix: Standardize behavior rules for clarification question handling
MariusStorhaug Oct 1, 2025
74dfcbc
fix: Add section headers to prompt documentation for improved clarity
MariusStorhaug Oct 1, 2025
e1a33f2
fix: Update links and section title for clarity in constitution docum…
MariusStorhaug Oct 1, 2025
c219559
fix: Improve formatting and clarity in template files by standardizin…
MariusStorhaug Oct 1, 2025
827d022
fix: Enhance documentation clarity and formatting across multiple fil…
MariusStorhaug Oct 1, 2025
9216aaf
fix: Improve documentation formatting by removing unnecessary code bl…
MariusStorhaug Oct 1, 2025
d8da82d
fix: Correct capitalization of 'GitHub' in documentation for consistency
MariusStorhaug Oct 1, 2025
4e957db
fix: Correct capitalization of 'API' in execution flow documentation …
MariusStorhaug Oct 1, 2025
879e315
Remove backup and original Draw.io files for the flow diagram to clea…
MariusStorhaug Oct 1, 2025
f938d45
Update tests/srcWithManifestTestRepo/tests/BeforeAll.ps1
MariusStorhaug Oct 1, 2025
4ef34b4
fix: Simplify BeforeAll and AfterAll script execution in workflows by…
MariusStorhaug Oct 1, 2025
b9ffbd7
feat: Add BeforeAll and AfterAll steps for module local testing in CI…
MariusStorhaug Oct 1, 2025
764667a
Merge branch '001-building-on-this' of https://github.com/PSModule/Pr…
MariusStorhaug Oct 1, 2025
552793f
fix: Restore TestName input in CI workflows for consistency
MariusStorhaug Oct 1, 2025
6e7132e
fix: Swap TestName and Name inputs in workflow for clarity and consis…
MariusStorhaug Oct 1, 2025
07457de
fix: Update TestPath and TestName inputs to be optional with default …
MariusStorhaug Oct 1, 2025
3c6e9b3
fix: Update job name in Test-ModuleLocal workflow to use RunsOn input…
MariusStorhaug Oct 1, 2025
deded99
Remove research, specification, and task documents for the local GitH…
MariusStorhaug Oct 1, 2025
48dd4d5
fix: Remove unnecessary Push-Location and Pop-Location calls in Befor…
MariusStorhaug Oct 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Move matrix strategy into Test-ModuleLocal workflow and update callin…
…g workflows

Co-authored-by: MariusStorhaug <17722253+MariusStorhaug@users.noreply.github.com>
  • Loading branch information
Copilot and MariusStorhaug committed Oct 1, 2025
commit 3e25e4cbb5ef21b3af84a174ae7e3ccc2dda04ae
9 changes: 1 addition & 8 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -181,17 +181,10 @@ jobs:
needs:
- Build-Module
- Get-Settings
strategy:
fail-fast: false
matrix:
include: ${{ fromJson(needs.Get-Settings.outputs.ModuleTestSuites) }}
uses: ./.github/workflows/Test-ModuleLocal.yml
secrets: inherit
with:
RunsOn: ${{ matrix.RunsOn }}
OS: ${{ matrix.OSName }}
TestPath: ${{ matrix.TestPath }}
TestName: ${{ matrix.TestName }}
ModuleTestSuites: ${{ needs.Get-Settings.outputs.ModuleTestSuites }}
Name: ${{ fromJson(needs.Get-Settings.outputs.Settings).Name }}
Debug: ${{ inputs.Debug }}
Prerelease: ${{ inputs.Prerelease }}
Expand Down
30 changes: 10 additions & 20 deletions .github/workflows/Test-ModuleLocal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,28 +25,14 @@
description: The classic personal access token for running tests.
required: false
inputs:
RunsOn:
ModuleTestSuites:
type: string
description: The type of runner to use for the job.
required: true
OS:
type: string
description: The operating system name.
description: JSON array of module test suites to run (from Get-Settings output).
required: true
Name:
type: string
description: The name of the module to process. Scripts default to the repository name if nothing is specified.
required: false
TestPath:
type: string
description: The path to the tests folder.
required: false
default: tests
TestName:
type: string
description: The path to the tests folder.
required: false
default: tests
Debug:
type: boolean
description: Enable debug output.
Expand Down Expand Up @@ -85,10 +71,10 @@
uses: actions/checkout@v5

- name: Install-PSModuleHelpers
uses: PSModule/Install-PSModuleHelpers@v1

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Test-ModuleLocal' step
Uses Step
uses 'PSModule/Install-PSModuleHelpers' with ref 'v1', not a pinned commit hash

- name: Run BeforeAll Setup Scripts
uses: PSModule/GitHub-Script@v1

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Test-ModuleLocal' step
Uses Step
uses 'PSModule/GitHub-Script' with ref 'v1', not a pinned commit hash
env:
TEST_APP_ENT_CLIENT_ID: ${{ secrets.TEST_APP_ENT_CLIENT_ID }}
TEST_APP_ENT_PRIVATE_KEY: ${{ secrets.TEST_APP_ENT_PRIVATE_KEY }}
Expand Down Expand Up @@ -169,10 +155,14 @@
}

Test-ModuleLocal:
name: Test-${{ inputs.TestName }} (${{ inputs.RunsOn }})
runs-on: ${{ inputs.RunsOn }}
name: Test-${{ matrix.TestName }} (${{ matrix.OSName }})
runs-on: ${{ matrix.RunsOn }}
needs:
- BeforeAll-ModuleLocal
strategy:
fail-fast: false
matrix:
include: ${{ fromJson(inputs.ModuleTestSuites) }}
steps:
- name: Checkout Code
uses: actions/checkout@v5
Expand Down Expand Up @@ -213,14 +203,14 @@
Prerelease: ${{ inputs.Prerelease }}
Verbose: ${{ inputs.Verbose }}
Version: ${{ inputs.Version }}
TestResult_TestSuiteName: ${{ inputs.TestName }}-${{ inputs.OS }}
TestResult_TestSuiteName: ${{ matrix.TestName }}-${{ matrix.OSName }}
TestResult_Enabled: true
CodeCoverage_Enabled: true
Output_Verbosity: Detailed
CodeCoverage_OutputFormat: JaCoCo
CodeCoverage_CoveragePercentTarget: 0
Filter_ExcludeTag: Flaky
Path: ${{ inputs.TestPath }}
Path: ${{ matrix.TestPath }}
Run_Path: ${{ steps.import-module.outputs.path }}
WorkingDirectory: ${{ inputs.WorkingDirectory }}
Prescript: | # This is to speed up module loading in Pester.
Expand All @@ -238,11 +228,11 @@
uses: actions/checkout@v5

- name: Install-PSModuleHelpers
uses: PSModule/Install-PSModuleHelpers@v1

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Test-ModuleLocal' step
Uses Step
uses 'PSModule/Install-PSModuleHelpers' with ref 'v1', not a pinned commit hash

- name: Run AfterAll Teardown Scripts
if: always()
uses: PSModule/GitHub-Script@v1

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Test-ModuleLocal' step
Uses Step
uses 'PSModule/GitHub-Script' with ref 'v1', not a pinned commit hash
env:
TEST_APP_ENT_CLIENT_ID: ${{ secrets.TEST_APP_ENT_CLIENT_ID }}
TEST_APP_ENT_PRIVATE_KEY: ${{ secrets.TEST_APP_ENT_PRIVATE_KEY }}
Expand Down
9 changes: 1 addition & 8 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -183,17 +183,10 @@ jobs:
needs:
- Build-Module
- Get-Settings
strategy:
fail-fast: false
matrix:
include: ${{ fromJson(needs.Get-Settings.outputs.ModuleTestSuites) }}
uses: ./.github/workflows/Test-ModuleLocal.yml
secrets: inherit
with:
RunsOn: ${{ matrix.RunsOn }}
OS: ${{ matrix.OSName }}
TestPath: ${{ matrix.TestPath }}
TestName: ${{ matrix.TestName }}
ModuleTestSuites: ${{ needs.Get-Settings.outputs.ModuleTestSuites }}
Name: ${{ fromJson(needs.Get-Settings.outputs.Settings).Name }}
Debug: ${{ inputs.Debug }}
Prerelease: ${{ inputs.Prerelease }}
Expand Down
Loading