Skip to main content

Cloud connections

A cloud connection links your Ductape workspace to an external provider. Each connection has a stable tag (for example prod_aws) that you pass as cloud: '<tag>' when linking components.

See Cloud overview for the full connect → link → run flow.

Lifecycle​

StepMethod
Createconnections.create({ provider, name, scopes })
Completeconnections.complete(cloudTag, input) — save provider credentials
Validateconnections.validate(cloudTag) — test and activate
Readconnections.fetch(cloudTag) / connections.list()
Updateconnections.update(cloudTag, { display_name, description, scopes })
Deleteconnections.delete(cloudTag)

Always use the connection tag in complete, validate, fetch, update, and delete — not an internal ID.

await ductape.cloud.connections.create({
provider: 'aws',
name: 'prod_aws',
scopes: ['storage', 'database'],
});

await ductape.cloud.connections.complete('prod_aws', {
role_arn: 'arn:aws:iam::123456789012:role/DuctapeAccess',
});

await ductape.cloud.connections.validate('prod_aws');

Providers​

Providerprovider valueComplete inputGuide
AWSawsrole_arnAWS setup
GCPgcpproject_id, service_account_jsonGCP setup
Azureazuretenant_id, subscription_id, client_id, client_secretAzure setup
MongoDB Atlasmongodb_atlasproject_id, atlas_public_key, atlas_private_keyAtlas setup
Neo4j Auraneo4j_auraaura_client_id, aura_client_secretAura setup

Connections for deploying code​

Pass scopes: ['deploy'] (or tick Use this connection to deploy code with Ductape in the workbench, or use --deploy in the CLI) to make a connection for Ductape Deploy. Validation then also checks the deploy permissions and names each one that is missing.

A deploy connection takes extra fields when completed: runtime_service_account (Google), runtime_role_arn, build_role_arn and default_region (AWS), resource_group, registry_name, environment_name and runtime_identity_id (Azure). For setup steps that match your account, ask for the guide:

ductape cloud connections guide --provider gcp --purpose deploy

See Connect a cloud.

Workbench​

ActionWhere
CreateCloud sidebar → Add connection
Complete credentialsSetup tab (pending) or Settings → Credentials (active)
Re-validateConnection header → Re-validate
DeleteRemove in the connection header

The connection tag is fixed after creation. You can change display name and description anytime. Leave secret fields blank on credential updates to keep the stored value.

SDK parity​

LanguageComplete
TypeScriptductape.cloud.connections.complete(cloudTag, input)
NestJSInject the Ductape SDK and call ductape.cloud.connections.complete(cloudTag, input)

Next​

Link your first component