Composer
Features
Section titled “Features”- Takes a
TopologySpecand generates a DAG of entities. - The connectors are provider-specific. For example, an
event->functiontarget is implemented using Eventbridge Targets in AWS. Afunction->eventis usingLambda Destinationsto orchestrate. Afunction->functioncould be using stepfunctions and so forth. - The generated output has a
Topologystructure
pub struct Topology { pub namespace: String, pub env: String, pub fqn: String, pub kind: TopologyKind, pub infra: String, pub dir: String, pub sandbox: String, pub version: String, pub nodes: HashMap<String, Topology>, pub events: HashMap<String, Event>, pub routes: HashMap<String, Route>, pub functions: HashMap<String, Function>, pub mutations: HashMap<String, Mutation>, pub schedules: HashMap<String, Schedule>, pub queues: HashMap<String, Queue>, pub channels: HashMap<String, Channel>, pub pools: HashMap<String, Pool>, pub pages: HashMap<String, Page>, pub tags: HashMap<String, String>, pub flow: Option<Flow>, pub config: Config, pub roles: HashMap<String, Role>, pub tests: HashMap<String, TestSpec>,}Visualization
Section titled “Visualization”To visualize the generated graph
tc compose --diagram graph -f dottc compose --diagram sequence -f svgtc compose --diagram block -f svg