Skip to content
Merged
Show file tree
Hide file tree
Changes from 38 commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
48e91f5
🚀[Feature]: Enhance workflow orchestration with detailed Get-Settings…
MariusStorhaug Oct 14, 2025
72425c4
feat: Complete planning phase for settings-driven workflow configuration
MariusStorhaug Oct 14, 2025
2b3ebbc
feat: Complete planning phase for settings-driven workflow configuration
MariusStorhaug Oct 14, 2025
2dfe6ad
feat: Add prompts for project management workflows including constitu…
MariusStorhaug Oct 14, 2025
fa9d515
Remove outdated specifications and documentation for the settings-dri…
MariusStorhaug Oct 14, 2025
fdcd3be
Update plan-template and README for improved clarity and structure
MariusStorhaug Oct 14, 2025
a652168
Implement feature X to enhance user experience and optimize performance
MariusStorhaug Oct 14, 2025
ae20e5d
docs(readme): restructure, dedupe layout/config, tighten quickstart
MariusStorhaug Oct 14, 2025
af18391
docs(readme): update section title from 'Quickstart' to 'Getting star…
MariusStorhaug Oct 14, 2025
1af923a
docs(readme): enhance clarity and structure by updating instructions …
MariusStorhaug Oct 14, 2025
277785f
docs(readme): update phase details to clarify workflow initialization…
MariusStorhaug Oct 14, 2025
dedfe9b
docs(readme): update pipeline steps section for clarity and accuracy
MariusStorhaug Oct 15, 2025
5e64da7
Implement feature X to enhance user experience and fix bug Y in module Z
MariusStorhaug Oct 15, 2025
72ac781
Implement feature X to enhance user experience and optimize performance
MariusStorhaug Oct 15, 2025
5070423
docs(PSModule.md): update header format for consistency
MariusStorhaug Oct 15, 2025
6e0489f
docs(readme): enhance clarity in setup instructions for GitHub Pages …
MariusStorhaug Oct 15, 2025
81e1874
docs(readme): improve formatting and clarity in setup instructions
MariusStorhaug Oct 17, 2025
dcf7a1a
docs(readme): enhance introduction for clarity and detail on workflow…
MariusStorhaug Oct 17, 2025
bc61333
docs(readme): improve clarity and formatting in setup instructions fo…
MariusStorhaug Oct 17, 2025
9d5a073
docs(readme): update documentation for clarity and structure, enhanci…
MariusStorhaug Oct 19, 2025
fb81954
docs(readme): add important note on removing branch protection for Gi…
MariusStorhaug Oct 19, 2025
8af041f
docs(readme): correct numbering in setup instructions for clarity
MariusStorhaug Oct 19, 2025
4013f98
docs(readme): adjust formatting for important note on branch protecti…
MariusStorhaug Oct 19, 2025
30fd1c7
docs(readme): update instructions to remove branch protection for Git…
MariusStorhaug Oct 19, 2025
91d20de
docs(readme): enhance clarity by using strong formatting for the GitH…
MariusStorhaug Oct 19, 2025
37349d0
docs(readme): update instructions for GitHub Pages environment and co…
MariusStorhaug Oct 19, 2025
b55fa11
docs(readme): correct numbering in setup instructions and clarify Git…
MariusStorhaug Oct 19, 2025
58b922a
docs(readme): clarify GitHub Pages environment setup and remove branc…
MariusStorhaug Oct 19, 2025
9e0fcd0
docs(readme): improve clarity in API key setup instructions and refor…
MariusStorhaug Oct 19, 2025
e8667fa
docs(readme): add link to scenario matrix for clearer workflow outcom…
MariusStorhaug Oct 19, 2025
fedad44
docs(readme): enhance table of contents and clarify workflow sections…
MariusStorhaug Oct 19, 2025
39224ab
docs(readme): update workflow overview and repository structure for i…
MariusStorhaug Oct 19, 2025
c799bf1
docs(readme): clarify workflow steps and enhance descriptions for bet…
MariusStorhaug Oct 19, 2025
792743a
docs(readme): clarify linting process description for improved unders…
MariusStorhaug Oct 23, 2025
2452230
Add dynamic environment variable for settings across jobs
MariusStorhaug Jan 6, 2026
a76b56f
Merge branch 'main' of https://github.com/PSModule/Process-PSModule i…
MariusStorhaug Jan 6, 2026
e02a92b
Merge branch 'main' of https://github.com/PSModule/Process-PSModule i…
MariusStorhaug Jan 6, 2026
12d0c59
refactor: streamline settings handling and linting workflow integration
MariusStorhaug Jan 10, 2026
dff7240
Refactor GitHub workflows to use a centralized settings object
MariusStorhaug Jan 10, 2026
4c2dc40
feat: add additional workflow configuration options for debugging and…
MariusStorhaug Jan 10, 2026
0d00563
Merge branch 'main' of https://github.com/PSModule/Process-PSModule i…
MariusStorhaug Jan 10, 2026
8ef2323
refactor: update input handling for Get-CodeCoverage and Get-TestResu…
MariusStorhaug Jan 10, 2026
d3874ef
refactor: update Lint-Module job to use matrix strategy for OS and se…
MariusStorhaug Jan 10, 2026
8fce819
fix: specify shell type for Load dynamic envs step in Lint-Repository…
MariusStorhaug Jan 10, 2026
5300216
feat: add output handling for Build-Site job in workflow
MariusStorhaug Jan 10, 2026
989df80
refactor: clean up whitespace in workflow and README files
MariusStorhaug Jan 10, 2026
6fdece6
docs: improve formatting and clarity in README sections
MariusStorhaug Jan 10, 2026
a689554
feat: add input handling for Settings in Build-Site job
MariusStorhaug Jan 11, 2026
8757fa0
fix: update Get-Settings action to specific version in workflow
MariusStorhaug Jan 11, 2026
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
23 changes: 12 additions & 11 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,18 @@

