Skip to content

Kubernetes request flow tutorial URL is non-deterministic: alias collides with a near-duplicate page #1254

Description

@hiyach28

Summary

Two near-duplicate copies of the "Kubernetes Request Flow" tutorial exist, and one claims the other's URL as an alias. Hugo writes both to the same output path, so /kanvas/tutorials/kubernetes-request-flow/ is a race between the real page and a redirect stub. Which one wins can change from build to build.

The collision

File URL it produces
content/en/kanvas/tutorials/kubernetes-request-flow.md /kanvas/tutorials/kubernetes-request-flow/ (its own page)
content/en/kanvas/tutorials/kubernetes/kubernetes-request-flow.md /kanvas/tutorials/kubernetes/kubernetes-request-flow/, plus aliases: - /kanvas/tutorials/kubernetes-request-flow

The second file's alias is the first file's real URL.

Evidence

Building the same commit of master twice produced different output at that path:

  • one build: the full tutorial page, ~403 KB
  • another build: a 417-byte redirect stub, <meta http-equiv="refresh" content="0; url=https://docs.layer5.io/kanvas/tutorials/kubernetes/kubernetes-request-flow/">

Production currently serves the real page (HTTP 200), so the impact is latent rather than live, but any rebuild can flip it and silently replace the tutorial with a redirect.

The two files are almost identical, differing mostly in wording ("Kanvas" vs "Meshery Kanvas") and front matter.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions