Skip to content

Commit

Permalink
Revert "sea-orm-cli migrate init: don't overwrite files by default (#…
Browse files Browse the repository at this point in the history
…1829)"

This seems to be a breaking change may be we should apply later
  • Loading branch information
tyt2y3 committed Dec 8, 2023
1 parent a1396f3 commit c9a2528
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 16 deletions.
5 changes: 1 addition & 4 deletions sea-orm-cli/src/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -101,10 +101,7 @@ you should provide the directory of that submodule.",
#[derive(Subcommand, PartialEq, Eq, Debug)]
pub enum MigrateSubcommands {
#[command(about = "Initialize migration directory", display_order = 10)]
Init {
#[arg(short, long, help = "Overwrite files if the folder already exists")]
force: bool,
},
Init,
#[command(about = "Generate a new, empty migration", display_order = 20)]
Generate {
#[arg(required = true, help = "Name of the new migration")]
Expand Down
15 changes: 3 additions & 12 deletions sea-orm-cli/src/commands/migrate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ pub fn run_migrate_command(
verbose: bool,
) -> Result<(), Box<dyn Error>> {
match command {
Some(MigrateSubcommands::Init { force }) => run_migrate_init(migration_dir, force)?,
Some(MigrateSubcommands::Init) => run_migrate_init(migration_dir)?,
Some(MigrateSubcommands::Generate {
migration_name,
universal_time: _,
Expand Down Expand Up @@ -78,16 +78,11 @@ pub fn run_migrate_command(
Ok(())
}

pub fn run_migrate_init(migration_dir: &str, force: bool) -> Result<(), Box<dyn Error>> {
pub fn run_migrate_init(migration_dir: &str) -> Result<(), Box<dyn Error>> {
let migration_dir = match migration_dir.ends_with('/') {
true => migration_dir.to_string(),
false => format!("{migration_dir}/"),
};
if !force && Path::new(&migration_dir).is_dir() {
if fs::read_dir(&migration_dir)?.next().transpose()?.is_some() {
return Err(Box::new(MigrationCommandError::DirAlreadyExists));
}
}
println!("Initializing migration directory...");
macro_rules! write_file {
($filename: literal) => {
Expand Down Expand Up @@ -257,17 +252,13 @@ fn update_migrator(migration_name: &str, migration_dir: &str) -> Result<(), Box<

#[derive(Debug)]
enum MigrationCommandError {
DirAlreadyExists,
InvalidName(String),
}

impl Display for MigrationCommandError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::DirAlreadyExists => {
write!(f, "Migration directory already exists! Use `--force` flag if you want to overwrite it anyway.")
}
Self::InvalidName(name) => {
MigrationCommandError::InvalidName(name) => {
write!(f, "Invalid migration name: {name}")
}
}
Expand Down

0 comments on commit c9a2528

Please sign in to comment.