Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
11 changes: 7 additions & 4 deletions .cspell.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ words:
- Blockquotes
- buildmark
- BuildMark
- buildnotes
- build_notes
- camelcase
- Checkmarx
- CodeQL
Expand Down Expand Up @@ -59,8 +59,12 @@ words:
- ReqStream
- reviewmark
- ReviewMark
- reviewplan
- reviewreport
- code_quality
- code_review_plan
- code_review_report
- requirements_doc
- requirements_report
- trace_matrix
- Sarif
- SarifMark
- SBOM
Expand All @@ -76,7 +80,6 @@ words:
- templatetool
- testname
- TMPL
- tracematrix
- triaging
- Trivy
- trx
Expand Down
4 changes: 1 addition & 3 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,7 @@ Before submitting this pull request, ensure you have completed the following:

Please run the following checks before submitting:

- [ ] **Spell checker passes**: `cspell "**/*.{md,cs}"`
- [ ] **Markdown linter passes**: `markdownlint "**/*.md"`
- [ ] **YAML linter passes**: `yamllint .`
- [ ] **All linters pass**: `./lint.sh` (Unix/macOS) or `cmd /c lint.bat` / `./lint.bat` (Windows)

### Testing

Expand Down
88 changes: 36 additions & 52 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
dotnet tool restore

- name: Setup Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version: 24.x

Expand Down Expand Up @@ -494,24 +494,24 @@ jobs:
dotnet reqstream
--requirements requirements.yaml
--tests "artifacts/**/*.trx"
--report docs/requirements/requirements.md
--justifications docs/justifications/justifications.md
--matrix docs/tracematrix/tracematrix.md
--report docs/requirements_doc/requirements.md
--justifications docs/requirements_doc/justifications.md
--matrix docs/requirements_report/trace_matrix.md
--enforce

- name: Generate CodeQL Quality Report with SarifMark
run: >
dotnet sarifmark
--sarif artifacts/csharp.sarif
--report docs/quality/codeql-quality.md
--report docs/code_quality/codeql-quality.md
--heading "Template DotNet Tool CodeQL Analysis"
--report-depth 1

- name: Display CodeQL Quality Report
shell: bash
run: |
echo "=== CodeQL Quality Report ==="
cat docs/quality/codeql-quality.md
cat docs/code_quality/codeql-quality.md

- name: Generate SonarCloud Quality Report
shell: bash
Expand All @@ -523,36 +523,37 @@ jobs:
--project-key demaconsulting_TemplateDotNetTool
--branch ${{ github.ref_name }}
--token "$SONAR_TOKEN"
--report docs/quality/sonar-quality.md
--report docs/code_quality/sonar-quality.md
--report-depth 1

- name: Display SonarCloud Quality Report
shell: bash
run: |
echo "=== SonarCloud Quality Report ==="
cat docs/quality/sonar-quality.md
cat docs/code_quality/sonar-quality.md

- name: Generate Review Plan and Review Report with ReviewMark
shell: bash
# TODO: Add --enforce once reviews branch is populated with review evidence PDFs and index.json
run: >
dotnet reviewmark
--definition .reviewmark.yaml
--plan docs/reviewplan/review-plan.md
--plan docs/code_review_plan/plan.md
--plan-depth 1
--report docs/reviewreport/review-report.md
--report docs/code_review_report/report.md
--report-depth 1

- name: Display Review Plan
shell: bash
run: |
echo "=== Review Plan ==="
cat docs/reviewplan/review-plan.md
cat docs/code_review_plan/plan.md

- name: Display Review Report
shell: bash
run: |
echo "=== Review Report ==="
cat docs/reviewreport/review-report.md
cat docs/code_review_report/report.md

- name: Generate Build Notes with BuildMark
shell: bash
Expand All @@ -561,28 +562,28 @@ jobs:
run: >
dotnet buildmark
--build-version ${{ inputs.version }}
--report docs/buildnotes.md
--report docs/build_notes.md
--report-depth 1

- name: Display Build Notes Report
shell: bash
run: |
echo "=== Build Notes Report ==="
cat docs/buildnotes.md
cat docs/build_notes.md

- name: Publish Tool Versions
shell: bash
run: |
echo "Publishing tool versions..."
dotnet versionmark --publish --report docs/buildnotes/versions.md --report-depth 1 \
dotnet versionmark --publish --report docs/build_notes/versions.md --report-depth 1 \
-- "artifacts/**/versionmark-*.json"
echo "✓ Tool versions published"

- name: Display Tool Versions Report
shell: bash
run: |
echo "=== Tool Versions Report ==="
cat docs/buildnotes/versions.md
cat docs/build_notes/versions.md

# === GENERATE HTML DOCUMENTS WITH PANDOC ===
# This section converts markdown documents to HTML using Pandoc.
Expand All @@ -592,11 +593,11 @@ jobs:
shell: bash
run: >
dotnet pandoc
--defaults docs/buildnotes/definition.yaml
--defaults docs/build_notes/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/buildnotes/buildnotes.html
--output docs/build_notes/buildnotes.html

