Skip to content

fix(ci): update docs workflow to use Hugo instead of MkDocs#14

Merged
Thomo1318 merged 1 commit intomainfrom
Thomo1318/push-svtoslypqrwu
Jan 1, 2026
Merged

fix(ci): update docs workflow to use Hugo instead of MkDocs#14
Thomo1318 merged 1 commit intomainfrom
Thomo1318/push-svtoslypqrwu

Conversation

@Thomo1318
Copy link
Owner

@Thomo1318 Thomo1318 commented Jan 1, 2026

User description

Summary

Fixes the CI workflow that was failing because it still had MkDocs configuration after the Hugo migration.

Changes

  • Remove Python/uv/MkDocs dependencies
  • Use peaceiris/actions-hugo@v3 for Hugo builds
  • Use peaceiris/actions-gh-pages@v4 for deployment
  • Add submodules: recursive for Relearn theme initialization
  • Update paths trigger from docs/** to hugo-docs/**

Error Fixed

error: File not found: `docs/requirements.txt`

This occurred because the workflow was still trying to install MkDocs dependencies that were removed in PR #13.


PR Type

Bug fix, Enhancement


Description

  • Migrate CI workflow from MkDocs to Hugo documentation system

  • Replace Python/uv dependencies with Hugo action setup

  • Update paths trigger from docs/** to hugo-docs/**

  • Add recursive submodule checkout for Relearn theme

  • Use peaceiris/actions-hugo and peaceiris/actions-gh-pages for build/deploy


Diagram Walkthrough

flowchart LR
  A["Old Workflow<br/>MkDocs + Python"] -->|Remove| B["Python/uv Setup"]
  A -->|Remove| C["MkDocs Deploy"]
  D["New Workflow<br/>Hugo"] -->|Add| E["Hugo Action Setup"]
  D -->|Add| F["Hugo Build"]
  D -->|Add| G["GitHub Pages Deploy"]
  E --> F
  F --> G
Loading

File Walkthrough

Relevant files
Configuration changes
ci-docs.yml
Replace MkDocs workflow with Hugo CI pipeline                       

.github/workflows/ci-docs.yml

  • Removed MkDocs-related paths trigger (docs/**, mkdocs.yml)
  • Added hugo-docs/** path trigger for Hugo documentation
  • Replaced Python/uv/MkDocs setup steps with peaceiris/actions-hugo@v3
  • Added recursive submodule checkout and fetch-depth configuration
  • Changed deployment from mkdocs gh-deploy to
    peaceiris/actions-gh-pages@v4
  • Updated publish directory to ./hugo-docs/public
+15/-16 

- Remove Python/uv/MkDocs dependencies
- Use peaceiris/actions-hugo for Hugo builds
- Use peaceiris/actions-gh-pages for deployment
- Add submodules: recursive for Relearn theme
@coderabbitai
Copy link

coderabbitai bot commented Jan 1, 2026

Warning

Rate limit exceeded

@Thomo1318 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 12 minutes and 59 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 0b0011d and 169335b.

📒 Files selected for processing (1)
  • .github/workflows/ci-docs.yml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@qodo-code-review
Copy link

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
Unpinned CI dependencies

Description: The workflow uses unpinned GitHub Actions (actions/checkout@v4, peaceiris/actions-hugo@v3)
and also installs Hugo with hugo-version: "latest", which can introduce a supply-chain
risk because a future upstream release/change could execute unexpected code in CI and
publish compromised site content.
ci-docs.yml [18-27]

Referred Code
- uses: actions/checkout@v4
  with:
    submodules: recursive
    fetch-depth: 0

- name: Setup Hugo
  uses: peaceiris/actions-hugo@v3
  with:
    hugo-version: "latest"
    extended: true
Recursive submodule checkout

Description: Enabling submodules: recursive (with full history via fetch-depth: 0) will pull and build
code from submodules during CI, which can be an execution vector if a submodule reference
is changed to a malicious repository/commit and then built/deployed by this workflow.
ci-docs.yml [19-22]

Referred Code
with:
  submodules: recursive
  fetch-depth: 0
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@Thomo1318 Thomo1318 merged commit 70feba1 into main Jan 1, 2026
5 checks passed
@qodo-code-review
Copy link

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
General
Pin Hugo version for stable builds

Pin the hugo-version to a specific release instead of "latest" to ensure build
reproducibility and stability.

.github/workflows/ci-docs.yml [23-27]

 - name: Setup Hugo
   uses: peaceiris/actions-hugo@v3
   with:
-    hugo-version: "latest"
+    hugo-version: "0.128.2" # Pin to a specific version
     extended: true
  • Apply / Chat
Suggestion importance[1-10]: 6

__

Why: The suggestion correctly identifies that using latest for the Hugo version can lead to unstable builds and correctly recommends pinning to a specific version, which is a CI/CD best practice.

Low
  • More

@Thomo1318 Thomo1318 deleted the Thomo1318/push-svtoslypqrwu branch January 1, 2026 15:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant