concord-client 0.0.9

A client library for walmartlabs/concord written in async Rust
Documentation
# concord-client

A work-in-progress wrapper for [Concord](https://github.com/walmartlabs/concord/) API.
Uses [tokio](https://tokio.rs/) for async I/O.

Depends on [reqwest](https://github.com/seanmonstar/reqwest) and
[tokio-tungstenite](https://github.com/snapview/tokio-tungstenite/) for HTTP and WebSocket support, respectively.

## Status

- basic [QueueClient]src/queue_client.rs implementation:
  - [x] maintains a WebSocket connection to concord-server
  - [x] provides high-level API like `next_process` and `next_command`
  - [x] graceful shutdown (on drop)
  - [ ] configurable timeouts
- basic [ApiClient]src/api_client.rs implementation:
  - [x] supports both API token and session token authentication
  - [x] start a process
  - [x] get process details
  - [x] update process status
  - [x] download process state
  - [x] create and update log segments
  - [ ] configurable timeouts
  - [ ] everything else

The current feature set is enough to implement a bare-bones concord-agent in Rust.

## Create Features

All features are enabled by default.

- `api-client` - access to Concord's REST APIs;
- `queue-client` - access to Concord's websocket API.