Coming from the Rails world, for a while I searched for a way to do
this, and at this point I've come to the conclusion that

* "raw" SQL migrations are the way to go
* rollback/down migrations are problematic for environments other than test.

Regarding specific experiences, I used Lobos for a while, and while I
don't hate it, I quickly ran into situations where its DSL just didn't
cover the types or alterations I wanted to make, and it ended up causing
more issues than it solved.

My choice was to extend it or just use SQL directly.  In another project
I was using Flyway (http://flywaydb.org/), which does everything it
needs to reasonably well, explicitly doesn't support rollbacks, and uses
SQL which supports everything I need.  It's database schema table is
easy enough to understand that I can manually rollback during
testing/development or write some scripting to handle specific cases if
need be.  So I've started moving in that direction.

TL;DR straight SQL is the way to go, and what Korny said in another reply.

DD

(2013/06/15 1:24), Reginald Choudari wrote:
> Hello all,
> 
> I am trying to implement database migrations with Clojure. So far I have
> been looking at Drift (https://github.com/macourtney/drift) as a
> candidate for implementing this. My question is, does anyone have a
> database migration workflow that they use and would like to share? One
> problem I have been thinking is how to tackle database credentials/db
> name configuration. I know in Rails its common to use a YAML to provide
> this info, wondering if there was something more idiosyncratic to clojure?
> 
> Thanks in advance
> 
> -- 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>  
>  

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to