2 unstable releases

0.2.0 Nov 25, 2024
0.1.0 Nov 23, 2024

#1377 in Network programming

Download history 98/week @ 2024-11-18 187/week @ 2024-11-25

285 downloads per month

MIT license

20KB
295 lines

cloud-node-discovery-rs

crates.io docs.rs

A Rust library for discovering nodes in cloud environments.

Work in progress.

Features

  • Providers are supported via features. You don't have to enable them all.
  • By default, all providers are enabled.
  • Supported providers:
    • AWS
    • UpCloud

Example

cargo run --example aws
cargo run --example upcloud

See the examples directory for more.

License

MIT


lib.rs:

Cloud Node Discovery for Rust

This crate provides functionality to discover nodes in various cloud environments. Currently supports:

  • AWS EC2 instances (with tag-based filtering)

Example

use cloud_node_discovery::{Discovery, DiscoveryError};

#[tokio::main]
async fn main() -> Result<(), DiscoveryError> {
    let discovery = Discovery::new("aws", "region=us-east-1,tag_key=foo,tag_value=bar").await?;
    let nodes = discovery.discover().await?;
    println!("{:?}", nodes);
    Ok(())
}

Dependencies

~3–27MB
~361K SLoC