feat(cloud): refactor deploy server API to manifests/deployments#142
feat(cloud): refactor deploy server API to manifests/deployments#142Dav-14 wants to merge 5 commits into
Conversation
|
Important Review skippedToo many files! This PR contains 232 files, which is 82 over the limit of 150. To get a review, narrow the scope: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (6)
📒 Files selected for processing (232)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Adopt the new OpenAPI spec from terraform-hcp-proxy feat/app-stack-assignment branch which replaces runs/versions with first-class manifests and deployments. - Replace `runs` subcommand with `deployments` (list, show, logs, create) - Replace `versions` subcommand with `manifests` (list, show, create, delete, update, versions) - Update `apps create` to use name + optional stack-id instead of organization-id - Update `apps show` to use ReadApp with include=state - Move deploy command under deployments as `create` - Regenerate Speakeasy SDK client from updated OpenAPI spec Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…state, soft-delete via develop SDK - Add `fctl cloud app deployments download --id <dpl-...> [--format yaml|gzip] [--out file]` (yaml streams to stdout by default; gzip requires --out) - Add `fctl cloud app manifests download --id <mnf-...> --out file` for the tar.gz archive - Render `state.stack.*` in `deployments show` when --include-state is passed - Refresh deploy-server OpenAPI spec from terraform-hcp-proxy develop and regenerate SDK - Wire new soft-delete flow on `apps delete`: surface destroyDeploymentId, add --wait Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…n deployment wait - Drop app-id scoping on manifests; add bind-manifest/unbind-manifest commands on apps - Show app's current manifest with divergence (undeployed/synced/behind/rebound) on `apps show` - Require manifest-version on `deployments create` and add --wait-timeout with exponential backoff polling - Regenerate deploy server SDK from updated OpenAPI (attach/detach manifest, App.currentManifest) - Add unit tests for new bind/unbind/show/create/delete/push paths Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…d variables Regenerate the deploy-server SDK against the current terraform-hcp-proxy spec. List endpoints (apps, manifests, manifest-versions, deployments, variables) now return cursor-paginated envelopes (pageSize + opaque next/previous tokens) instead of the legacy page/items model, and Variable drops the per-row sensitive flag in favor of unconditional server-side redaction. Update the affected list commands to embed *ResponseCursor, swap --page (int) for --cursor (string), and walk .Data instead of .Items. Drop the dead --sensitive and --category flags from `apps variables create`. Without this, fctl silently deserialized empty list responses (the zero-value Data field), making name lookups always miss and triggering unique-constraint errors on subsequent creates. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
e443eb6 to
4253d2a
Compare
Spec dropped application/gzip from readDeployment and removed the binary variant from readManifest. Update download commands accordingly: - deployments download now requests YAML via the single ResponseStream - manifests download switches to readManifestVersion (defaults to "latest")
Summary
terraform-hcp-proxyfeat/app-stack-assignmentbranchrunsandversionssubcommands with first-classdeploymentsandmanifestsresourcesname+ optionalstackIdinstead oforganizationIddeployments createBreaking changes
apps runscommand removed (replaced byapps deployments)apps versionscommand removed (replaced byapps manifests)apps deploycommand removed (replaced byapps deployments create)apps createnow requires--nameflagapps showno longer shows run statusNew command tree
Test plan
apps listworks with new APIapps create --name testcreates an appapps deployments create --app-id <id> --path manifest.yamltriggers a deploymentapps manifests create --name test --path manifest.yamlcreates a manifestapps manifests versions push --manifest-id <id> --path manifest.yamlpushes a versiondeployments createworks end-to-end🤖 Generated with Claude Code