Conversation
Add a `FloxHub on-prem` navigation group covering installation, reference architectures, administration, and upgrades, with a page per planned topic. Two pages carry real content: - `floxhub-onprem/intro` — what the offering is, how it differs from hosted FloxHub, and which responsibilities belong to the operator. - `floxhub-onprem/administration/monitoring/health-check` — the health endpoint each service exposes, how to probe it from the host and through the front door, and what a `200` does and does not prove. The rest are placeholders marked under construction. They exist so the navigation tree and cross-links are complete while the remaining pages are written, rather than landing thirty pages of links to nowhere. `liveness` joins the Vale vocabulary. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
Replace the placeholder with the connector configuration an operator needs: the three-step flow for attaching a provider, minimal working examples for Okta, Entra ID, AD FS, and LDAP, and why SAML is not offered. Two facts get prominence because getting them wrong is expensive. The external URL is baked into every token the deployment issues, so it has to be right before the first sign-in rather than after. And the deployment derives a user's handle from the `preferred_username` claim, so a provider that sends neither that nor `name` produces an authenticated identity that cannot be provisioned. Also states what authenticating does not buy: directory group membership does not map to organizations or roles, so a group grant yields a working sign-in and nothing more. `Entra`, `Okta`, `lowercased`, `misconfigured`, and `rollout` join the Vale vocabulary. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Replace the placeholder with how a person becomes a user of a deployment: provisioning as a side effect of a first successful sign-in, how the handle is derived and what grammar it must satisfy, and the single namespace users and organizations share. The failure modes get a section of their own. A handle collision has no self-service resolution, because the handle is derived rather than chosen, so two directory usernames that sanitize to the same handle block the second person's sign-in until the provider sends something different. That is cheap to check before a rollout and expensive to discover during one. Records the operator controls that do not exist — no invite flow, no deactivation, no organization deletion, no directory group links, no administrative user listing — so they are planned around rather than searched for. Revocation belongs at the identity provider, and does not reach tokens already issued. Organization and membership management is named but left to the follow-up that covers it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scaffolds a
FloxHub on-premsection in the sidebar — 33 pages acrossinstallation, reference architectures, administration, and upgrades — and
writes the first four.
What to review: the section structure (
docs.json), and the four pagesthat carry real content:
floxhub-onprem/intro— what the offering is, how it differs from hosted FloxHub, and what the operator is responsible for.../administration/monitoring/health-check— every service's health endpoint, how to probe it, and what a200does and does not prove.../administration/users/identity— attaching an identity provider, with working connector examples.../administration/users/overview— how a person becomes a user, and which operator controls existThe remaining 29 are placeholders carrying an under-construction banner and a
short statement of planned scope. Each commit cites the sub-issue it closes.
Tracked by ENT-151.
Targets
docs/floxhub-onprem, the integration branch for this section, notmain. Merging here publishes nothing: the section reachesflox.dev/docsonly when that branch merges to
main, once on-prem is ready to be public.Why a skeleton first
The section is thirty-odd cross-linked pages accumulating on an integration
branch. Landing them one at a time without an agreed tree means every page
either links to nothing or invents a path the next page has to match. Putting the structure in first makes the
page naming reviewable while it is still cheap to change, lets each
subsequent page land as its own small PR, and makes the two landing pages
(introduction and reference architectures) writable against something real
instead of guesswork.
The placeholders are deliberate rather than empty: each states what the page
will cover, so the scope of the section is reviewable now.
Structure and where it comes from
The tree mirrors the GitLab documentation's split between
installation and
administration, which is the
structure ENT-151 asks for. Page-for-page, each placeholder corresponds to a
sub-issue of ENT-151.
The group sits directly after Imageless Kubernetes, the site's other
self-hosted-product section, rather than under Customer — that section is
three standalone pages, not a product tree.
Health check sits under Administer → Monitoring, matching GitLab's
/administration/monitoring/health_check/. The Configure page links to it.How the health check page was written
Every endpoint, port, and path was read out of the service source rather than
inferred, including the mount prefixes that determine the full paths. Notable
findings that shaped the page:
catalog-server's/status/healthcheckruns a show, a search, and a resolve against the database and reports
per-operation timings;
build-coordinator's/healthreturns503namingany background loop that has exited. Everything else returns a fixed
literal.
/readypaths onaccounts,factory, andbuild-coordinatorchecknothing. They are documented as placeholders rather than as readiness
signals, because treating them as readiness is the mistake this page exists
to prevent.
web-bff's/api/health/detailsreports no dependencies on-prem — itsonly dependency check targets a service on-prem deployments do not use — so
it is documented as a second liveness probe.
/web-bff/api/health/statusand the twodiscovery documents answer without a credential. Everything else returns
401, which is a useful signal about the front door and no signal at allabout the service behind it.
The Limits section is as much of the page as the endpoint list, because
the failure mode in practice is reading a
200as "the deployment works".How the Users pages were written
Sourced from the deployment's own connector guide and the accounts service,
with the endpoint and provisioning behavior read from the code rather than
inferred.
Three findings drove how the pages are organized:
preferred_usernameclaim (falling back toname), sanitized to the handlegrammar. So a provider sending neither cannot have its users provisioned, and
two usernames that sanitize to the same handle block the second person's
sign-in with no self-service way out. Both are documented as pre-rollout
checks, because they are cheap to check and expensive to hit during a
rollout.
deployment issues and advertised as the broker's issuer, so it has to be
correct before the first sign-in. That is stated before the connector
instructions rather than after.
deactivation, no organization deletion, no directory group links, no
administrative user listing. These are recorded explicitly so an operator
plans around them instead of hunting for a setting. Revocation belongs at the
identity provider, and does not reach tokens already issued.
Organization and membership management is named but deliberately left to the
follow-up scoped to it, matching how ENT-360 is written.
Verification
vale— clean across all 33 pages.liveness,Entra,Okta,lowercased,misconfigured, androlloutadded to the project vocabulary;two phrasings reworded rather than adding a word for them.
mint broken-links— no broken links introduced. The three reported arepre-existing
changelog/rss.xmlreferences.mint dev— every new page returns200locally, confirming the MDX andthe components parse.
llms.txtregenerated withscripts/generate-llms-txt.sh, ascheck-llms-txtrequires.