Crate cqlmig_cdrs_tokio
source ·Expand description
Run migrations on a CQL database (Casandra or ScyllaDB).
This package is the cdrs-tokio implementation of cqlmig.
Examples
use std::borrow::Borrow;
use cdrs_tokio::cluster::NodeTcpConfigBuilder;
use cdrs_tokio::cluster::session::{SessionBuilder, TcpSessionBuilder};
use cdrs_tokio::load_balancing::RoundRobinLoadBalancingStrategy;
use cqlmig::CqlMigrator;
use cqlmig_cdrs_tokio::CdrsDbSession;
let cluster_config = NodeTcpConfigBuilder::new()
.with_contact_points(vec!["localhost:9042".to_string().into()])
.build()
.await
.unwrap();
let tcp_ses = TcpSessionBuilder::new(
RoundRobinLoadBalancingStrategy::new(),
cluster_config)
.build()
.unwrap();
let ses: CdrsDbSession = tcp_ses.borrow().into();
// Use: CqlMigrator::default().migrate_files(&ses, Path::new("path/to/migrations").into()).await.unwrap();
// Or provider a vec of migrations
CqlMigrator::default().migrate(&ses, vec![]).await.unwrap();
Structs
Row wrapper.
Session wrapper.
Entrypoint / builder for running migrations.
A migration to be applied.
Migration version.