Skip to content

milenkovicm/testcontainers-redpanda-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unofficial Rust Test Container For Redpanda

github action Crates.io Crates.io

Unofficial testcontainer for Redpanda. Redpanda is a simple, powerful, and cost-efficient streaming data platform that is compatible with Kafka APIs but much less complex, faster and more affordable.

Add dependency:

testcontainers-redpanda-rs = { version = "0.9" }

Create and run redpanda container:

use testcontainers_redpanda_rs::*;

#[tokio::main]
async fn main() {
    let container = Redpanda::default();

    let server_node = container.start().await.unwrap();
    let bootstrap_servers = format!("localhost:{}", server_node.get_host_port_ipv4(REDPANDA_PORT).await.unwrap());
    // if topic has only one partition this part is optional
    // it will be automatically created when client connects
    server_node.exec(Redpanda::cmd_create_topic("test_topic", 3)).await.unwrap();

    println!("Redpanda server: {}", bootstrap_servers);
}

Explicit dependency on testcontainers is not needed.

Note about version compatibility:

  • 0.10.x supports testcontainers 0.23
  • 0.9.x supports testcontainers 0.22
  • 0.8.x supports testcontainers 0.21
  • 0.7.x supports testcontainers 0.21
  • 0.6.x supports testcontainers 0.20
  • 0.5.x supports testcontainers 0.19
  • 0.4.x supports testcontainers 0.18
  • 0.3.x supports testcontainers 0.17
  • 0.2.x supports testcontainers 0.16
  • 0.1.x supports testcontainers 0.15