Compare commits

...

3 Commits

Author SHA1 Message Date
Callum Herries
739c02205a okay that didn't work 2024-03-21 19:39:20 +02:00
Callum Herries
03beeb9d62 try again 2024-03-21 18:52:07 +02:00
Callum Herries
a42784aa06 catch bad redshift sync 2024-03-21 16:19:39 +02:00
2 changed files with 9 additions and 2 deletions

View File

@@ -5,15 +5,22 @@
(:require
[metabase.driver :as driver]
[metabase.driver.sql-jdbc.sync :as sql-jdbc.sync]
[metabase.driver.sql.test-util.unique-prefix :as sql.tu.unique-prefix]
[metabase.driver.util :as driver.u]
[metabase.sync.interface :as i]
[metabase.util :as u]
[metabase.util.malli :as mu]
[metabase.util.malli.fn :as mu.fn]))
(mu/defn db-metadata :- i/DatabaseMetadata
"Get basic Metadata about a `database` and its Tables. Doesn't include information about the Fields."
[database :- i/DatabaseInstance]
(driver/describe-database (driver.u/database->driver database) database))
(u/prog1 (driver/describe-database (driver.u/database->driver database) database)
(when (= (driver.u/database->driver database)
:redshift)
(assert (->> (:tables <>)
(keep :schema)
(every? #{(str (sql.tu.unique-prefix/unique-prefix) "schema") "spectrum"}))))))
(mu/defn fields-metadata
"Effectively a wrapper for [[metabase.driver/describe-fields]] that also validates the output against the schema."

View File

@@ -41,7 +41,7 @@
([local-date]
{:pre [(instance? java.time.LocalDate local-date)]}
(-> (format "%s_%s_" local-date (public-settings/site-uuid))
(str/replace #"-" "_"))))
(str/replace #"-" "_"))))
(def ^{:arglists '([])} unique-prefix
"Unique prefix for test datasets for this instance. Format is `<current-date-utc>_<site-uuid>_`. See comments above.