Skip to content

⚙️ [Maintenance]: Minor docs-site switch to Zensical#403

Open
Marius Storhaug (MariusStorhaug) wants to merge 13 commits into
mainfrom
migrate-to-zensical
Open

⚙️ [Maintenance]: Minor docs-site switch to Zensical#403
Marius Storhaug (MariusStorhaug) wants to merge 13 commits into
mainfrom
migrate-to-zensical

Conversation

@MariusStorhaug

@MariusStorhaug Marius Storhaug (MariusStorhaug) commented Jul 18, 2026

Copy link
Copy Markdown
Member

This PR finalizes the documentation pipeline as a clean-cut Zensical implementation and removes legacy Material/MkDocs fallback behavior.

Changed: Build-Site now runs as Zensical-only

Build-Site resolves site configuration from zensical.toml and no longer uses MkDocs compatibility paths.

Changed: Workflow logic moved to internal actions

Multi-line workflow scripts were extracted into internal composite actions with script files in src/ so workflow behavior stays code-backed and toolable.

Changed: Shared site script injection is centralized

Navigation-state behavior is injected from framework-owned script files, replacing repo-local inline payload patterns.

Technical Details

  • Added/updated internal actions for install, site structuring, build, and script injection.
  • Added framework-level site injector scripts under .github/scripts/site-injectors/.
  • Updated workflow/action definitions to remove long inline script blocks.
  • Added comment-based help and parameter documentation to newly introduced PowerShell entry scripts.

Validation

  • Linter checks pass, including GITHUB_ACTIONS_ZIZMOR, BIOME_LINT, and JAVASCRIPT_PRETTIER.
  • Workflow test matrix passes for default and manifest scenarios.
  • Downstream verification was completed in MariusStorhaug/MariusTestModule with a merged follow-up (#56) and successful PR/main workflow runs.

Remove mkdocs fallback from Build-Site, delete mkdocs fixture configs, and keep zensical.toml as the sole documentation configuration contract.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Jul 18, 2026

Copy link
Copy Markdown

Super-linter summary

Language Validation result
CHECKOV Pass ✅
GITLEAKS Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
MARKDOWN Pass ✅
NATURAL_LANGUAGE Pass ✅
POWERSHELL Pass ✅
PRE_COMMIT Pass ✅
SPELL_CODESPELL Pass ✅
TRIVY Pass ✅
YAML Pass ✅

All files and directories linted successfully

For more information, see the GitHub Actions workflow run

Powered by Super-linter

Remove unsupported --site-dir flag, inject site_dir into zensical.toml when absent, and assert ../../_site output exists for Pages artifact upload.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Set zensical site_dir to _site in generated config, move built output to ../../_site for artifact upload, and keep Build-Site output contract intact.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Replace missing Helpers module imports with PSModule in publish and prerelease-cleanup actions.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Inject a centralized nav-state script into generated site HTML during Build-Site so first-level menu defaults and persisted fold state are applied for all repositories using Process-PSModule.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Replace indented here-string with inline JavaScript string assignment so the workflow YAML parses correctly while retaining central nav-state injection.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Move long inline PowerShell from Build-Site into a dedicated local action with src/inject-site-scripts.ps1, and switch to folder-based site injector scripts under .github/scripts/site-injectors/.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Move every multiline run/Script step in Build-Site into internal composite actions with src scripts: Install-Zensical, Structure-Site, Build-ZensicalSite, and keep Inject-SiteScripts as action-backed invocation.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Comment thread .github/actions/Build-ZensicalSite/action.yml Fixed
Comment thread .github/actions/Build-ZensicalSite/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Install-Zensical/action.yml Fixed
Comment thread .github/actions/Structure-Site/action.yml Fixed
Comment thread .github/actions/Structure-Site/action.yml Fixed
Comment thread .github/actions/Structure-Site/action.yml Fixed
Replace remaining multiline run blocks in internal action.yml files with single-line invocations or commands, keeping executable logic in src scripts for better tooling and lint support.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
run: |
# Build-PSModule
${{ github.action_path }}/src/main.ps1
run: ${{ github.action_path }}/src/main.ps1
run: |
# Cleanup prerelease tags
${{ github.action_path }}/src/cleanup.ps1
run: ${{ github.action_path }}/src/cleanup.ps1
run: |
# Build-PSModuleDocumentation
${{ github.action_path }}/src/main.ps1
run: ${{ github.action_path }}/src/main.ps1
run: |
# Install-PSModule
${{ github.action_path }}/src/main.ps1
run: ${{ github.action_path }}/src/main.ps1
run: |
# Resolve module version
${{ github.action_path }}/src/main.ps1
run: ${{ github.action_path }}/src/main.ps1
run: |
# Get test paths
${{ github.action_path }}/src/main.ps1
run: ${{ github.action_path }}/src/main.ps1
Apply MSXOrg/docs standards to newly introduced internal actions: use consistent src/main.ps1 entry points, add PowerShell script headers/cmdlet binding, and add action README documentation for discoverability and reuse.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Comment thread .github/actions/Build-ZensicalSite/action.yml Fixed
Comment thread .github/actions/Build-ZensicalSite/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
Comment thread .github/actions/Inject-SiteScripts/action.yml Fixed
steps:
- name: Install Zensical CLI
shell: pwsh
run: '& "${{ github.action_path }}/src/main.ps1"'
Comment thread .github/actions/Structure-Site/action.yml Fixed
Comment thread .github/actions/Structure-Site/action.yml Fixed
Comment thread .github/actions/Structure-Site/action.yml Fixed
Add comment-based help blocks and inline parameter documentation to new action PowerShell entry scripts to align with MSXOrg/docs script standards.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
shell: pwsh
env:
INPUT_WORKING_DIRECTORY: ${{ inputs.WorkingDirectory }}
run: '& "${{ github.action_path }}/src/main.ps1" -WorkingDirectory "$env:INPUT_WORKING_DIRECTORY"'
env:
INPUT_SITE_PATH: ${{ inputs.SitePath }}
INPUT_WORKFLOW_PATH: ${{ inputs.WorkflowPath }}
run: '& "${{ github.action_path }}/src/main.ps1" -SitePath "$env:INPUT_SITE_PATH" -WorkflowPath "$env:INPUT_WORKFLOW_PATH"'
env:
INPUT_WORKING_DIRECTORY: ${{ inputs.WorkingDirectory }}
INPUT_NAME: ${{ inputs.Name }}
run: '& "${{ github.action_path }}/src/main.ps1" -WorkingDirectory "$env:INPUT_WORKING_DIRECTORY" -Name "$env:INPUT_NAME"'
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@MariusStorhaug Marius Storhaug (MariusStorhaug) changed the title Make docs pipeline Zensical-only ⚙️ [Maintenance]: Make docs pipeline Zensical-only Jul 19, 2026
@MariusStorhaug Marius Storhaug (MariusStorhaug) changed the title ⚙️ [Maintenance]: Make docs pipeline Zensical-only ⚙️ [Maintenance]: Minor docs-site switch to Zensical Jul 19, 2026
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.

Process: Migrate Module Repos to Zensical Framework (Phased Rollout)

2 participants