## Terminal Commands

When executing terminal commands (using `run_in_terminal` or similar tools):

- Prefer MCP server calls over command-line tools when possible.
- **ALWAYS** send commands into `pwsh -Command` to ensure proper execution.
- These commands must be enclosed in single quotes.
- Escape any single quotes within the command by doubling them (e.g., `It's` becomes `It''s`).
- Use double quotes for string with variables or expressions inside the single-quoted command.
- When running scripts within the [scripts](../.specify/scripts/) folder, just run them directly (shell is default PowerShell).
- For other commands, send them into `pwsh -Command` to ensure proper execution.

### Quoting in PowerShell

Proper quoting is essential in PowerShell to prevent parsing errors and ensure correct command execution.

- **Direct script execution**: Scripts run directly in PowerShell use standard PowerShell quoting rules. Double quotes expand variables and expressions, while single quotes are literal. No additional shell escaping is needed.

- **Via `pwsh -Command`**: Commands are passed as strings to PowerShell. Enclose the entire command in single quotes to treat it as a literal string. Escape single quotes within the command by doubling them (e.g., `It's` becomes `It''s`). Use double quotes within the command for variable expansion, but ensure the outer single quotes protect the string from shell interpretation.

## Other instructions
For arguments containing single quotes, prefer double-quoting the argument inside the command string.

| Tech | Instruction file |
|------------|-------------------------------------------------------------|
| PowerShell | [pwsh.instructions.md](./instructions/pwsh.instructions.md) |
| Markdown | [md.instructions.md](./instructions/md.instructions.md) |
Example: `pwsh -Command 'Write-Host "I''m Groot"'`
File renamed without changes.
313 changes: 4 additions & 309 deletions .github/workflows/Get-Settings.yml

Large diffs are not rendered by default.

18 changes: 5 additions & 13 deletions .github/workflows/Get-TestResults.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,9 @@ name: Get-TestResults
on:
workflow_call:
inputs:
SourceCodeTestSuites:
Settings:
type: string
description: The test suites to run for the source code.
required: true
PSModuleTestSuites:
type: string
description: The test suites to run for the PSModule.
required: true
ModuleTestSuites:
type: string
description: The test suites to run for the module.
description: The complete settings object including test suites.
required: true
Debug:
type: boolean
Expand Down Expand Up @@ -53,9 +45,9 @@ jobs:
uses: PSModule/Get-PesterTestResults@0c1d8cde9575b192831f76e87d3f7e825a7d8ff4 # v1.0.7
id: Get-TestResults
with:
SourceCodeTestSuites: ${{ inputs.SourceCodeTestSuites }}
PSModuleTestSuites: ${{ inputs.PSModuleTestSuites }}
ModuleTestSuites: ${{ inputs.ModuleTestSuites }}
SourceCodeTestSuites: ${{ fromJson(inputs.Settings).TestSuites.SourceCode }}
PSModuleTestSuites: ${{ fromJson(inputs.Settings).TestSuites.PSModule }}
ModuleTestSuites: ${{ fromJson(inputs.Settings).TestSuites.Module }}
Debug: ${{ inputs.Debug }}
Prerelease: ${{ inputs.Prerelease }}
Verbose: ${{ inputs.Verbose }}
Expand Down
69 changes: 69 additions & 0 deletions .github/workflows/Lint-Repository.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: Lint-Repository

on:
workflow_call:
inputs:
Settings:
type: string
description: The settings object as a JSON string.
required: true

permissions:
contents: read # to checkout the repository
statuses: write # to update the status of the workflow from linter

jobs:
Lint-Repository:
name: Lint code base
runs-on: ubuntu-latest
env:
Settings: ${{ inputs.Settings }}
steps:
- name: Checkout repo
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
fetch-depth: 0

- name: Load dynamic envs
run: |
Write-Host "Loading settings for super-linter:"
$settings = $env:Settings | ConvertFrom-Json -AsHashtable
$linter = $settings.Linter
$env = $linter.env

foreach ($key in $env.Keys) {
$value = $env[$key]

if ($value -is [bool]) {
$value = $value.ToString().ToLower()
}

Write-Host "$key = $value"

# Persist for following steps in this job
"$key=$value" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
}

- name: Lint code base
id: super-linter
uses: super-linter/super-linter@47984f49b4e87383eed97890fe2dca6063bbd9c3 # v8.3.1
env:
GITHUB_TOKEN: ${{ github.token }}
DEFAULT_WORKSPACE: ${{ fromJson(env.Settings).WorkingDirectory }}
FILTER_REGEX_INCLUDE: ${{ fromJson(env.Settings).WorkingDirectory }}
ENABLE_GITHUB_ACTIONS_STEP_SUMMARY: false
SAVE_SUPER_LINTER_SUMMARY: true

- name: Post super-linter summary
if: failure() || fromJson(env.Settings).Linter.ShowSummaryOnSuccess == true
shell: pwsh
run: |
$summaryPath = Join-Path $env:GITHUB_WORKSPACE 'super-linter-output' 'super-linter-summary.md'
Get-Content $summaryPath | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8

$failed = '${{ steps.super-linter.outcome }}' -eq 'failure'
if ($failed) {
Write-Host "::error::Super-linter found issues. Please review the summary above."
exit 1
}
Loading