feat(.github): Add GitHub workflows from hve-core#22
Merged
WilliamBerryiii merged 12 commits intomainfrom Feb 2, 2026
Merged
Conversation
Dependency ReviewThe following issues were found:
|
There was a problem hiding this comment.
Pull request overview
This PR introduces a comprehensive CI/CD linting infrastructure by porting GitHub Actions workflows and PowerShell linting scripts from microsoft/hve-core. The implementation provides automated quality checks for markdown, PowerShell, links, spelling, and dependencies across pull requests and the main branch.
Key Changes
- 10 GitHub Actions workflows orchestrating linting checks with reusable workflow patterns and security hardening
- 5 PowerShell linting scripts with git-aware file targeting and GitHub Actions integration
- npm-based tooling for spell checking, markdown linting, and link validation
Reviewed changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/pr-validation.yml |
Orchestrates all linting checks for PRs to main branch |
.github/workflows/main.yml |
Runs CI checks on pushes to main branch |
.github/workflows/spell-check.yml |
Reusable workflow for cspell spell checking |
.github/workflows/markdown-lint.yml |
Reusable workflow for markdownlint-cli2 linting |
.github/workflows/table-format.yml |
Reusable workflow for markdown table formatting |
.github/workflows/ps-script-analyzer.yml |
Reusable workflow for PowerShell script analysis |
.github/workflows/link-lang-check.yml |
Reusable workflow for URL locale path detection |
.github/workflows/markdown-link-check.yml |
Reusable workflow for broken link detection |
.github/workflows/dependency-review.yml |
Security scanning for dependency vulnerabilities |
.github/workflows/codeql-analysis.yml |
Weekly CodeQL security analysis for Python |
scripts/linting/Modules/LintingHelpers.psm1 |
Shared PowerShell helper functions for git operations and GitHub Actions integration |
scripts/linting/Invoke-PSScriptAnalyzer.ps1 |
Wrapper script for PSScriptAnalyzer with changed-files-only support |
scripts/linting/Markdown-Link-Check.ps1 |
Git-aware markdown link validator with XML result parsing |
scripts/linting/Link-Lang-Check.ps1 |
Detector and fixer for locale-specific URL paths |
scripts/linting/Invoke-LinkLanguageCheck.ps1 |
GitHub Actions wrapper for Link-Lang-Check.ps1 |
scripts/linting/PSScriptAnalyzer.psd1 |
PSScriptAnalyzer configuration with project-specific rule exclusions |
scripts/linting/markdown-link-check.config.json |
Configuration for markdown-link-check tool |
package.json |
npm dependencies and scripts for linting tools |
.markdownlint-cli2.jsonc |
Markdownlint-cli2 configuration replacing .markdownlint.json |
WilliamBerryiii
added a commit
that referenced
this pull request
Dec 4, 2025
- link-lang-check: remove unused SoftFail param splatting - link-lang-check: correct env var LINK_LANG_CHECK_FAILED to LINK_LANG_FAILED - pr-validation: add pull-requests: write for dependency-review job - dependency-review: remove duplicate pull_request trigger, add harden-runner - package.json: use exact versions (remove ^ prefix) - codeql-analysis: clarify time format to 04:00 UTC 🔧 - Generated by Copilot
agreaves-ms
approved these changes
Dec 11, 2025
7 tasks
- add package.json with lint:md, lint:ps, lint:links, spell-check scripts - migrate .markdownlint.json to .markdownlint-cli2.jsonc with ignores - add PowerShell linting scripts from hve-core pattern - add LintingHelpers module for GitHub Actions integration 🔧 - Generated by Copilot
- add pr-validation.yml orchestrating linting on pull requests - add main.yml for CI on pushes to main branch - add codeql-analysis.yml for Python security scanning - add dependency-review.yml for PR dependency security checks - add individual reusable workflows: spell-check, markdown-lint, table-format, ps-script-analyzer, link-lang-check, markdown-link-check - add Markdown-Link-Check.ps1 script and config 🔧 - Generated by Copilot
- link-lang-check: remove unused SoftFail param splatting - link-lang-check: correct env var LINK_LANG_CHECK_FAILED to LINK_LANG_FAILED - pr-validation: add pull-requests: write for dependency-review job - dependency-review: remove duplicate pull_request trigger, add harden-runner - package.json: use exact versions (remove ^ prefix) - codeql-analysis: clarify time format to 04:00 UTC 🔧 - Generated by Copilot
📦 - Generated by Copilot
- add changed-files detection step to markdown-lint workflow - add changed-files detection step to markdown-link-check workflow - skip lint/link-check when no markdown files changed 📦 - Generated by Copilot
- auto-fix blanks-around-lists and blanks-around-fences violations - add LICENSE.md and ISSUE_TEMPLATE.md to lint ignores - fix line length and emphasis-as-heading in README - update Azure CLI URL to learn.microsoft.com 📝 - Generated by Copilot # Conflicts: # .github/ISSUE_TEMPLATE.md # README.md
606f0f7 to
8cb3a84
Compare
🔗 - Generated by Copilot
📄 - Generated by Copilot
- Update README.md link to point to LICENSE instead of LICENSE.md - Remove LICENSE.md from markdownlint ignores 📝 - Generated by Copilot
- Fix 332 markdownlint errors across 24 files (tables, headings, code blocks) - Revert workflows to lint all files instead of using changed-files filter - Use 4-backtick wrapper in chatlog.prompt.md for nested code block template - Restore SECURITY.md Microsoft boilerplate content 📝 - Generated by Copilot
- Remove en-us from 4 URLs in vpn/README.md and azureml-validation-job-debugging.md - Reformat tables after URL changes 🔗 - Generated by Copilot
- Fix issue template: README.md → ../../README.md, docs/ → ../../docs/ - Fix PR template: remove .github/ prefix from relative paths - Fix debugging doc: update deploy/004-workflow path to workflows/azureml 🔗 - Generated by Copilot
agreaves-ms
approved these changes
Feb 2, 2026
This was referenced Feb 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
Add GitHub workflows and linting infrastructure from HVE-Core, with comprehensive markdown lint fixes across the repository.
Type of Change
Changes
Workflows Added
markdown-lint.yml- Markdown linting with markdownlint-cli2link-lang-check.yml- Link validation and language path checkingLinting Infrastructure
package.jsonwith markdownlint-cli2, markdown-table-formatter dependencies.markdownlint.jsoncconfigurationscripts/linting/Link-Lang-Check.ps1for URL language path validationscripts/linting/Invoke-LinkLanguageCheck.ps1wrapper scriptDocumentation Fixes
en-uslanguage path segments from Microsoft Docs URLsComponent(s) Affected
.github/- Workflows, templates, and instructionsdeploy/- README documentationdocs/- Technical documentationscripts/- Linting scriptsworkflows/- Workflow documentationChecklist