Skip to content
Proud to collaborate with Microsoft for Startups

spad.site-creation-alibaba ​

Provisions Alibaba Cloud OSS + CDN infrastructure for a SPAD site

DAG-based site creation workflow for Alibaba Cloud SPAD sites. Provisions OSS bucket + Alibaba CDN domain + DNS CNAME.

Overview ​

PropertyValue
Workflow typeDag
LibraryApp-spad
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
site_uuidstringYes—ID of the SPAD site
organization_uuidstringNo—Organization ID
slugstringYes—Site slug/identifier
cloud_connection_uuidstringYes—Alibaba cloud connection ID
cdn_custom_domainstringNo—Custom domain for CDN (optional)
dns_zone_refstringNo—Alibaba Cloud DNS zone (domain name, e.g. example.com)

Output Schema ​

FieldTypeRequiredDefaultDescription
site_uuidstringYes—Site marked active
slugstringNo—Site slug propagated from input
s3_bucket_namestringNo—OSS bucket name (stored in the cross-provider s3_bucket_name field)
cloudfront_domainstringNo—CDN domain or CDN CNAME (used as the cross-provider edge identifier)
resources_createdlistNo—Subset of oss_bucket / alibaba_cdn_domain / alibaba_dns_cname that were provisioned
finalized_atstringNo—ISO8601 timestamp when the site was marked active
organization_uuidstringNo—Organization ID
cloud_connection_uuidstringNo—Alibaba cloud connection ID
cdn_custom_domainstringNo—Custom domain for CDN (optional)
dns_zone_refstringNo—Alibaba Cloud DNS zone (domain name, e.g. example.com)
errorstringNo—Engine-stamped failure metadata
error_typestringNo—Engine-stamped failure metadata
failed_at_statejsonNo—Engine-stamped failure metadata
failed_layerjsonNo—Engine-stamped failure metadata
failed_stepjsonNo—Engine-stamped failure metadata
failure_reasonstringNo—Engine-stamped failure metadata
create_oss_bucketjsonNo—DAG step terminal state data
configure_oss_bucketjsonNo—DAG step terminal state data
create_cdn_domainjsonNo—DAG step terminal state data
restrict_oss_to_cdnjsonNo—DAG step terminal state data
attach_cdn_certjsonNo—DAG step terminal state data
create_dns_cnamejsonNo—DAG step terminal state data
finalizejsonNo—DAG step terminal state data

DAG Layers ​

#LayerStepsCompensation
1create_oss_bucketspad.ltip.alibaba.create_oss_bucketspad.compensation.noop
2configure_oss_bucketspad.ltip.alibaba.configure_oss_bucketspad.compensation.noop
3create_cdn_domainspad.ltip.alibaba.create_cdn_domainspad.compensation.noop
4cdn_policy_and_dnsspad.ltip.alibaba.restrict_oss_to_cdn, spad.ltip.alibaba.attach_cdn_certificate, spad.ltip.alibaba.create_dns_cnamespad.compensation.noop
5finalizespad.ltip.site-creation-finalize—

Execution Flow ​

Compensation ​

When any layer fails, its compensation steps run in reverse order to roll back the work completed so far.

Sub-workflows ​

Sub-workflowStep name
spad.ltip.alibaba.create_oss_bucketcreate_oss_bucket
spad.ltip.alibaba.configure_oss_bucketconfigure_oss_bucket
spad.ltip.alibaba.create_cdn_domaincreate_cdn_domain
spad.ltip.alibaba.restrict_oss_to_cdnrestrict_oss_to_cdn
spad.ltip.alibaba.attach_cdn_certificateattach_cdn_cert
spad.ltip.alibaba.create_dns_cnamecreate_dns_cname
spad.ltip.site-creation-finalizefinalize
spad.compensation.noopack_no_compensation_create_oss_bucket

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "spad.site-creation-alibaba",
  "initial_data": {
    "site_uuid": "value",
    "slug": "value",
    "cloud_connection_uuid": "value"
  }
}