Skip to content

Commit fb9237e

Browse files
committed
Auto merge of #3916 - Turbo87:dump_db_logging, r=jtgeibel
tasks::dump_db: Add debug logging This was helpful when working on #3912 :)
2 parents 2df42ae + 1cf3740 commit fb9237e

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

src/tasks/dump_db.rs

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ impl DumpDirectory {
4545
let timestamp = chrono::Utc::now();
4646
let timestamp_str = timestamp.format("%Y-%m-%d-%H%M%S").to_string();
4747
let export_dir = std::env::temp_dir().join("dump-db").join(timestamp_str);
48+
debug!(?export_dir, "Creating database dump folder…");
4849
std::fs::create_dir_all(&export_dir)?;
4950
Ok(Self {
5051
timestamp,
@@ -62,7 +63,9 @@ impl DumpDirectory {
6263
fn add_readme(&self) -> Result<(), PerformError> {
6364
use std::io::Write;
6465

65-
let mut readme = File::create(self.export_dir.join("README.md"))?;
66+
let path = self.export_dir.join("README.md");
67+
debug!(?path, "Writing README.md file…");
68+
let mut readme = File::create(path)?;
6669
readme.write_all(include_bytes!("dump_db/readme_for_tarball.md"))?;
6770
Ok(())
6871
}
@@ -78,13 +81,18 @@ impl DumpDirectory {
7881
crates_io_commit: dotenv::var("HEROKU_SLUG_COMMIT")
7982
.unwrap_or_else(|_| "unknown".to_owned()),
8083
};
81-
let file = File::create(self.export_dir.join("metadata.json"))?;
84+
let path = self.export_dir.join("metadata.json");
85+
debug!(?path, "Writing metadata.json file…");
86+
let file = File::create(path)?;
8287
serde_json::to_writer_pretty(file, &metadata)?;
8388
Ok(())
8489
}
8590

8691
pub fn dump_schema(&self, database_url: &str) -> Result<(), PerformError> {
87-
let schema_sql = File::create(self.export_dir.join("schema.sql"))?;
92+
let path = self.export_dir.join("schema.sql");
93+
debug!(?path, "Writing schema.sql file…");
94+
let schema_sql = File::create(path)?;
95+
8896
let status = std::process::Command::new("pg_dump")
8997
.arg("--schema-only")
9098
.arg("--no-owner")
@@ -100,9 +108,12 @@ impl DumpDirectory {
100108
}
101109

102110
pub fn dump_db(&self, database_url: &str) -> Result<(), PerformError> {
111+
debug!("Generating export.sql and import.sql files…");
103112
let export_script = self.export_dir.join("export.sql");
104113
let import_script = self.export_dir.join("import.sql");
105114
gen_scripts::gen_scripts(&export_script, &import_script)?;
115+
116+
debug!("Filling data folder…");
106117
std::fs::create_dir(self.export_dir.join("data"))?;
107118
run_psql(&export_script, database_url)
108119
}
@@ -115,6 +126,7 @@ impl Drop for DumpDirectory {
115126
}
116127

117128
pub fn run_psql(script: &Path, database_url: &str) -> Result<(), PerformError> {
129+
debug!(?script, "Running psql script…");
118130
let psql_script = File::open(&script)?;
119131
let psql = std::process::Command::new("psql")
120132
.arg(database_url)

src/tasks/dump_db/gen_scripts.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,16 +70,21 @@ impl VisibilityConfig {
7070
let context = self.handlebars_context();
7171
let mut handlebars = handlebars::Handlebars::new();
7272
handlebars.register_escape_fn(handlebars::no_escape);
73+
74+
debug!("Writing dump-export.sql file…");
7375
handlebars.render_template_to_write(
7476
include_str!("dump-export.sql.hbs"),
7577
&context,
7678
export_sql,
7779
)?;
80+
81+
debug!("Writing dump-import.sql file…");
7882
handlebars.render_template_to_write(
7983
include_str!("dump-import.sql.hbs"),
8084
&context,
8185
import_sql,
8286
)?;
87+
8388
Ok(())
8489
}
8590
}

0 commit comments

Comments
 (0)