Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add vaccel_config bindings and update agent API #6

Merged
merged 5 commits into from
Feb 10, 2025

Conversation

papazof
Copy link
Collaborator

@papazof papazof commented Jan 30, 2025

Add vaccel_config bindings and rework agent API to support vaccel configuration.

Noteworthy changes:

  • Implement vaccel_config bindings and add wrappers for vaccel_bootstrap*()/vaccel_cleanup() functions
  • Consolidate agent related functions from lib.rs to new Agent struct and split to separate agent.rs
  • Add API support for creating an Agent with a vaccel_config object and initializing vaccel with the agent configuration
  • Add CLI support for parsing vaccel config options and split implementation to cli.rs

@papazof papazof force-pushed the feat_unified_config branch 6 times, most recently from b9464b1 to 1fc9212 Compare January 31, 2025 17:25
@papazof papazof marked this pull request as ready for review February 5, 2025 16:23
@papazof papazof requested review from ananos and ilagomatis February 5, 2025 16:23
Implement `vaccel_config` bindings and add wrappers for
`vaccel_bootstrap*()`/`vaccel_cleanup()` functions

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
Generate error messages in `vaccel-bindings` using the `thiserror`
crate, as we do for the other crates

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
Rework agent API to support vaccel configuration and better structure
implementation.

Changes for `vaccel-bindings`, `vaccel-rpc-client` and
`vaccel-rpc-agent`:
- Rename service struct to `AgentService`
- Rename `VaccelEmpty` RPC message to `EmptyResponse` following the
  common scheme

Changes for `vaccel-rpc-agent`:
- Split `AgentService` and related common definitions to
  `agent_service.rs`
- Move `rpc_async.rs` and `rpc_sync.rs` to `async/agent_service.rs` and
  `sync/agent_service.rs` respectively for consistency
- Consolidate agent related functions from `lib.rs` to new `Agent`
  struct and split to separate `agent.rs`
- Add API support for creating an `Agent` with a `vaccel_config` object
  and initializing vaccel with the agent configuration
- Add proper `start()`/`stop()` methods for `Agent`
- Add CLI support for parsing vaccel config options and split
  implementation to `cli.rs`
- Extend and use common errors properly

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
Fix link for vaccel binary in `README.md`

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
Add temporary install step for missing libcurl/libstb and ensure all
features are checked separately

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
@github-actions github-actions bot force-pushed the feat_unified_config branch from 1fc9212 to 844f893 Compare February 10, 2025 10:52
@papazof papazof merged commit 74d1125 into main Feb 10, 2025
16 checks passed
papazof added a commit that referenced this pull request Feb 10, 2025
Implement `vaccel_config` bindings and add wrappers for
`vaccel_bootstrap*()`/`vaccel_cleanup()` functions

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
papazof added a commit that referenced this pull request Feb 10, 2025
Generate error messages in `vaccel-bindings` using the `thiserror`
crate, as we do for the other crates

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
papazof added a commit that referenced this pull request Feb 10, 2025
Rework agent API to support vaccel configuration and better structure
implementation.

Changes for `vaccel-bindings`, `vaccel-rpc-client` and
`vaccel-rpc-agent`:
- Rename service struct to `AgentService`
- Rename `VaccelEmpty` RPC message to `EmptyResponse` following the
  common scheme

Changes for `vaccel-rpc-agent`:
- Split `AgentService` and related common definitions to
  `agent_service.rs`
- Move `rpc_async.rs` and `rpc_sync.rs` to `async/agent_service.rs` and
  `sync/agent_service.rs` respectively for consistency
- Consolidate agent related functions from `lib.rs` to new `Agent`
  struct and split to separate `agent.rs`
- Add API support for creating an `Agent` with a `vaccel_config` object
  and initializing vaccel with the agent configuration
- Add proper `start()`/`stop()` methods for `Agent`
- Add CLI support for parsing vaccel config options and split
  implementation to `cli.rs`
- Extend and use common errors properly

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
papazof added a commit that referenced this pull request Feb 10, 2025
Fix link for vaccel binary in `README.md`

PR: #6
Signed-off-by: Kostis Papazafeiropoulos <[email protected]>
Reviewed-by: Ilias Lagomatis <[email protected]>
Approved-by: Ilias Lagomatis <[email protected]>
@papazof papazof deleted the feat_unified_config branch February 10, 2025 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants