Repository navigation
VAP15-77 docs: add config as code (GitOps) page - #1287
scott-lowe-vapi wants to merge 5 commits into
Conversation
- New Config as code (GitOps) page in Get started: why config as code, what the VapiAI/gitops repository does, a four-step setup (including the non-interactive setup for coding agents and CI), a copyable agent prompt, environments and promotion, PR checks, and links out to the repository's guides for everything else. - It replaces the Enterprise environments (DEV/UAT/PROD) best-practices page, whose examples used a placeholder API and YAML schema. The old URL redirects to the new page's environments section. - The introduction's Developer tools section shows GitOps next to the CLI. - Agent guidance goes in <llms-only> blocks and the page description, so the auto-generated llms.txt picks it up without replacing it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Setup imports an org's existing resources. The section says how to review the import (audit), preview the first deploy (push --dry-run: no creates or deletes; updates are expected, because a deploy re-sends every managed resource), and keep resources out with .vapi-ignore. It warns against promoting between separately imported orgs, whose filenames differ, so promotion would plan a copy and a delete of every resource. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
🌿 Preview your docs: https://vapi-preview-01a10f25-e2ac-75ed-b168-8fbccc24ecc3.docs.buildwithfern.com |
Replace an unverified warning that promotion between imported orgs would duplicate and delete resources. Promotion's documented setup bootstraps target state without files, and push matches resources by name, so the warning overstated the risk. Point to the promotion guide's one-time setup and its read-only plan instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
🌿 Preview your docs: https://vapi-preview-01a10f29-13a6-718e-80fe-4ad7afeddd0f.docs.buildwithfern.com |
…hboard - Test every pull request: the Validate resources check runs offline on every PR, and simulation checks use simulation minutes, with a newer push cancelling the older run. - Already running Vapi in production: phone numbers and credentials aren't imported as files; each org binds its own. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
🌿 Preview your docs: https://vapi-preview-01a10f2e-9c9a-7079-a13e-7002ea74dce4.docs.buildwithfern.com |
The gate reuses the pull request's simulation checks, and blocks the promotion when a check fails or can't finish. Link the guide's section. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
🌿 Preview your docs: https://vapi-preview-01a10f33-5f38-7452-9ed5-6af88bacfaad.docs.buildwithfern.com |
Lightsage docs evalsLightsage could not queue docs evals for this PR. Docs URL: https://vapi-preview-01a10f3d-a822-736e-9940-4fc6439a038e.docs.buildwithfern.com |
|
🌿 Preview your docs: https://vapi-preview-01a10f3d-a822-736e-9940-4fc6439a038e.docs.buildwithfern.com |
Description
Adds the public docs side of Vapi GitOps (VAP15-77). As agreed on the ticket, the page explains why to manage configuration as code and how to get started, then links out to the repository for the details, so the docs don't drift as the repository changes.
New page: Config as code (GitOps) (
fern/config-as-code.mdx), in Get started right after CLI quickstart. It covers:npm run promote, and test gating;Replaces "Enterprise environments (DEV/UAT/PROD)". That page described a hypothetical deployer:
api.vendor.com, akind: AssistantYAML schema, andPUTby name, none of which match Vapi. Its useful guidance (one org per environment, production writes from CI only, secrets out of git, how this relates to versioning) is now in the new page's environments section./documentation/best-practices/enterprise-environments-dev-uat-prodredirects to/config-as-code#development-staging-and-production."Already running Vapi in production?" For teams with existing orgs:
npm run audit;npm run push -- <org> --dry-run, which should create and delete nothing (updates are expected, because a deploy re-sends every managed resource);.vapi-ignore.Teams already running several orgs are pointed to the promotion guide's one-time setup and its read-only plan. I verified the import claims against a test org (69 files): the dry run showed 0 creates, 66 updates and 0 deletes, and audit flagged two pairs of same-named simulations.
Home page: Developer tools in the introduction now shows a GitOps card next to the CLI card.
llms.txt, without replacing it. Fern can serve a hand-written
llms.txt(agents.llms-txtindocs.yml), but that file would replace the auto-generated 450-line index and stop updating with the docs. Instead, this PR:descriptionfor agents. Fern turns it into the page'sllms.txtline, which lands near the top of the index, right after the CLI, because the page is in Get started;<llms-only>blocks, which appear only in the Markdown that agents read: setup steps and safety rules on the new page, and a pointer to GitOps on the introduction page, which is the first entry agents read.The trade-off: there's no separate
## Config as codesection inllms.txt, as proposed on the ticket, because a custom section would mean hand-maintaining the whole file.Merge after the GitOps stack lands (VapiAI/gitops#65 through #78). The guide links arrive in #70, the promotion test gate is #66, the
.vapi-ignorecleanup protection is #73, and the Validate resources check is #76 and #77. The links 404 until #70 merges.Testing Steps
fern check(fern-api 5.112.0): 0 errors. All 14 warnings existed before this PR (API discriminators, accent contrast, and the redirect check, which needsfern login)./config-as-code: the steps, the tabs, the Set up Vapi GitOps prompt card with its copy and open-in buttons, and the cards under Learn more;/quickstart/introduction#developer-tools: the CLI and GitOps cards side by side;/documentation/best-practices/enterprise-environments-dev-uat-prodredirects to the environments section;/config-as-code.mdincludes the<llms-only>agent steps, and the rendered page doesn't;/llms.txtlists Config as code (GitOps) with the new description.fern docs devwas still building the full API reference after several minutes, so I'm relying on the preview deployment.🤖 Generated with Claude Code