runfabric

Provider Setup

Provider-by-provider checklist for credentials and deploy wiring. The Go engine uses REST/SDK for deploy where implemented (see DEPLOY_PROVIDERS).

Quick navigation

Provider onboarding (quick steps)

  1. Set provider in runfabric.yml (e.g. provider.name: aws-lambda).
  2. Install provider adapter if your project uses npm packages (e.g. @runfabric/provider-aws-lambda); otherwise use the built-in engine.
  3. Add provider-specific extensions in config when needed.
  4. Export required credential env vars (see sections below).
  5. Run runfabric doctor.
  6. Run runfabric deploy.

Contract Boundary (SDK-First)

Real deploy is opt-in: RUNFABRIC_REAL_DEPLOY=1 or RUNFABRIC_<PROVIDER>_REAL_DEPLOY=1. Simulated mode is default.

Common flow

For any provider:

runfabric doctor -c runfabric.yml
runfabric plan -c runfabric.yml
runfabric build -c runfabric.yml
runfabric deploy -c runfabric.yml

AWS Lambda

Required env:

Optional real mode:

GCP Functions

API-based deploy (when providerOverrides uses gcp-functions):

CLI-based (optional):

Azure Functions

API-based deploy (default when provider is azure-functions):

Optional CLI-based path:

Kubernetes

API-based deploy (default when provider is kubernetes):

Cloudflare Workers

API-based deploy (default when provider is cloudflare-workers):

Vercel

API-based deploy (default when provider is vercel):

Netlify

API-based deploy (default when provider is netlify):

Alibaba FC

API-based deploy (default when provider is alibaba-fc):

DigitalOcean App Platform

API-based deploy (default when provider is digitalocean-functions):

Fly Machines

API-based deploy (default when provider is fly-machines):

IBM OpenWhisk

API-based deploy (default when provider is ibm-openwhisk):

Linode

Command-based deploy (default when provider is linode):

Optional direct invoke URL (bypasses command):

Optional Provider-Native Traces/Metrics Commands

For providers where you want cloud-native observability calls instead of local artifact-derived data, set:

Example (AWS):

export RUNFABRIC_AWS_TRACES_CMD='echo "{\"traces\":[{\"timestamp\":\"2026-01-01T00:00:00Z\",\"message\":\"trace\"}]}"'
export RUNFABRIC_AWS_METRICS_CMD='echo "{\"metrics\":[{\"name\":\"invocations\",\"value\":10,\"unit\":\"count\"}]}"'

Examples

Provider config examples:

Compose contracts example: