Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 9 additions & 12 deletions cli/src/commands/add.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use std::{collections::HashSet, path::PathBuf};
use std::{collections::HashSet, path::Path};

use sqlx::{types::chrono::Utc, PgConnection};
use tokio::fs;
Expand All @@ -10,7 +10,7 @@ use crate::{

pub async fn add(
payload: &Payload,
output_path: &PathBuf,
output_path: &Path,
mut conn: PgConnection,
) -> anyhow::Result<()> {
let existing_versions = extension_versions(&mut conn, &payload.metadata.extension_name).await?;
Expand All @@ -21,21 +21,21 @@ pub async fn add(
let mut migration_content = String::new();

// Header with metadata
migration_content.push_str("-- Migration generated by dbdev add at:");
migration_content.push_str("-- Migration generated by dbdev add at: ");
migration_content.push_str(&Utc::now().format("%Y-%m-%d %H:%M:%S").to_string());
migration_content.push('\n');

migration_content.push_str("-- Extension: ");
migration_content.push_str(&payload.metadata.extension_name);
migration_content.push('\n');

migration_content.push_str("-- Default version:");
migration_content.push_str("-- Default version: ");
migration_content.push_str(&payload.metadata.default_version);
migration_content.push('\n');

if let Some(comment) = &payload.metadata.comment {
migration_content.push_str("-- Comment:");
migration_content.push_str(&comment);
migration_content.push_str("-- Comment: ");
migration_content.push_str(comment);
migration_content.push('\n');
}

Expand Down Expand Up @@ -69,7 +69,7 @@ pub async fn add(
versions_installed_now.insert(install_file.version.clone());
} else {
// For initial installation
migration_content.push_str("-- Initial installation of version:");
migration_content.push_str("-- Initial installation of version: ");
migration_content.push_str(&install_file.version);
migration_content.push('\n');

Expand All @@ -86,7 +86,7 @@ pub async fn add(
migration_content.push_str("', '");
migration_content.push_str(&install_file.version);
migration_content.push_str("', $COMMENT$");
migration_content.push_str(&payload.metadata.comment.as_deref().unwrap_or(""));
migration_content.push_str(payload.metadata.comment.as_deref().unwrap_or(""));
migration_content.push_str("$COMMENT$, $SQL$");
migration_content.push_str(&install_file.body);
migration_content.push_str("$SQL$, ARRAY[");
Expand All @@ -100,10 +100,7 @@ pub async fn add(
}

let existing_update_paths =
match update_paths(&mut conn, &payload.metadata.extension_name).await {
Ok(paths) => paths,
Err(_) => HashSet::new(),
};
(update_paths(&mut conn, &payload.metadata.extension_name).await).unwrap_or_default();

for upgrade_file in &payload.upgrade_files {
let update_path = UpdatePath {
Expand Down
2 changes: 1 addition & 1 deletion cli/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ async fn main() -> anyhow::Result<()> {
let payload = models::Payload::from_path(extension_dir)?;
let conn = util::get_connection(connection).await?;

commands::add::add(&payload, &output_path, conn).await?;
commands::add::add(&payload, output_path, conn).await?;

Ok(())
}
Expand Down
Loading