diff --git a/app/src/cli/commands/sync.ts b/app/src/cli/commands/sync.ts index 8b8c5c4..2a22726 100644 --- a/app/src/cli/commands/sync.ts +++ b/app/src/cli/commands/sync.ts @@ -21,46 +21,47 @@ export const sync: CliCommand = (program) => { console.info(""); if (stmts.length === 0) { console.info(c.yellow("No changes to sync")); - process.exit(0); - } - // @todo: currently assuming parameters aren't used - const sql = stmts.map((d) => d.sql).join(";\n") + ";"; + } else { + // @todo: currently assuming parameters aren't used + const sql = stmts.map((d) => d.sql).join(";\n") + ";"; - if (options.force) { - console.info(c.dim("Executing:") + "\n" + c.cyan(sql)); - await schema.sync({ force: true, drop: options.drop }); + if (options.force) { + console.info(c.dim("Executing:") + "\n" + c.cyan(sql)); + await schema.sync({ force: true, drop: options.drop }); - console.info(`\n${c.dim(`Executed ${c.cyan(stmts.length)} statement(s)`)}`); - console.info(`${c.green("Database synced")}`); - - if (options.seed) { - console.info(c.dim("\nExecuting seed...")); - const seed = app.options?.seed; - if (seed) { - await app.options?.seed?.({ - ...app.modules.ctx(), - app: app, - }); - console.info(c.green("Seed executed")); + console.info(`\n${c.dim(`Executed ${c.cyan(stmts.length)} statement(s)`)}`); + console.info(`${c.green("Database synced")}`); + } else { + if (options.out) { + const output = options.sql ? sql : JSON.stringify(stmts, null, 2); + await writeFile(options.out, output); + console.info(`SQL written to ${c.cyan(options.out)}`); } else { - console.info(c.yellow("No seed function provided")); + console.info(c.dim("DDL to execute:") + "\n" + c.cyan(sql)); + + console.info( + c.yellow( + "\nNo statements have been executed. Use --force to perform database syncing operations", + ), + ); } } - } else { - if (options.out) { - const output = options.sql ? sql : JSON.stringify(stmts, null, 2); - await writeFile(options.out, output); - console.info(`SQL written to ${c.cyan(options.out)}`); - } else { - console.info(c.dim("DDL to execute:") + "\n" + c.cyan(sql)); + } - console.info( - c.yellow( - "\nNo statements have been executed. Use --force to perform database syncing operations", - ), - ); + if (options.seed) { + console.info(c.dim("\nExecuting seed...")); + const seed = app.options?.seed; + if (seed) { + await seed({ + ...app.modules.ctx(), + app: app, + }); + console.info(c.green("Seed executed")); + } else { + console.info(c.yellow("No seed function provided")); } } + process.exit(0); }); };