dagger-rs/crates/dagger-sdk
2023-02-25 02:27:01 +01:00
..
examples feat: update to dagger-v0.3.13 2023-02-25 00:10:46 +01:00
src fix(sdk): fix builder pattern to actually work with default values 2023-02-25 01:47:57 +01:00
tests feat: add tests to sdk 2023-02-25 02:27:01 +01:00
.gitignore add dagger-sdk 2023-01-29 11:38:13 +01:00
Cargo.toml Release dagger-core v0.2.7, dagger-sdk v0.2.15 2023-02-25 00:11:35 +01:00
CHANGELOG.md Release dagger-core v0.2.7, dagger-sdk v0.2.15 2023-02-25 00:11:35 +01:00
LICENSE.MIT add dagger-sdk 2023-01-29 11:38:13 +01:00
README.md docs(sdk): change to await syntax 2023-02-19 21:47:40 +01:00

dagger-sdk

A dagger sdk written in rust for rust.

Examples

See examples

Run them like so

cargo run --example first-pipeline

The examples match the folder name in each directory in examples

Install

Simply install like:

cargo add dagger-sdk

Usage

#[tokio::main]
async fn main() -> eyre::Result<()> {
    let client = dagger_sdk::connect()?;

    let version = client
        .container()
        .from("golang:1.19")
        .with_exec(vec!["go", "version"])
        .stdout().await?;

    println!("Hello from Dagger and {}", version.trim());

    Ok(())
}

And run it like a normal application:

cargo run

Disclaimer

You are free to use something else than tokio, I haven't tested it with anything else, but it should work with any other runtime. We don't rely on it specifically. That might change in the future though.