/cdk-rs

Primary LanguageRustApache License 2.0Apache-2.0

cdk-rs

License Crates.io Crates.io Docs CI

(WIP) Rust support for the AWS Cloud Development Kit (CDK).

use cdk_builder::{ec2, s3, App, Layer, Stack};

struct HelloStack;

impl Stack for HelloStack {
    fn run(me: &mut Layer<Self>) {
        s3::Bucket {
            name: "HelloBucket",
            versioned: true,
        }
        .stack(me);

        let vpc = ec2::Vpc {
            name: "HelloVpc",
            max_azs: 3,
        }
        .stack(me);

        ec2::Instance {
            name: "HelloInstance",
            vpc: &vpc,
        }
        .stack(me);
    }
}

#[tokio::main]
async fn main() {
    let mut app = App::new();
    app.stack(HelloStack);
    app.run().await;
}

Installation

cargo install cargo-cdk
cargo cdk build
cargo cdk ls