Skip to content

milenkovicm/testcontainers-redpanda-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unofficial Rust Test Container For Redpanda

github action Crates.io Crates.io

Unofficial testcontainer for Redpanda.

Note:

  • version 0.2.x supports testcontainer 0.16
  • version 0.1.x supports testcontainer 0.15

Add dependency:

testcontainers-redpanda-rs = { version = "0.2" }
testcontainers = { version = "0.16" }

Create and run redpanda container:

use testcontainers_redpanda_rs::*;

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

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

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

Limitations:

  • It will use default kafka ports and only single test can run on given host.