create_stream/
create_stream.rs

1use s2::{
2    client::{Client, ClientConfig},
3    types::{BasinName, CreateStreamRequest, StorageClass, StreamConfig},
4};
5
6#[tokio::main]
7async fn main() -> Result<(), Box<dyn std::error::Error>> {
8    let token = std::env::var("S2_ACCESS_TOKEN")?;
9    let config = ClientConfig::new(token);
10    let client = Client::new(config);
11
12    let basin: BasinName = "my-favorite-basin".parse()?;
13    let basin_client = client.basin_client(basin);
14
15    let stream = "my-favorite-stream";
16
17    let stream_config = StreamConfig::new().with_storage_class(StorageClass::Express);
18
19    let create_stream_request = CreateStreamRequest::new(stream).with_config(stream_config);
20
21    let created_stream = basin_client.create_stream(create_stream_request).await?;
22    println!("{created_stream:#?}");
23
24    let stream_config = basin_client.get_stream_config(stream).await?;
25    println!("{stream_config:#?}");
26
27    Ok(())
28}