From cad68e6f7f9f61dad28fa6cecc3a9f613e385ada Mon Sep 17 00:00:00 2001 From: Lucas Kent Date: Tue, 28 Mar 2023 09:44:52 +1100 Subject: [PATCH] Split shotover library/binary into separate crates --- Cargo.lock | 46 +++++++-- Cargo.toml | 14 ++- shotover-proxy/Cargo.toml | 98 +++++-------------- shotover-proxy/benches/benches/chain.rs | 28 +++--- shotover-proxy/benches/benches/codec.rs | 12 +-- shotover-proxy/src/main.rs | 2 +- .../tests/cassandra_int_tests/cluster/mod.rs | 8 +- .../tests/cassandra_int_tests/mod.rs | 4 +- .../redis_int_tests/basic_driver_tests.rs | 4 +- shotover-proxy/tests/redis_int_tests/mod.rs | 12 +-- .../tests/runner/runner_int_tests.rs | 14 +-- shotover/Cargo.toml | 80 +++++++++++++++ .../src/codec/cassandra.rs | 0 .../src/codec/kafka.rs | 0 {shotover-proxy => shotover}/src/codec/mod.rs | 0 .../src/codec/redis.rs | 0 .../src/config/chain.rs | 0 .../src/config/mod.rs | 0 .../src/config/topology.rs | 4 +- {shotover-proxy => shotover}/src/error.rs | 0 .../src/frame/cassandra.rs | 0 .../src/frame/kafka.rs | 0 {shotover-proxy => shotover}/src/frame/mod.rs | 0 .../src/frame/redis.rs | 0 {shotover-proxy => shotover}/src/lib.rs | 0 .../src/message/mod.rs | 0 .../src/message_value.rs | 0 .../src/observability/mod.rs | 0 {shotover-proxy => shotover}/src/runner.rs | 0 {shotover-proxy => shotover}/src/server.rs | 0 .../src/sources/cassandra.rs | 0 .../src/sources/kafka.rs | 0 .../src/sources/mod.rs | 0 .../src/sources/redis.rs | 0 {shotover-proxy => shotover}/src/tcp.rs | 0 {shotover-proxy => shotover}/src/tls.rs | 0 .../src/tracing_panic_handler.rs | 0 .../src/transforms/cassandra/connection.rs | 0 .../src/transforms/cassandra/mod.rs | 0 .../src/transforms/cassandra/peers_rewrite.rs | 0 .../transforms/cassandra/sink_cluster/mod.rs | 0 .../transforms/cassandra/sink_cluster/node.rs | 0 .../cassandra/sink_cluster/node_pool.rs | 0 .../cassandra/sink_cluster/routing_key.rs | 0 .../sink_cluster/test_cluster_data.json | 0 .../cassandra/sink_cluster/test_router.rs | 0 .../cassandra/sink_cluster/token_map.rs | 0 .../cassandra/sink_cluster/topology.rs | 0 .../src/transforms/cassandra/sink_single.rs | 0 .../src/transforms/chain.rs | 0 .../src/transforms/coalesce.rs | 0 .../src/transforms/debug/force_parse.rs | 0 .../src/transforms/debug/mod.rs | 0 .../src/transforms/debug/printer.rs | 0 .../src/transforms/debug/random_delay.rs | 0 .../src/transforms/debug/returner.rs | 0 .../src/transforms/distributed/mod.rs | 0 .../tuneable_consistency_scatter.rs | 0 .../src/transforms/filter.rs | 0 .../src/transforms/kafka/mod.rs | 0 .../src/transforms/kafka/sink_single.rs | 0 .../src/transforms/load_balance.rs | 0 .../src/transforms/loopback.rs | 0 .../src/transforms/mod.rs | 0 .../src/transforms/noop.rs | 0 .../src/transforms/null.rs | 0 .../src/transforms/parallel_map.rs | 0 .../src/transforms/protect/aws_kms.rs | 0 .../src/transforms/protect/crypto.rs | 0 .../src/transforms/protect/key_management.rs | 0 .../src/transforms/protect/local_kek.rs | 0 .../src/transforms/protect/mod.rs | 0 .../src/transforms/protect/pkcs_11.rs | 0 .../src/transforms/query_counter.rs | 0 .../src/transforms/redis/cache.rs | 0 .../transforms/redis/cluster_ports_rewrite.rs | 0 .../src/transforms/redis/mod.rs | 0 .../src/transforms/redis/sink_cluster.rs | 0 .../src/transforms/redis/sink_single.rs | 0 .../src/transforms/redis/timestamp_tagging.rs | 0 .../src/transforms/sampler.rs | 0 .../src/transforms/tee.rs | 0 .../src/transforms/throttling.rs | 0 .../util/cluster_connection_pool.rs | 0 .../src/transforms/util/mod.rs | 0 test-helpers/src/shotover_process.rs | 2 +- 86 files changed, 201 insertions(+), 127 deletions(-) create mode 100644 shotover/Cargo.toml rename {shotover-proxy => shotover}/src/codec/cassandra.rs (100%) rename {shotover-proxy => shotover}/src/codec/kafka.rs (100%) rename {shotover-proxy => shotover}/src/codec/mod.rs (100%) rename {shotover-proxy => shotover}/src/codec/redis.rs (100%) rename {shotover-proxy => shotover}/src/config/chain.rs (100%) rename {shotover-proxy => shotover}/src/config/mod.rs (100%) rename {shotover-proxy => shotover}/src/config/topology.rs (99%) rename {shotover-proxy => shotover}/src/error.rs (100%) rename {shotover-proxy => shotover}/src/frame/cassandra.rs (100%) rename {shotover-proxy => shotover}/src/frame/kafka.rs (100%) rename {shotover-proxy => shotover}/src/frame/mod.rs (100%) rename {shotover-proxy => shotover}/src/frame/redis.rs (100%) rename {shotover-proxy => shotover}/src/lib.rs (100%) rename {shotover-proxy => shotover}/src/message/mod.rs (100%) rename {shotover-proxy => shotover}/src/message_value.rs (100%) rename {shotover-proxy => shotover}/src/observability/mod.rs (100%) rename {shotover-proxy => shotover}/src/runner.rs (100%) rename {shotover-proxy => shotover}/src/server.rs (100%) rename {shotover-proxy => shotover}/src/sources/cassandra.rs (100%) rename {shotover-proxy => shotover}/src/sources/kafka.rs (100%) rename {shotover-proxy => shotover}/src/sources/mod.rs (100%) rename {shotover-proxy => shotover}/src/sources/redis.rs (100%) rename {shotover-proxy => shotover}/src/tcp.rs (100%) rename {shotover-proxy => shotover}/src/tls.rs (100%) rename {shotover-proxy => shotover}/src/tracing_panic_handler.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/connection.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/peers_rewrite.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/node.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/node_pool.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/routing_key.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/test_cluster_data.json (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/test_router.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/token_map.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_cluster/topology.rs (100%) rename {shotover-proxy => shotover}/src/transforms/cassandra/sink_single.rs (100%) rename {shotover-proxy => shotover}/src/transforms/chain.rs (100%) rename {shotover-proxy => shotover}/src/transforms/coalesce.rs (100%) rename {shotover-proxy => shotover}/src/transforms/debug/force_parse.rs (100%) rename {shotover-proxy => shotover}/src/transforms/debug/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/debug/printer.rs (100%) rename {shotover-proxy => shotover}/src/transforms/debug/random_delay.rs (100%) rename {shotover-proxy => shotover}/src/transforms/debug/returner.rs (100%) rename {shotover-proxy => shotover}/src/transforms/distributed/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/distributed/tuneable_consistency_scatter.rs (100%) rename {shotover-proxy => shotover}/src/transforms/filter.rs (100%) rename {shotover-proxy => shotover}/src/transforms/kafka/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/kafka/sink_single.rs (100%) rename {shotover-proxy => shotover}/src/transforms/load_balance.rs (100%) rename {shotover-proxy => shotover}/src/transforms/loopback.rs (100%) rename {shotover-proxy => shotover}/src/transforms/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/noop.rs (100%) rename {shotover-proxy => shotover}/src/transforms/null.rs (100%) rename {shotover-proxy => shotover}/src/transforms/parallel_map.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/aws_kms.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/crypto.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/key_management.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/local_kek.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/protect/pkcs_11.rs (100%) rename {shotover-proxy => shotover}/src/transforms/query_counter.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/cache.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/cluster_ports_rewrite.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/mod.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/sink_cluster.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/sink_single.rs (100%) rename {shotover-proxy => shotover}/src/transforms/redis/timestamp_tagging.rs (100%) rename {shotover-proxy => shotover}/src/transforms/sampler.rs (100%) rename {shotover-proxy => shotover}/src/transforms/tee.rs (100%) rename {shotover-proxy => shotover}/src/transforms/throttling.rs (100%) rename {shotover-proxy => shotover}/src/transforms/util/cluster_connection_pool.rs (100%) rename {shotover-proxy => shotover}/src/transforms/util/mod.rs (100%) diff --git a/Cargo.lock b/Cargo.lock index a494e5308..0d2994051 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3054,7 +3054,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] -name = "shotover-proxy" +name = "shotover" version = "0.1.9" dependencies = [ "anyhow", @@ -3067,14 +3067,11 @@ dependencies = [ "bytes", "bytes-utils", "cached", - "cassandra-cpp", "cassandra-protocol", - "cdrs-tokio", "chacha20poly1305", "clap 4.1.11", "cql3-parser", "crc16", - "criterion", "csv", "derivative", "dyn-clone", @@ -3089,7 +3086,6 @@ dependencies = [ "kafka-protocol", "metrics", "metrics-exporter-prometheus", - "nix", "nonzero_ext", "num", "openssl", @@ -3097,19 +3093,14 @@ dependencies = [ "pretty-hex", "rand", "rand_distr", - "rdkafka", - "redis", "redis-protocol", - "rstest", "rusoto_kms", "rusoto_signature", "serde", "serde_json", "serde_yaml", - "serial_test", "split-iter", "strum_macros 0.24.3", - "test-helpers", "thiserror", "tokio", "tokio-openssl", @@ -3123,6 +3114,41 @@ dependencies = [ "version-compare", ] +[[package]] +name = "shotover-proxy" +version = "0.1.9" +dependencies = [ + "anyhow", + "bincode", + "bytes", + "cassandra-cpp", + "cassandra-protocol", + "cdrs-tokio", + "chacha20poly1305", + "clap 4.1.11", + "criterion", + "csv", + "futures", + "hex", + "hex-literal", + "itertools", + "nix", + "rand", + "rand_distr", + "rdkafka", + "redis", + "redis-protocol", + "rstest", + "serde", + "serial_test", + "shotover", + "test-helpers", + "tokio", + "tokio-util", + "tracing", + "uuid", +] + [[package]] name = "signal-hook-registry" version = "1.4.1" diff --git a/Cargo.toml b/Cargo.toml index 78757d5a3..66a28848a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,6 @@ [workspace] members = [ + "shotover", "shotover-proxy", "test-helpers", "tokio-bin-process", @@ -16,8 +17,9 @@ codegen-units = 1 [workspace.dependencies] bytes = "1.0.0" -tokio-openssl = "0.6.2" tokio = { version = "1.25.0", features = ["full", "macros"] } +tokio-util = { version = "0.7.7" } +tokio-openssl = "0.6.2" itertools = "0.10.1" openssl = { version = "0.10.36", features = ["vendored"] } anyhow = "1.0.42" @@ -34,3 +36,13 @@ nix = "0.26.0" serde_json = "1.0" rcgen = "0.10.0" subprocess = "0.2.7" +chacha20poly1305 = { version = "0.10.0", features = ["std"] } +csv = "1.2.0" +redis-protocol = { version = "4.0.1", features = ["decode-mut"] } +bincode = "1.3.1" +futures = "0.3" +hex = "0.4.3" +hex-literal = "0.3.3" +rand = "0.8.4" +rand_distr = "0.4.1" +clap = { version = "4.0.4", features = ["cargo", "derive"] } diff --git a/shotover-proxy/Cargo.toml b/shotover-proxy/Cargo.toml index 8c81a8061..4e420f271 100644 --- a/shotover-proxy/Cargo.toml +++ b/shotover-proxy/Cargo.toml @@ -3,94 +3,48 @@ name = "shotover-proxy" version = "0.1.9" authors = ["Ben "] edition = "2021" -rust-version = "1.56" license = "Apache-2.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html -[features] -# Include WIP alpha transforms in the public API -alpha-transforms = [] -cassandra-cpp-driver-tests = ["test-helpers/cassandra-cpp-driver-tests"] - [dependencies] -pretty-hex = "0.3.0" -hex = "0.4.3" -tokio.workspace = true -tokio-util = { version = "0.7.7" } -tokio-stream = "0.1.2" -bytes.workspace = true -bytes-utils = "0.1.1" -futures = "0.3" -async-trait = "0.1.30" -clap = { version = "4.0.4", features = ["cargo", "derive"] } -derivative = "2.1.1" -itertools.workspace = true -rand = { version = "0.8.4", features = ["small_rng"] } -rand_distr = "0.4.1" -cached = "0.42" -tokio-openssl.workspace = true -openssl.workspace = true -async-recursion = "1.0" -governor = { version = "0.5.0", default-features = false, features = ["std", "jitter", "quanta"] } -nonzero_ext = "0.3.0" -version-compare = "0.1" -split-iter = "0.1.0" - -# Error handling -thiserror = "1.0" anyhow.workspace = true -backtrace = "0.3.66" - -# Parsers -cql3-parser = "0.3.2" -serde.workspace = true -serde_json.workspace = true -serde_yaml.workspace = true -bincode = "1.3.1" -num = { version = "0.4.0", features = ["serde"] } -uuid.workspace = true -bigdecimal = {version ="0.3.0", features = ["serde"] } -base64 = "0.21.0" - -#Observability -metrics = "0.20.0" -metrics-exporter-prometheus = "0.11.0" +tokio.workspace = true +clap.workspace = true +shotover = { path = "../shotover" } tracing.workspace = true -tracing-subscriber.workspace = true -tracing-appender = "0.2.0" -hyper = { version = "0.14.14", features = ["server"] } -halfbrown = "0.1.11" - -# Transform dependencies -redis-protocol = { version = "4.0.1", features = ["decode-mut"] } -cassandra-protocol.workspace = true -crc16 = "0.4.0" -ordered-float = { version = "3.0.0", features = ["serde"] } - -#Crypto -rusoto_kms = "0.48.0" -rusoto_signature = "0.48.0" -csv = "1.2.0" -strum_macros = "0.24" -chacha20poly1305 = { version = "0.10.0", features = ["std"] } -generic-array = { version = "0.14", features = ["serde"] } -dyn-clone = "1.0.10" -kafka-protocol = "0.6.0" -typetag = "0.2.5" [dev-dependencies] criterion = { git = "https://github.com/shotover/criterion.rs", branch = "0.4.0-bench_with_input_fn", features = ["async_tokio"] } -redis.workspace = true serial_test = "1.0.0" +rstest = "0.17.0" cassandra-cpp = { version = "2.0.0" } test-helpers = { path = "../test-helpers", features = ["cassandra-cpp-driver-tests"] } -hex-literal = "0.3.3" +rdkafka = { version = "0.29", features = ["cmake-build"] } +redis.workspace = true +chacha20poly1305.workspace = true +serde.workspace = true +csv.workspace = true +uuid.workspace = true +itertools.workspace = true nix.workspace = true cdrs-tokio.workspace = true -rstest = "0.17.0" -rdkafka = { version = "0.29", features = ["cmake-build"] } +redis-protocol.workspace = true +tokio-util.workspace = true +bincode.workspace = true +futures.workspace = true +hex.workspace = true +hex-literal.workspace = true +cassandra-protocol.workspace = true +bytes.workspace = true +rand.workspace = true +rand_distr.workspace = true [[bench]] name = "benches" harness = false + +[features] +# Include WIP alpha transforms in the public API +alpha-transforms = ["shotover/alpha-transforms"] +cassandra-cpp-driver-tests = ["test-helpers/cassandra-cpp-driver-tests"] diff --git a/shotover-proxy/benches/benches/chain.rs b/shotover-proxy/benches/benches/chain.rs index 23019ab66..765bf4fe3 100644 --- a/shotover-proxy/benches/benches/chain.rs +++ b/shotover-proxy/benches/benches/chain.rs @@ -3,21 +3,21 @@ use cassandra_protocol::compression::Compression; use cassandra_protocol::{consistency::Consistency, frame::Version, query::QueryParams}; use criterion::{criterion_group, BatchSize, Criterion}; use hex_literal::hex; -use shotover_proxy::frame::cassandra::{parse_statement_single, Tracing}; -use shotover_proxy::frame::RedisFrame; -use shotover_proxy::frame::{CassandraFrame, CassandraOperation, Frame}; -use shotover_proxy::message::{Message, ProtocolType, QueryType}; -use shotover_proxy::transforms::cassandra::peers_rewrite::CassandraPeersRewrite; -use shotover_proxy::transforms::chain::{TransformChain, TransformChainBuilder}; -use shotover_proxy::transforms::debug::returner::{DebugReturner, Response}; -use shotover_proxy::transforms::filter::QueryTypeFilter; -use shotover_proxy::transforms::null::NullSink; +use shotover::frame::cassandra::{parse_statement_single, Tracing}; +use shotover::frame::RedisFrame; +use shotover::frame::{CassandraFrame, CassandraOperation, Frame}; +use shotover::message::{Message, ProtocolType, QueryType}; +use shotover::transforms::cassandra::peers_rewrite::CassandraPeersRewrite; +use shotover::transforms::chain::{TransformChain, TransformChainBuilder}; +use shotover::transforms::debug::returner::{DebugReturner, Response}; +use shotover::transforms::filter::QueryTypeFilter; +use shotover::transforms::null::NullSink; #[cfg(feature = "alpha-transforms")] -use shotover_proxy::transforms::protect::{KeyManagerConfig, ProtectConfig}; -use shotover_proxy::transforms::redis::cluster_ports_rewrite::RedisClusterPortsRewrite; -use shotover_proxy::transforms::redis::timestamp_tagging::RedisTimestampTagger; -use shotover_proxy::transforms::throttling::RequestThrottlingConfig; -use shotover_proxy::transforms::{TransformConfig, Wrapper}; +use shotover::transforms::protect::{KeyManagerConfig, ProtectConfig}; +use shotover::transforms::redis::cluster_ports_rewrite::RedisClusterPortsRewrite; +use shotover::transforms::redis::timestamp_tagging::RedisTimestampTagger; +use shotover::transforms::throttling::RequestThrottlingConfig; +use shotover::transforms::{TransformConfig, Wrapper}; fn criterion_benchmark(c: &mut Criterion) { let rt = tokio::runtime::Runtime::new().unwrap(); diff --git a/shotover-proxy/benches/benches/codec.rs b/shotover-proxy/benches/benches/codec.rs index 4d453040c..f0a6acd33 100644 --- a/shotover-proxy/benches/benches/codec.rs +++ b/shotover-proxy/benches/benches/codec.rs @@ -4,12 +4,12 @@ use cassandra_protocol::frame::message_result::{ }; use cassandra_protocol::frame::Version; use criterion::{black_box, criterion_group, BatchSize, Criterion}; -use shotover_proxy::codec::cassandra::CassandraCodecBuilder; -use shotover_proxy::codec::{CodecBuilder, Direction}; -use shotover_proxy::frame::cassandra::{parse_statement_single, Tracing}; -use shotover_proxy::frame::{CassandraFrame, CassandraOperation, CassandraResult, Frame}; -use shotover_proxy::message::Message; -use shotover_proxy::message_value::{IntSize, MessageValue}; +use shotover::codec::cassandra::CassandraCodecBuilder; +use shotover::codec::{CodecBuilder, Direction}; +use shotover::frame::cassandra::{parse_statement_single, Tracing}; +use shotover::frame::{CassandraFrame, CassandraOperation, CassandraResult, Frame}; +use shotover::message::Message; +use shotover::message_value::{IntSize, MessageValue}; use tokio_util::codec::Encoder; fn criterion_benchmark(c: &mut Criterion) { diff --git a/shotover-proxy/src/main.rs b/shotover-proxy/src/main.rs index 83c4c38cc..ece9611c6 100644 --- a/shotover-proxy/src/main.rs +++ b/shotover-proxy/src/main.rs @@ -3,7 +3,7 @@ use anyhow::{Context, Result}; use clap::Parser; -use shotover_proxy::runner::{ConfigOpts, Runner, TracingState}; +use shotover::runner::{ConfigOpts, Runner, TracingState}; use tokio::runtime::Runtime; fn main() -> Result<()> { diff --git a/shotover-proxy/tests/cassandra_int_tests/cluster/mod.rs b/shotover-proxy/tests/cassandra_int_tests/cluster/mod.rs index 2efcd2d28..246d6bb3a 100644 --- a/shotover-proxy/tests/cassandra_int_tests/cluster/mod.rs +++ b/shotover-proxy/tests/cassandra_int_tests/cluster/mod.rs @@ -1,9 +1,9 @@ use cassandra_protocol::frame::message_startup::BodyReqStartup; use cassandra_protocol::frame::Version; -use shotover_proxy::frame::{cassandra::Tracing, CassandraFrame, CassandraOperation, Frame}; -use shotover_proxy::message::Message; -use shotover_proxy::tls::{TlsConnector, TlsConnectorConfig}; -use shotover_proxy::transforms::cassandra::sink_cluster::{ +use shotover::frame::{cassandra::Tracing, CassandraFrame, CassandraOperation, Frame}; +use shotover::message::Message; +use shotover::tls::{TlsConnector, TlsConnectorConfig}; +use shotover::transforms::cassandra::sink_cluster::{ node::{CassandraNode, ConnectionFactory}, topology::{create_topology_task, TaskConnectionInfo}, }; diff --git a/shotover-proxy/tests/cassandra_int_tests/mod.rs b/shotover-proxy/tests/cassandra_int_tests/mod.rs index 23b3b664e..378b05542 100644 --- a/shotover-proxy/tests/cassandra_int_tests/mod.rs +++ b/shotover-proxy/tests/cassandra_int_tests/mod.rs @@ -222,7 +222,7 @@ async fn cluster_single_rack_v4(#[case] driver: CassandraDriver) { .shutdown_and_then_consume_events(&[ EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::server") + .with_target("shotover::server") .with_message( r#"connection was unexpectedly terminated @@ -235,7 +235,7 @@ Caused by: .with_count(Count::Any), EventMatcher::new() .with_level(Level::Warn) - .with_target("shotover_proxy::transforms::cassandra::sink_cluster") + .with_target("shotover::transforms::cassandra::sink_cluster") .with_message( r#"A successful connection to a control node was made but attempts to connect to these nodes failed first: * 172.16.1.3:9044: diff --git a/shotover-proxy/tests/redis_int_tests/basic_driver_tests.rs b/shotover-proxy/tests/redis_int_tests/basic_driver_tests.rs index 73785e1db..c96bb5206 100644 --- a/shotover-proxy/tests/redis_int_tests/basic_driver_tests.rs +++ b/shotover-proxy/tests/redis_int_tests/basic_driver_tests.rs @@ -6,8 +6,8 @@ use rand_distr::Alphanumeric; use redis::aio::Connection; use redis::cluster::ClusterConnection; use redis::{AsyncCommands, Commands, ErrorKind, RedisError, Value}; -use shotover_proxy::frame::RedisFrame; -use shotover_proxy::tcp; +use shotover::frame::RedisFrame; +use shotover::tcp; use std::collections::{HashMap, HashSet}; use std::thread::sleep; use std::time::Duration; diff --git a/shotover-proxy/tests/redis_int_tests/mod.rs b/shotover-proxy/tests/redis_int_tests/mod.rs index 969742840..73fb1aaa9 100644 --- a/shotover-proxy/tests/redis_int_tests/mod.rs +++ b/shotover-proxy/tests/redis_int_tests/mod.rs @@ -16,7 +16,7 @@ pub mod basic_driver_tests; fn invalid_frame_event() -> EventMatcher { EventMatcher::new() .with_level(Level::Warn) - .with_target("shotover_proxy::server") + .with_target("shotover::server") .with_message( r#"failed to decode message: Error decoding redis frame @@ -63,7 +63,7 @@ async fn passthrough_redis_down() { .shutdown_and_then_consume_events(&[ EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::server") + .with_target("shotover::server") .with_message( r#"connection was unexpectedly terminated @@ -175,7 +175,7 @@ async fn multi() { shotover .shutdown_and_then_consume_events(&[EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::transforms::chain") + .with_target("shotover::transforms::chain") .with_message( r#"Internal error in buffered chain: RedisTimestampTagger transform failed @@ -205,11 +205,11 @@ async fn cluster_auth() { .shutdown_and_then_consume_events(&[ EventMatcher::new() .with_level(Level::Warn) - .with_target("shotover_proxy::transforms::redis::sink_cluster") + .with_target("shotover::transforms::redis::sink_cluster") .with_message("failed to build connections: Upstream(BadCredentials)"), EventMatcher::new() .with_level(Level::Warn) - .with_target("shotover_proxy::transforms::redis::sink_cluster") + .with_target("shotover::transforms::redis::sink_cluster") .with_message("failed to build connections: Upstream(NotAuthorized)"), ]) .await; @@ -342,7 +342,7 @@ async fn cluster_dr() { shotover .shutdown_and_then_consume_events(&[EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::transforms::filter") + .with_target("shotover::transforms::filter") .with_message("The current filter transform implementation does not obey the current transform invariants. see https://github.com/shotover/shotover-proxy/issues/499") ]) .await; diff --git a/shotover-proxy/tests/runner/runner_int_tests.rs b/shotover-proxy/tests/runner/runner_int_tests.rs index ba6f59a84..9ad027254 100644 --- a/shotover-proxy/tests/runner/runner_int_tests.rs +++ b/shotover-proxy/tests/runner/runner_int_tests.rs @@ -26,7 +26,7 @@ async fn test_shotover_responds_sigterm() { events.contains( &EventMatcher::new() .with_level(Level::Info) - .with_target("shotover_proxy::runner") + .with_target("shotover::runner") .with_message("received SIGTERM"), ); } @@ -45,7 +45,7 @@ async fn test_shotover_responds_sigint() { events.contains( &EventMatcher::new() .with_level(Level::Info) - .with_target("shotover_proxy::runner") + .with_target("shotover::runner") .with_message("received SIGINT"), ); } @@ -58,7 +58,7 @@ async fn test_shotover_shutdown_when_invalid_topology_non_terminating_last() { ) .assert_fails_to_start(&[EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::runner") + .with_target("shotover::runner") .with_message( "Topology errors redis_chain: @@ -76,7 +76,7 @@ async fn test_shotover_shutdown_when_invalid_topology_terminating_not_last() { ) .assert_fails_to_start(&[EventMatcher::new() .with_level(Level::Error) - .with_target("shotover_proxy::runner") + .with_target("shotover::runner") .with_message("Topology errors redis_chain: Terminating transform \"NullSink\" is not last in chain. Terminating transform must be last in chain. @@ -92,7 +92,7 @@ async fn test_shotover_shutdown_when_topology_invalid_topology_subchains() { ).assert_fails_to_start( &[ EventMatcher::new().with_level(Level::Error) - .with_target("shotover_proxy::runner") + .with_target("shotover::runner") .with_message(r#"Topology errors a_first_chain: Terminating transform "NullSink" is not last in chain. Terminating transform must be last in chain. @@ -111,7 +111,7 @@ b_second_chain: Terminating transform "NullSink" is not last in chain. Terminating transform must be last in chain. "#), EventMatcher::new().with_level(Level::Warn) - .with_target("shotover_proxy::transforms::distributed::tuneable_consistency_scatter") + .with_target("shotover::transforms::distributed::tuneable_consistency_scatter") .with_message("Using this transform is considered unstable - Does not work with REDIS pipelines") .with_count(Count::Times(2)), // TODO: Investigate these @@ -119,7 +119,7 @@ b_second_chain: .with_message("failed response Couldn't send message to wrapped chain SendError(BufferedChainMessages { local_addr: 127.0.0.1:10000, messages: [], flush: true, return_chan: Some(Sender { inner: Some(Inner { state: State { is_complete: false, is_closed: false, is_rx_task_set: false, is_tx_task_set: false } }) }) })") .with_count(Count::Any), EventMatcher::new().with_level(Level::Error) - .with_target("shotover_proxy::transforms::distributed::tuneable_consistency_scatter") + .with_target("shotover::transforms::distributed::tuneable_consistency_scatter") .with_message("failed response channel closed") .with_count(Count::Any), ], diff --git a/shotover/Cargo.toml b/shotover/Cargo.toml new file mode 100644 index 000000000..5c799b2e5 --- /dev/null +++ b/shotover/Cargo.toml @@ -0,0 +1,80 @@ +[package] +name = "shotover" +version = "0.1.9" +authors = ["Ben "] +edition = "2021" +rust-version = "1.56" +license = "Apache-2.0" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[features] +# Include WIP alpha transforms in the public API +alpha-transforms = [] + +[dependencies] +pretty-hex = "0.3.0" +tokio-stream = "0.1.2" +bytes-utils = "0.1.1" +async-trait = "0.1.30" +derivative = "2.1.1" +cached = "0.42" +async-recursion = "1.0" +governor = { version = "0.5.0", default-features = false, features = ["std", "jitter", "quanta"] } +nonzero_ext = "0.3.0" +version-compare = "0.1" +split-iter = "0.1.0" +rand = { features = ["small_rng"], workspace = true } +clap.workspace = true +itertools.workspace = true +rand_distr.workspace = true +bytes.workspace = true +futures.workspace = true +tokio.workspace = true +tokio-util.workspace = true +tokio-openssl.workspace = true +openssl.workspace = true +csv.workspace = true +hex.workspace = true +hex-literal.workspace = true + +# Error handling +thiserror = "1.0" +anyhow.workspace = true +backtrace = "0.3.66" + +# Parsers +cql3-parser = "0.3.2" +serde.workspace = true +serde_json.workspace = true +serde_yaml.workspace = true +bincode.workspace = true +num = { version = "0.4.0", features = ["serde"] } +uuid.workspace = true +bigdecimal = {version ="0.3.0", features = ["serde"] } +base64 = "0.21.0" + +#Observability +metrics = "0.20.0" +metrics-exporter-prometheus = "0.11.0" +tracing.workspace = true +tracing-subscriber.workspace = true +tracing-appender = "0.2.0" +hyper = { version = "0.14.14", features = ["server"] } +halfbrown = "0.1.11" + +# Transform dependencies +redis-protocol.workspace = true +cassandra-protocol.workspace = true +crc16 = "0.4.0" +ordered-float = { version = "3.0.0", features = ["serde"] } + +#Crypto +rusoto_kms = "0.48.0" +rusoto_signature = "0.48.0" +strum_macros = "0.24" +chacha20poly1305 = { version = "0.10.0", features = ["std"] } +generic-array = { version = "0.14", features = ["serde"] } +dyn-clone = "1.0.10" +kafka-protocol = "0.6.0" +typetag = "0.2.5" diff --git a/shotover-proxy/src/codec/cassandra.rs b/shotover/src/codec/cassandra.rs similarity index 100% rename from shotover-proxy/src/codec/cassandra.rs rename to shotover/src/codec/cassandra.rs diff --git a/shotover-proxy/src/codec/kafka.rs b/shotover/src/codec/kafka.rs similarity index 100% rename from shotover-proxy/src/codec/kafka.rs rename to shotover/src/codec/kafka.rs diff --git a/shotover-proxy/src/codec/mod.rs b/shotover/src/codec/mod.rs similarity index 100% rename from shotover-proxy/src/codec/mod.rs rename to shotover/src/codec/mod.rs diff --git a/shotover-proxy/src/codec/redis.rs b/shotover/src/codec/redis.rs similarity index 100% rename from shotover-proxy/src/codec/redis.rs rename to shotover/src/codec/redis.rs diff --git a/shotover-proxy/src/config/chain.rs b/shotover/src/config/chain.rs similarity index 100% rename from shotover-proxy/src/config/chain.rs rename to shotover/src/config/chain.rs diff --git a/shotover-proxy/src/config/mod.rs b/shotover/src/config/mod.rs similarity index 100% rename from shotover-proxy/src/config/mod.rs rename to shotover/src/config/mod.rs diff --git a/shotover-proxy/src/config/topology.rs b/shotover/src/config/topology.rs similarity index 99% rename from shotover-proxy/src/config/topology.rs rename to shotover/src/config/topology.rs index 9acc498ce..d42b271c9 100644 --- a/shotover-proxy/src/config/topology.rs +++ b/shotover/src/config/topology.rs @@ -507,7 +507,9 @@ redis_chain: async fn test_validate_chain_multiple_subchains() { let (_sender, trigger_shutdown_rx) = watch::channel::(false); - let topology = Topology::from_file("tests/test-configs/invalid_subchains.yaml").unwrap(); + let topology = + Topology::from_file("../shotover-proxy/tests/test-configs/invalid_subchains.yaml") + .unwrap(); let error = topology .run_chains(trigger_shutdown_rx) .await diff --git a/shotover-proxy/src/error.rs b/shotover/src/error.rs similarity index 100% rename from shotover-proxy/src/error.rs rename to shotover/src/error.rs diff --git a/shotover-proxy/src/frame/cassandra.rs b/shotover/src/frame/cassandra.rs similarity index 100% rename from shotover-proxy/src/frame/cassandra.rs rename to shotover/src/frame/cassandra.rs diff --git a/shotover-proxy/src/frame/kafka.rs b/shotover/src/frame/kafka.rs similarity index 100% rename from shotover-proxy/src/frame/kafka.rs rename to shotover/src/frame/kafka.rs diff --git a/shotover-proxy/src/frame/mod.rs b/shotover/src/frame/mod.rs similarity index 100% rename from shotover-proxy/src/frame/mod.rs rename to shotover/src/frame/mod.rs diff --git a/shotover-proxy/src/frame/redis.rs b/shotover/src/frame/redis.rs similarity index 100% rename from shotover-proxy/src/frame/redis.rs rename to shotover/src/frame/redis.rs diff --git a/shotover-proxy/src/lib.rs b/shotover/src/lib.rs similarity index 100% rename from shotover-proxy/src/lib.rs rename to shotover/src/lib.rs diff --git a/shotover-proxy/src/message/mod.rs b/shotover/src/message/mod.rs similarity index 100% rename from shotover-proxy/src/message/mod.rs rename to shotover/src/message/mod.rs diff --git a/shotover-proxy/src/message_value.rs b/shotover/src/message_value.rs similarity index 100% rename from shotover-proxy/src/message_value.rs rename to shotover/src/message_value.rs diff --git a/shotover-proxy/src/observability/mod.rs b/shotover/src/observability/mod.rs similarity index 100% rename from shotover-proxy/src/observability/mod.rs rename to shotover/src/observability/mod.rs diff --git a/shotover-proxy/src/runner.rs b/shotover/src/runner.rs similarity index 100% rename from shotover-proxy/src/runner.rs rename to shotover/src/runner.rs diff --git a/shotover-proxy/src/server.rs b/shotover/src/server.rs similarity index 100% rename from shotover-proxy/src/server.rs rename to shotover/src/server.rs diff --git a/shotover-proxy/src/sources/cassandra.rs b/shotover/src/sources/cassandra.rs similarity index 100% rename from shotover-proxy/src/sources/cassandra.rs rename to shotover/src/sources/cassandra.rs diff --git a/shotover-proxy/src/sources/kafka.rs b/shotover/src/sources/kafka.rs similarity index 100% rename from shotover-proxy/src/sources/kafka.rs rename to shotover/src/sources/kafka.rs diff --git a/shotover-proxy/src/sources/mod.rs b/shotover/src/sources/mod.rs similarity index 100% rename from shotover-proxy/src/sources/mod.rs rename to shotover/src/sources/mod.rs diff --git a/shotover-proxy/src/sources/redis.rs b/shotover/src/sources/redis.rs similarity index 100% rename from shotover-proxy/src/sources/redis.rs rename to shotover/src/sources/redis.rs diff --git a/shotover-proxy/src/tcp.rs b/shotover/src/tcp.rs similarity index 100% rename from shotover-proxy/src/tcp.rs rename to shotover/src/tcp.rs diff --git a/shotover-proxy/src/tls.rs b/shotover/src/tls.rs similarity index 100% rename from shotover-proxy/src/tls.rs rename to shotover/src/tls.rs diff --git a/shotover-proxy/src/tracing_panic_handler.rs b/shotover/src/tracing_panic_handler.rs similarity index 100% rename from shotover-proxy/src/tracing_panic_handler.rs rename to shotover/src/tracing_panic_handler.rs diff --git a/shotover-proxy/src/transforms/cassandra/connection.rs b/shotover/src/transforms/cassandra/connection.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/connection.rs rename to shotover/src/transforms/cassandra/connection.rs diff --git a/shotover-proxy/src/transforms/cassandra/mod.rs b/shotover/src/transforms/cassandra/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/mod.rs rename to shotover/src/transforms/cassandra/mod.rs diff --git a/shotover-proxy/src/transforms/cassandra/peers_rewrite.rs b/shotover/src/transforms/cassandra/peers_rewrite.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/peers_rewrite.rs rename to shotover/src/transforms/cassandra/peers_rewrite.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/mod.rs b/shotover/src/transforms/cassandra/sink_cluster/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/mod.rs rename to shotover/src/transforms/cassandra/sink_cluster/mod.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/node.rs b/shotover/src/transforms/cassandra/sink_cluster/node.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/node.rs rename to shotover/src/transforms/cassandra/sink_cluster/node.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/node_pool.rs b/shotover/src/transforms/cassandra/sink_cluster/node_pool.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/node_pool.rs rename to shotover/src/transforms/cassandra/sink_cluster/node_pool.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/routing_key.rs b/shotover/src/transforms/cassandra/sink_cluster/routing_key.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/routing_key.rs rename to shotover/src/transforms/cassandra/sink_cluster/routing_key.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/test_cluster_data.json b/shotover/src/transforms/cassandra/sink_cluster/test_cluster_data.json similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/test_cluster_data.json rename to shotover/src/transforms/cassandra/sink_cluster/test_cluster_data.json diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/test_router.rs b/shotover/src/transforms/cassandra/sink_cluster/test_router.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/test_router.rs rename to shotover/src/transforms/cassandra/sink_cluster/test_router.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/token_map.rs b/shotover/src/transforms/cassandra/sink_cluster/token_map.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/token_map.rs rename to shotover/src/transforms/cassandra/sink_cluster/token_map.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_cluster/topology.rs b/shotover/src/transforms/cassandra/sink_cluster/topology.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_cluster/topology.rs rename to shotover/src/transforms/cassandra/sink_cluster/topology.rs diff --git a/shotover-proxy/src/transforms/cassandra/sink_single.rs b/shotover/src/transforms/cassandra/sink_single.rs similarity index 100% rename from shotover-proxy/src/transforms/cassandra/sink_single.rs rename to shotover/src/transforms/cassandra/sink_single.rs diff --git a/shotover-proxy/src/transforms/chain.rs b/shotover/src/transforms/chain.rs similarity index 100% rename from shotover-proxy/src/transforms/chain.rs rename to shotover/src/transforms/chain.rs diff --git a/shotover-proxy/src/transforms/coalesce.rs b/shotover/src/transforms/coalesce.rs similarity index 100% rename from shotover-proxy/src/transforms/coalesce.rs rename to shotover/src/transforms/coalesce.rs diff --git a/shotover-proxy/src/transforms/debug/force_parse.rs b/shotover/src/transforms/debug/force_parse.rs similarity index 100% rename from shotover-proxy/src/transforms/debug/force_parse.rs rename to shotover/src/transforms/debug/force_parse.rs diff --git a/shotover-proxy/src/transforms/debug/mod.rs b/shotover/src/transforms/debug/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/debug/mod.rs rename to shotover/src/transforms/debug/mod.rs diff --git a/shotover-proxy/src/transforms/debug/printer.rs b/shotover/src/transforms/debug/printer.rs similarity index 100% rename from shotover-proxy/src/transforms/debug/printer.rs rename to shotover/src/transforms/debug/printer.rs diff --git a/shotover-proxy/src/transforms/debug/random_delay.rs b/shotover/src/transforms/debug/random_delay.rs similarity index 100% rename from shotover-proxy/src/transforms/debug/random_delay.rs rename to shotover/src/transforms/debug/random_delay.rs diff --git a/shotover-proxy/src/transforms/debug/returner.rs b/shotover/src/transforms/debug/returner.rs similarity index 100% rename from shotover-proxy/src/transforms/debug/returner.rs rename to shotover/src/transforms/debug/returner.rs diff --git a/shotover-proxy/src/transforms/distributed/mod.rs b/shotover/src/transforms/distributed/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/distributed/mod.rs rename to shotover/src/transforms/distributed/mod.rs diff --git a/shotover-proxy/src/transforms/distributed/tuneable_consistency_scatter.rs b/shotover/src/transforms/distributed/tuneable_consistency_scatter.rs similarity index 100% rename from shotover-proxy/src/transforms/distributed/tuneable_consistency_scatter.rs rename to shotover/src/transforms/distributed/tuneable_consistency_scatter.rs diff --git a/shotover-proxy/src/transforms/filter.rs b/shotover/src/transforms/filter.rs similarity index 100% rename from shotover-proxy/src/transforms/filter.rs rename to shotover/src/transforms/filter.rs diff --git a/shotover-proxy/src/transforms/kafka/mod.rs b/shotover/src/transforms/kafka/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/kafka/mod.rs rename to shotover/src/transforms/kafka/mod.rs diff --git a/shotover-proxy/src/transforms/kafka/sink_single.rs b/shotover/src/transforms/kafka/sink_single.rs similarity index 100% rename from shotover-proxy/src/transforms/kafka/sink_single.rs rename to shotover/src/transforms/kafka/sink_single.rs diff --git a/shotover-proxy/src/transforms/load_balance.rs b/shotover/src/transforms/load_balance.rs similarity index 100% rename from shotover-proxy/src/transforms/load_balance.rs rename to shotover/src/transforms/load_balance.rs diff --git a/shotover-proxy/src/transforms/loopback.rs b/shotover/src/transforms/loopback.rs similarity index 100% rename from shotover-proxy/src/transforms/loopback.rs rename to shotover/src/transforms/loopback.rs diff --git a/shotover-proxy/src/transforms/mod.rs b/shotover/src/transforms/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/mod.rs rename to shotover/src/transforms/mod.rs diff --git a/shotover-proxy/src/transforms/noop.rs b/shotover/src/transforms/noop.rs similarity index 100% rename from shotover-proxy/src/transforms/noop.rs rename to shotover/src/transforms/noop.rs diff --git a/shotover-proxy/src/transforms/null.rs b/shotover/src/transforms/null.rs similarity index 100% rename from shotover-proxy/src/transforms/null.rs rename to shotover/src/transforms/null.rs diff --git a/shotover-proxy/src/transforms/parallel_map.rs b/shotover/src/transforms/parallel_map.rs similarity index 100% rename from shotover-proxy/src/transforms/parallel_map.rs rename to shotover/src/transforms/parallel_map.rs diff --git a/shotover-proxy/src/transforms/protect/aws_kms.rs b/shotover/src/transforms/protect/aws_kms.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/aws_kms.rs rename to shotover/src/transforms/protect/aws_kms.rs diff --git a/shotover-proxy/src/transforms/protect/crypto.rs b/shotover/src/transforms/protect/crypto.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/crypto.rs rename to shotover/src/transforms/protect/crypto.rs diff --git a/shotover-proxy/src/transforms/protect/key_management.rs b/shotover/src/transforms/protect/key_management.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/key_management.rs rename to shotover/src/transforms/protect/key_management.rs diff --git a/shotover-proxy/src/transforms/protect/local_kek.rs b/shotover/src/transforms/protect/local_kek.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/local_kek.rs rename to shotover/src/transforms/protect/local_kek.rs diff --git a/shotover-proxy/src/transforms/protect/mod.rs b/shotover/src/transforms/protect/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/mod.rs rename to shotover/src/transforms/protect/mod.rs diff --git a/shotover-proxy/src/transforms/protect/pkcs_11.rs b/shotover/src/transforms/protect/pkcs_11.rs similarity index 100% rename from shotover-proxy/src/transforms/protect/pkcs_11.rs rename to shotover/src/transforms/protect/pkcs_11.rs diff --git a/shotover-proxy/src/transforms/query_counter.rs b/shotover/src/transforms/query_counter.rs similarity index 100% rename from shotover-proxy/src/transforms/query_counter.rs rename to shotover/src/transforms/query_counter.rs diff --git a/shotover-proxy/src/transforms/redis/cache.rs b/shotover/src/transforms/redis/cache.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/cache.rs rename to shotover/src/transforms/redis/cache.rs diff --git a/shotover-proxy/src/transforms/redis/cluster_ports_rewrite.rs b/shotover/src/transforms/redis/cluster_ports_rewrite.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/cluster_ports_rewrite.rs rename to shotover/src/transforms/redis/cluster_ports_rewrite.rs diff --git a/shotover-proxy/src/transforms/redis/mod.rs b/shotover/src/transforms/redis/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/mod.rs rename to shotover/src/transforms/redis/mod.rs diff --git a/shotover-proxy/src/transforms/redis/sink_cluster.rs b/shotover/src/transforms/redis/sink_cluster.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/sink_cluster.rs rename to shotover/src/transforms/redis/sink_cluster.rs diff --git a/shotover-proxy/src/transforms/redis/sink_single.rs b/shotover/src/transforms/redis/sink_single.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/sink_single.rs rename to shotover/src/transforms/redis/sink_single.rs diff --git a/shotover-proxy/src/transforms/redis/timestamp_tagging.rs b/shotover/src/transforms/redis/timestamp_tagging.rs similarity index 100% rename from shotover-proxy/src/transforms/redis/timestamp_tagging.rs rename to shotover/src/transforms/redis/timestamp_tagging.rs diff --git a/shotover-proxy/src/transforms/sampler.rs b/shotover/src/transforms/sampler.rs similarity index 100% rename from shotover-proxy/src/transforms/sampler.rs rename to shotover/src/transforms/sampler.rs diff --git a/shotover-proxy/src/transforms/tee.rs b/shotover/src/transforms/tee.rs similarity index 100% rename from shotover-proxy/src/transforms/tee.rs rename to shotover/src/transforms/tee.rs diff --git a/shotover-proxy/src/transforms/throttling.rs b/shotover/src/transforms/throttling.rs similarity index 100% rename from shotover-proxy/src/transforms/throttling.rs rename to shotover/src/transforms/throttling.rs diff --git a/shotover-proxy/src/transforms/util/cluster_connection_pool.rs b/shotover/src/transforms/util/cluster_connection_pool.rs similarity index 100% rename from shotover-proxy/src/transforms/util/cluster_connection_pool.rs rename to shotover/src/transforms/util/cluster_connection_pool.rs diff --git a/shotover-proxy/src/transforms/util/mod.rs b/shotover/src/transforms/util/mod.rs similarity index 100% rename from shotover-proxy/src/transforms/util/mod.rs rename to shotover/src/transforms/util/mod.rs diff --git a/test-helpers/src/shotover_process.rs b/test-helpers/src/shotover_process.rs index 944186275..87f065bcd 100644 --- a/test-helpers/src/shotover_process.rs +++ b/test-helpers/src/shotover_process.rs @@ -70,7 +70,7 @@ observability_interface: "127.0.0.1:{observability_port}" shotover.wait_for( &EventMatcher::new() .with_level(Level::Info) - .with_target("shotover_proxy::server") + .with_target("shotover::server") .with_message("accepting inbound connections"), ), )