mirror of
https://github.com/kjuulh/dagger-rs.git
synced 2025-08-18 21:13:28 +02:00
Compare commits
2 Commits
feat/final
...
feat/add-t
Author | SHA1 | Date | |
---|---|---|---|
e8ae5fcb2c
|
|||
6b82e523bd
|
68
README.md
68
README.md
@@ -1,7 +1,69 @@
|
|||||||
# dagger-sdk
|
# dagger-sdk
|
||||||
|
|
||||||
A dagger sdk written in rust
|
A dagger sdk written in rust for rust.
|
||||||
|
|
||||||
## Disclaimer:
|
## Plan for next release
|
||||||
|
|
||||||
Repository has moved to: https://github.com/dagger/dagger/tree/main/sdk/rust
|
- [x] Introduce [thiserror](https://docs.rs/thiserror/latest/thiserror/) for
|
||||||
|
better errors
|
||||||
|
- [x] Add compatibility with `dagger run`
|
||||||
|
- [ ] Add open telemetry tracing to the sdk
|
||||||
|
- [ ] Remove `id().await?` from passing to other dagger graphs, this should make
|
||||||
|
the design much cleaner
|
||||||
|
- [ ] Start MkBook on how to actually use the sdk
|
||||||
|
- [x] Update to newest upstream release
|
||||||
|
- [ ] Fix bugs
|
||||||
|
- [x] Run in conjunction with golang and other sdks
|
||||||
|
- [ ] Stabilize the initial `Arc<Query>` model into something more extensible
|
||||||
|
|
||||||
|
## 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
|
||||||
|
Reference in New Issue
Block a user