Skip to content

docs(ci): publish MkDocs site to GitHub Pages#12

Merged
nkanu17 merged 3 commits into
mainfrom
feat/github-pages-docs
May 20, 2026
Merged

docs(ci): publish MkDocs site to GitHub Pages#12
nkanu17 merged 3 commits into
mainfrom
feat/github-pages-docs

Conversation

@nkanu17
Copy link
Copy Markdown
Collaborator

@nkanu17 nkanu17 commented May 20, 2026

Summary

Wires up GitHub Pages so the existing mkdocs.yml site (Material theme, mkdocstrings, llmstxt) is hosted at https://redis-developer.github.io/adk-redis/ instead of only living in the repo tree.

What's in here

  • .github/workflows/docs.yml: build + deploy on push to main when any of docs/**, mkdocs.yml, src/adk_redis/**, pyproject.toml, uv.lock, or the workflow itself changes. Also supports workflow_dispatch for manual triggers. Uses actions/deploy-pages@v4 with OIDC (no token).
  • mkdocs.yml: switch site_url from the unresolved https://ai.redis.io/adk/ to the GitHub Pages URL.
  • pyproject.toml: new [docs] optional extra (mkdocs-material, mkdocstrings[python], mkdocs-llmstxt, mkdocs-section-index, mkdocs-autorefs, mkdocs-macros-plugin) so contributors can reproduce the build with uv sync --extra docs --extra all.

Pre-existing issue, not addressed here

mkdocs build --strict would fail on 44 griffe warnings in src/adk_redis/tools/memory/{create,delete,get,prompt,search,update}.py: those docstrings document parameters that don't appear in the actual function signatures. The workflow uses mkdocs build (not --strict) on purpose so doc deploys aren't blocked. Worth a follow-up PR to fix the docstrings.

Post-merge follow-up

GitHub Pages needs to be enabled on the repo (Settings > Pages > Source: GitHub Actions) before the deploy step has an environment to push to. Can be set via:

gh api -X POST repos/redis-developer/adk-redis/pages -f build_type=workflow

After that, the first push to main re-runs the workflow and the site goes live.

Test plan

  • uv sync --extra docs --extra all then uv run mkdocs build succeeds locally (~1.9s, 44 pre-existing griffe warnings, site emitted to site/).
  • After merge: enable Pages, watch the workflow run, verify https://redis-developer.github.io/adk-redis/ serves the rendered site.

Copilot AI review requested due to automatic review settings May 20, 2026 03:29
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a GitHub Actions workflow to build and publish the repository’s existing MkDocs site to GitHub Pages, and updates MkDocs configuration to use the GitHub Pages URL as the canonical site_url.

Changes:

  • Add a new Docs GitHub Actions workflow that builds the MkDocs site with uv and deploys it to GitHub Pages.
  • Update mkdocs.yml to set site_url to https://redis-developer.github.io/adk-redis/.
  • Add a docs optional dependency extra in pyproject.toml to install MkDocs and the plugins used for the docs build.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/docs.yml New workflow to build and deploy the MkDocs site to GitHub Pages on changes to docs and related inputs.
mkdocs.yml Updates canonical site URL to match GitHub Pages hosting location.
pyproject.toml Adds a docs extra for MkDocs and related plugins to reproduce the docs build locally.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pyproject.toml Outdated
"mkdocs-llmstxt>=0.5",
"mkdocs-section-index>=0.3",
"mkdocs-autorefs>=1.2",
"mkdocs-macros-plugin>=1.0",
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 6c6dd0c: removed mkdocs-macros-plugin from the docs extra.

Comment thread .github/workflows/docs.yml Outdated
- "mkdocs.yml"
- "src/adk_redis/**"
- "pyproject.toml"
- "uv.lock"
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 6c6dd0c: removed uv.lock from the paths filter.

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: acc9e3d15c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

- "pyproject.toml"
- "uv.lock"
- ".github/workflows/docs.yml"
workflow_dispatch:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Restrict manual docs deploys to main branch

Allowing workflow_dispatch without a branch guard means anyone with permission to run Actions can publish docs from any branch, so unmerged or experimental content can overwrite the public GitHub Pages site when the deploy job runs. This is a production-facing risk for the docs site unless the github-pages environment is separately configured with branch protection, so the workflow should enforce main in YAML (for example via a deploy job if) instead of relying on repository settings.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 6c6dd0c: added if: github.ref == 'refs/heads/main' to the deploy job so workflow_dispatch from non-main branches cannot overwrite the live site.

nkanu17 added 3 commits May 20, 2026 14:23
Adds a GitHub Actions workflow that builds the `mkdocs.yml`
configuration with the Material theme + mkdocstrings + llmstxt
plugins, then deploys to GitHub Pages via
`actions/deploy-pages@v4` (OIDC, no token needed).

Changes:
- `.github/workflows/docs.yml`: build + deploy on push to main when
  any docs source changes (docs/**, mkdocs.yml, src/**,
  pyproject.toml, uv.lock, the workflow itself). Also supports
  `workflow_dispatch` for manual triggers.
- `mkdocs.yml`: switch `site_url` from the unresolved
  `https://ai.redis.io/adk/` to the GitHub Pages canonical URL
  `https://redis-developer.github.io/adk-redis/`.
- `pyproject.toml`: new `[docs]` optional extra so contributors can
  reproduce the build with `uv sync --extra docs --extra all`.

The workflow uses `mkdocs build` (not `--strict`) on purpose. There
are 44 pre-existing griffe docstring/signature warnings in
`tools/memory/*` (the Memory* tools' docstrings document parameters
that don't appear in the actual function signatures). Those warnings
are real and worth fixing, but should not block doc deploys.
Tracked separately.

Post-merge follow-ups:
- Enable GitHub Pages on the repo (`Settings > Pages > Source: GitHub
  Actions`) so the deploy step has an environment to push to. Can be
  set via API: `gh api -X POST repos/.../pages -f build_type=workflow`.
- Remove mkdocs-macros-plugin from docs extra (not used in mkdocs.yml)
- Remove uv.lock from workflow paths filter (no lockfile committed)
- Add branch guard (if: github.ref == 'refs/heads/main') to deploy job
  so workflow_dispatch from non-main branches cannot overwrite the site
- Rename project to 'Redis Integrations for the Google Agent Development Kit'
- Slim quickstart from 379 to 109 lines; delegate details to concepts/how-tos
- Fix outdated class names (RedisWorkingMemorySessionService, RedisLongTermMemoryService)
- Add semantic cache how-to covering RedisVL and LangCache providers
- Update examples index to list all 9 examples with direct GitHub links
- Remove 3 redundant example stub pages (fitness_coach, travel_agent_hybrid, redis_search_tools)
- Fix broken internal links after stub page removal
- Verify config defaults against source code (recency_boost, etc.)
- Align sidebar layout with redisvl docs (full-width md-grid)
@nkanu17 nkanu17 force-pushed the feat/github-pages-docs branch from 6c6dd0c to 642fd40 Compare May 20, 2026 19:10
Copilot AI review requested due to automatic review settings May 20, 2026 19:10
@nkanu17 nkanu17 merged commit ce793e9 into main May 20, 2026
3 of 4 checks passed
@nkanu17 nkanu17 deleted the feat/github-pages-docs branch May 20, 2026 19:11
@nkanu17 nkanu17 review requested due to automatic review settings May 20, 2026 19:34
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.

2 participants