- name: Generate Guide HTML with Pandoc
shell: bash
Expand All @@ -612,61 +613,51 @@ jobs:
shell: bash
run: >
dotnet pandoc
--defaults docs/quality/definition.yaml
--defaults docs/code_quality/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/quality/quality.html
--output docs/code_quality/quality.html

- name: Generate Requirements HTML with Pandoc
shell: bash
run: >
dotnet pandoc
--defaults docs/requirements/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/requirements/requirements.html

- name: Generate Requirements Justifications HTML with Pandoc
shell: bash
run: >
dotnet pandoc
--defaults docs/justifications/definition.yaml
--defaults docs/requirements_doc/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/justifications/justifications.html
--output docs/requirements_doc/requirements.html

- name: Generate Trace Matrix HTML with Pandoc
shell: bash
run: >
dotnet pandoc
--defaults docs/tracematrix/definition.yaml
--defaults docs/requirements_report/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/tracematrix/tracematrix.html
--output docs/requirements_report/trace_matrix.html

- name: Generate Review Plan HTML with Pandoc
shell: bash
run: >
dotnet pandoc
--defaults docs/reviewplan/definition.yaml
--defaults docs/code_review_plan/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/reviewplan/review-plan.html
--output docs/code_review_plan/plan.html

- name: Generate Review Report HTML with Pandoc
shell: bash
run: >
dotnet pandoc
--defaults docs/reviewreport/definition.yaml
--defaults docs/code_review_report/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
--metadata version="${{ inputs.version }}"
--metadata date="$(date +'%Y-%m-%d')"
--output docs/reviewreport/review-report.html
--output docs/code_review_report/report.html

# === GENERATE PDF DOCUMENTS WITH WEASYPRINT ===
# This section converts HTML documents to PDF using Weasyprint.
Expand All @@ -676,7 +667,7 @@ jobs:
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/buildnotes/buildnotes.html
docs/build_notes/buildnotes.html
"docs/TemplateDotNetTool Build Notes.pdf"

- name: Generate Guide PDF with Weasyprint
Expand All @@ -690,42 +681,35 @@ jobs:
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/quality/quality.html
docs/code_quality/quality.html
"docs/TemplateDotNetTool Code Quality.pdf"

- name: Generate Requirements PDF with Weasyprint
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/requirements/requirements.html
docs/requirements_doc/requirements.html
"docs/TemplateDotNetTool Requirements.pdf"

- name: Generate Requirements Justifications PDF with Weasyprint
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/justifications/justifications.html
"docs/TemplateDotNetTool Requirements Justifications.pdf"

- name: Generate Trace Matrix PDF with Weasyprint
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/tracematrix/tracematrix.html
docs/requirements_report/trace_matrix.html
"docs/TemplateDotNetTool Trace Matrix.pdf"

- name: Generate Review Plan PDF with Weasyprint
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/reviewplan/review-plan.html
docs/code_review_plan/plan.html
"docs/TemplateDotNetTool Review Plan.pdf"

- name: Generate Review Report PDF with Weasyprint
run: >
dotnet weasyprint
--pdf-variant pdf/a-3u
docs/reviewreport/review-report.html
docs/code_review_report/report.html
"docs/TemplateDotNetTool Review Report.pdf"

# === UPLOAD ARTIFACTS ===
Expand All @@ -738,4 +722,4 @@ jobs:
name: documents
path: |
docs/*.pdf
docs/buildnotes.md
docs/build_notes.md
4 changes: 2 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ jobs:
name: documents
path: artifacts

- name: Move buildnotes.md to root
- name: Move build_notes.md to root
run: |
set -e
mv artifacts/buildnotes.md buildnotes.md
mv artifacts/build_notes.md buildnotes.md
- name: Create GitHub Release
if: inputs.publish == 'release' || inputs.publish == 'publish'
Expand Down
18 changes: 9 additions & 9 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -91,15 +91,15 @@ __pycache__/
docs/**/*.html
docs/**/*.pdf
!docs/template/**
docs/requirements/requirements.md
docs/justifications/justifications.md
docs/tracematrix/tracematrix.md
docs/quality/codeql-quality.md
docs/quality/sonar-quality.md
docs/reviewplan/review-plan.md
docs/reviewreport/review-report.md
docs/buildnotes.md
docs/buildnotes/versions.md
docs/requirements_doc/requirements.md
docs/requirements_doc/justifications.md
docs/requirements_report/trace_matrix.md
docs/code_quality/codeql-quality.md
docs/code_quality/sonar-quality.md
docs/code_review_plan/plan.md
docs/code_review_report/report.md
docs/build_notes.md
docs/build_notes/versions.md

# Test results
TestResults/
Expand Down
Loading
Loading