Expand description
Movine provides a library implementation for integration with codebases. This lets you easily run migrations at the startup of the application.
§Example
use movine::{Movine, Config};
use movine::errors::Error;
fn test() -> Result<(), Error> {
std::env::set_var("SQLITE_FILE", ":memory:");
let config = Config::load(&"movine.toml")?;
let mut conn = config.into_sqlite_conn()?;
let mut movine = Movine::new(&mut conn);
movine.up()?;
Ok(())
}
Or if you want to provide your own connection
use movine::{Movine, Config};
use movine::errors::Error;
fn test() -> Result<(), Error> {
let mut conn = rusqlite::Connection::open(":memory:")?;
let mut movine = Movine::new(&mut conn);
movine.up()?;
Ok(())
}