mirror of
https://github.com/kjuulh/dagger-rs.git
synced 2024-11-08 11:01:47 +01:00
56 lines
810 B
Markdown
56 lines
810 B
Markdown
|
# dagger-sdk
|
||
|
|
||
|
A dagger sdk written in rust for rust.
|
||
|
|
||
|
## Examples
|
||
|
|
||
|
See [examples](./crates/dagger-sdk/examples/)
|
||
|
|
||
|
Run them like so
|
||
|
|
||
|
```bash
|
||
|
cargo run --example first-pipeline
|
||
|
```
|
||
|
|
||
|
The examples match the folder name in each directory in examples
|
||
|
|
||
|
## Install
|
||
|
|
||
|
Simply install like:
|
||
|
|
||
|
```bash
|
||
|
cargo add dagger-sdk
|
||
|
```
|
||
|
|
||
|
### Usage
|
||
|
|
||
|
```rust
|
||
|
#[tokio::main]
|
||
|
async fn main() -> eyre::Result<()> {
|
||
|
let client = dagger_sdk::connect().await?;
|
||
|
|
||
|
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:
|
||
|
|
||
|
```bash
|
||
|
cargo run
|
||
|
```
|
||
|
|
||
|
### Contributing
|
||
|
|
||
|
See [CONTRIBUTING](./CONTRIBUTING.md)
|
||
|
|
||
|
or just cargo make codegen
|