Skip to content

DOC-7104: Migrate content/operate/rs/8.0/ (excl. references) to render hooks - #4100

Merged
andy-stark-redis merged 2 commits into
mainfrom
DOC-7104-8.0-rest
Sep 24, 2026
Merged

andy-stark-redis merged 2 commits into
mainfrom
DOC-7104-8.0-rest

Conversation

@andy-stark-redis

@andy-stark-redis andy-stark-redis commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Unit 15 of 15 (the last unit) of DOC-7104. Converts relref and note/tip/warning callout shortcodes to render-hook equivalents (plain Markdown links resolved by layouts/_default/_markup/render-link.html, and > [!NOTE] etc. blockquotes resolved by layouts/_default/_markup/render-blockquote.html) across content/operate/rs/8.0/ excluding references/ (already converted in unit 14, PR #4098, untouched here).

In scope: clusters/, databases/, installing-upgrading/, monitoring/, networking/, security/, flex/, and the top-level 8.0 files (_index.md, troubleshooting.md, new-features-redis-enterprise.md, rs-archive.md). flex/ wasn't named in the ticket's directory list but isn't references/ either, so it's included per the ticket's primary rule ("every file except references/") — flagging in case that was meant to be excluded.

After this merges, content/operate/rs/ is fully off relref/callout shortcodes except the deliberately-excluded live references/rest-api/ generated tree (tracked separately).

Counts (re-measured, not estimated)

  • 190 files in scope (find content/operate/rs/8.0 -name '*.md' | grep -v /references/); 172 files actually changed, 18 had nothing to convert.
  • 1273 relref occurrences converted; 0 remain.
  • 170 callout shortcodes converted: 138 note, 2 tip, 30 warning (3 of the warnings were in {{% %}} percent form, easy to undercount with an angle-bracket-only grep). 0 remain in either {{< >}} or {{% %}} form.
  • New blockquotes: 138 [!NOTE], 2 [!TIP], 30 [!WARNING] — matches the converted count exactly.

Fixes made

  • 33 files had list-nested callouts whose continuation/closing lines lost their leading indentation during conversion, detaching them from the enclosing <li>. Fixed by normalizing every line of each blockquote run to the run's own leading indent. Verified in rendered HTML that <li> nesting is intact before/after.
  • Trivial fix: databases/connect/troubleshooting-guide.md had a missing closing paren on the HGETALL link ({{< relref "/commands/hgetall" >}}: → {{< relref "/commands/hgetall" >}}):) — the same pre-existing bug seen in some other version snapshots. Fixed before conversion so the link converts correctly.
  • Flagged, not fixed: new-features-redis-enterprise.md (draft: true, never renders) carries the same 6 broken relref targets seen in other versions (/operate/rs/8.0/developing/crdbs, three /operate/modules/* module links, and two .md-suffixed relrefs). Preserved as-is post-conversion.

Verification

  • Hugo built full site before and after (no --minify, per the known esbuild issue on /commands/cf.reserve).
  • build/diff_rendered_hrefs.py (patched version from DOC-7104: Fix diff_rendered_hrefs.py to catch unquoted href attributes #4087, used locally for verification only — not included in this diff) scoped to operate/rs/8.0: 470 vs 470 pages, 0 href diffs.
  • Same tool scoped to operate/rs/8.0/references (untouched): 281 vs 281 pages, 0 href diffs.
  • build/migrate_shortcode_links.py all and the local indent-fix script both re-run to 0 changes (idempotent).

Test plan

  • CI build passes
  • Spot-check a few converted pages with list-nested notes/warnings render with correct <li> nesting
  • Confirm flex/ inclusion is intentional (see note above)

🤖 Generated with Claude Code


Note

Low Risk
Documentation-only syntax migration with build and href parity checks; no application or security logic changes.

Overview
Completes the Redis Software 8.0 docs migration off Hugo shortcodes for everything under content/operate/rs/8.0/ except references/. ~1,273 relref links become plain Markdown paths like /content/operate/..., which the existing render-link hook resolves to the same published URLs. ~170 note / tip / warning callouts become GitHub-style blockquotes (> [!NOTE], etc.) for the render-blockquote hook.

Touches clusters, databases (including Active-Active), installing-upgrading, monitoring, networking, security, flex, and top-level 8.0 pages. No substantive doc rewrites—only link and callout syntax. The PR description also notes list-nested callout indentation fixes and a small HGETALL link typo fix in troubleshooting content.

Reviewed by Cursor Bugbot for commit ab7f71e. Bugbot is set up for automated code reviews on this repo. Configure here.

…r hooks

Converts relref and note/tip/warning callout shortcodes to render-hook
equivalents (plain Markdown links + `> [!NOTE]` etc. blockquotes) across
clusters/, databases/, installing-upgrading/, monitoring/, networking/,
security/, flex/, and the top-level 8.0 files. references/ was already
done in unit 14 and is untouched. This is unit 15 of 15 -- the last unit
of DOC-7104.

- 1273 relref occurrences and 170 callout shortcodes (138 note, 2 tip, 30
  warning -- 3 of the warnings were in {{% %}} percent form) converted;
  0 of either remain.
- Fixed 33 files where list-nested callouts lost their indentation on
  continuation/closing lines, detaching them from the enclosing <li>;
  verified against rendered HTML.
- Trivially fixed a pre-existing missing closing paren on the HGETALL
  link in databases/connect/troubleshooting-guide.md (same bug seen in
  other version snapshots).
- new-features-redis-enterprise.md's 6 pre-existing broken relref targets
  (draft: true, never renders) are preserved as-is, not fixed.
- 0 rendered href diffs before/after, scoped to both operate/rs/8.0 and
  operate/rs/8.0/references (untouched, confirmed unaffected).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

DOC-7104

@github-actions

Copy link
Copy Markdown
Contributor

Staging links:
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/add-node/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/change-node-role/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/cluster-recovery/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/call-home/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/cluster-settings/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/license-keys/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/rack-zone-awareness/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/sch/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/configure/sync-clocks/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/logging/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/logging/diagnostic-logging/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/logging/log-security/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/logging/redis-slow-log/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/logging/rsyslog-logging/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/maintenance-mode/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/new-cluster-setup/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/disk-sizing-heavy-write-scenarios/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/memtier-benchmark/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/optimization/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/oss-cluster-api/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/turn-off-services/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/optimize/wait/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/remove-node/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/clusters/replace-node/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/databases/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/databases/active-active/
https://redis.io/docs/staging/DOC-7104-8.0-rest/operate/rs/8.0/databases/active-active/connect/

@dwdougherty dwdougherty left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

The mimsy squonker slorped.

Port 9443 is the default [port configuration]({{< relref "/operate/rs/8.0/networking/port-configurations#https://docs.redis.com/latest/rs/networking/port-configurations#ports-and-port-ranges-used-by-redis-enterprise-software" >}}).
{{< /note >}}
> [!NOTE]
> Port 9443 is the default [port configuration](/content/operate/rs/8.0/networking/port-configurations.md#https://docs.redis.com/latest/rs/networking/port-configurations#ports-and-port-ranges-used-by-redis-enterprise-software).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hello friend. Nice to see you again!

Comment on lines +30 to +84
@@ -41,17 +41,17 @@ Enterprise is known for.

Redis developed and certified these modules for use with Redis Enterprise Software:

- [RedisBloom]({{< relref "/operate/modules/redisbloom" >}})
- [RedisBloom](/operate/modules/redisbloom)
- Enables Redis to have a scalable bloom filter as a data type. Bloom
filters are probabilistic data structures that quickly determine if something is contained within a set.
- RedisGraph
- RedisGraph is the first queryable Property Graph database to use sparse
matrices to represent the adjacency matrix in graphs and linear algebra to query the graph.
RedisGraph uses [Cypher](https://www.opencypher.org/) as its query language.
- [RedisJSON]({{< relref "/operate/modules/redisjson" >}})
- [RedisJSON](/operate/modules/redisjson)
- Now you have the convenience JSON as a built-in data type and easily
able to address nested data via a path.
- [RediSearch]({{< relref "/operate/modules/redisearch" >}})
- [RediSearch](/operate/modules/redisearch)
- This module turns Redis into a distributed in-memory
full-text indexing and search beast.

@@ -70,7 +70,7 @@ easily and quickly test several containers to build the scalable
and highly available cluster Redis Enterprise Software is famous for.

For more information go to [quick start with Redis Enterprise Software
on Docker.]({{< relref "/operate/rs/8.0/installing-upgrading/get-started-docker.md" >}})
on Docker.](/operate/rs/8.0/installing-upgrading/get-started-docker.md)

## LDAP integration

@@ -81,4 +81,4 @@ accounts can be used for administering resources on the cluster via
command line, Rest API, or admin console.

For more information see [LDAP
Integration]({{< relref "/operate/rs/8.0/security/passwords-users-roles.md#setting-up-ldap" >}}).
Integration](/operate/rs/8.0/security/passwords-users-roles.md#setting-up-ldap).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

/content/....

…ix, malformed anchor (same as #4095, note anchor is redis-software not redis-enterprise-software here)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@andy-stark-redis

Copy link
Copy Markdown
Contributor Author

Fixed all three: the bare /commands links (_index.md, security/access-control/redis-acl-overview.md), the new-features-redis-enterprise.md dead-link prefixes (cosmetic — confirmed none of the 6 targets exist regardless of prefix, so this doesn't make them work, just brings them into the same form as the rest of the corpus), and the flush.md malformed anchor (a stray old absolute URL concatenated into the fragment, predating this migration — replaced with the real heading slug from this version's own port-configurations.md). Verified via build/diff_rendered_hrefs.py: only the flush.md anchor changes the rendered href, everything else is confirmed cosmetic.

@andy-stark-redis
andy-stark-redis merged commit 41afd5e into main Sep 24, 2026
99 checks passed
@andy-stark-redis
andy-stark-redis deleted the DOC-7104-8.0-rest branch September 24, 2026 10:49
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.

2 participants