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§
- ARow
- Row wrapper.
- Cdrs
DbSession - Session wrapper.
- CqlMigrator
- Entrypoint / builder for running migrations.
- Migration
- A migration to be applied.
- Version
- Migration version.