# mlua-samsa Lua bindings for the Samsa kafka client. [![License](http://img.shields.io/badge/Licence-MIT-blue.svg)](LICENSE) [![Arch](https://img.shields.io/badge/Arch-aarch64%20|%20amd64%20|%20armv7-blue.svg)]() [![Lua](https://img.shields.io/badge/Lua-5.1%20|%205.2%20|%205.3%20|%205.4%20|%20LuaJIT%20|%20LuaJIT%205.2-blue.svg)]() ## Installing Add to your Rust project using one of MLua's features: [lua51, lua52, lua53, lua54, luajit, luajit52]. ```shell $ cargo add mlua-samsa --features luajit ``` ## Using ```rust use mlua::Lua; use mlua_samsa; let lua = Lua::new(); mlua_samsa::preload(&lua)?; let script = r#" local samsa = require('samsa') local bootstrap_addrs = 'localhost:9092' local topic = 'my-topic' local producer = samsa.ProducerBuilder:new(bootstrap_addrs, topic):build() local message = { partition_id = 0, topic = topic, key = 'my-key', value = 'my-value', } producer:produce(message) "#; lua.load(script).exec()?; ``` ## Testing ```shell $ make check ``` ## Integration Testing ```shell $ KAFKA_BROKERS=127.0.0.1:9092 KAFKA_TOPIC=abc make check ```