Skip to content

Skippr Cloud deployment model

Choose one owner for desired infrastructure state. Use direct Cloud APIs for application-controlled resources, Terraform or CDKTF for declarative infrastructure, Functions for executable packages, and Sites for immutable web releases.

Status: Preview — deployment behavior follows the readiness status of the underlying service and operation.

Boundaries first

BoundaryOwnerWhat it does
Authentication and tenancyauth and ABACDerives the caller and tenant from verified credentials.
Provisionable control planeDirect API or TerraformCreates and manages resources such as tables, queues, functions, Apis, Sites, and domains.
Desired state and planTerraformEvaluates configuration, stores state, plans changes, imports, and applies.
Managed-resource verificationinventoryRecords and verifies provider-managed resources; never plans or repairs them.
Data planeCloud API or SDKReads items, sends messages, transfers object bytes, and invokes functions.
Function releasefunctionsRegisters a package and configuration as a function revision.
Web releasesitesStores immutable Deployments and promotes one as the active Site release.

The verified credential selects the tenant. Do not send a tenant id in a request body, query parameter, or custom header.

At a glance

SurfaceDeployment unitState ownerResult
Native Cloud APIService resource or operationCalling clientService control-plane state
Terraformcloud_* resourceTerraform configuration and statePlanned and applied Cloud resources
CDKTF TypeScript or PythonGenerated constructTerraform configuration and stateTerraform plan/apply result
FunctionsFunction package and configurationFunctions APIRegistered function revision
SitesImmutable DeploymentSites APIPreview release or active Site release

CDKTF does not introduce a second Cloud deployment engine. It synthesizes Terraform configuration.

Choose your path

Use direct Cloud APIs

Choose direct APIs when your application explicitly controls resource calls or when you are performing data-plane work. A resource's generated contract lists its create, read, update, delete, and list operations.

Your client owns call ordering, retries, and any desired-state record outside the service. Use clientToken, revision, conditional, and pagination fields only where the operation schema defines them.

Use Terraform

Choose Terraform when you want declarative cloud_* resources, plans, state, refresh, and import. The provider is skippr/cloud version 0.1.0, with eu-central-1 as its default region.

The provider calls the same native Cloud resource operations as a direct client. It also registers and verifies managed resources with inventory. Terraform remains the owner of the plan and any corrective action.

See Terraform and CDKTF for credential prerequisites, a copyable cloud_table example, the exact 19 resource identifiers, and lifecycle details.

Use CDKTF TypeScript or Python

Choose CDKTF when you want to define the same Terraform resources in TypeScript or Python:

LanguagePackageProvider class
TypeScript@skippr/provider-cloud 0.1.0CloudProvider
Pythonskippr-cdktf 0.1.0; import skippr_cdktfCloudProvider

CDKTF synthesizes Terraform JSON. Terraform then plans and applies it, so the ownership and inventory boundaries are identical to HCL.

Deploy application code

Deploy a function

  1. Put a Zip artifact in objects, or choose an OCI image reference.
  2. Call RegisterFunction with package and runtime configuration.
  3. Use UpdateFunctionCode or UpdateFunctionConfiguration for later changes.
  4. Call Invoke or InvokeAsync, or connect the function to gateway, events, or queue.
  5. Use GetFunction and ListFunctions to inspect state.

Zip and image package types are distinct contract values. A Zip package uses an object location and digest. An image package uses an OCI image reference and optional digest. Authorize the function's workload principal through auth.

Deploy a Site

Terraform can manage the stable cloud_site and cloud_site_domain_binding resources. Your release workflow manages immutable Sites Deployments:

  1. Build the static application in your own build workflow.
  2. Call CreateDeployment and upload the requested content.
  3. Call CompleteDeployment to validate and publish the immutable release.
  4. Test the Deployment preview hostname.
  5. Call PromoteDeployment to make it the active Site release.
  6. Promote an earlier ready Deployment to roll back.

Site, Deployment, promotion, and DomainBinding operations are callable in Preview. PurgeCache, RevalidatePath, RevalidateTag, and framework SSR remain later work.

Keep control and data operations separate

text
Client → HTTPS gateway edge → authentication → ABAC → Cloud service

Terraform and CDKTF manage only resources listed in the resource reference. Data-plane operations remain API or SDK calls. For example, Terraform can create cloud_table, but your application uses CloudTables.PutItem and CloudTables.GetItem.

Limits, errors, and contracts

  • Check operation readiness before adding a deployment step; planned operations are not callable.
  • Use the resource reference for required attributes, import identities, and update-or-replace behavior.
  • Use each service guide for package, payload, resource, and concurrency limits. There is no shared deployment limit to infer across services.
  • Cloud API failures use the shared error contract. Terraform and CDKTF surface those service failures during plan, refresh, or apply as appropriate.