(
defn
extract-and-sync-sample-database!
[
]
(
try
(
log/info
"Loading sample database"
)
(
let
[
details
(
try-to-extract-sample-database!
)
db
(
if
(
t2/exists?
:model/Database
:is_sample
true
)
(
t2/select-one
:model/Database
(
first
(
t2/update-returning-pks!
:model/Database
:is_sample
true
{
:details
details
}
)
)
)
(
first
(
t2/insert-returning-instances!
:model/Database
:name
sample-database-name
:details
details
:engine
:h2
:is_sample
true
)
)
)
]
(
log/debug
"Syncing Sample Database..."
)
(
sync/sync-database!
db
)
)
(
log/debug
"Finished adding Sample Database."
)
(
catch
Throwable
e
(
log/error
e
"Failed to load sample database"
)
)
)
)