On 16/04/2008, at 4:07 PM, Andrus Adamchik wrote:

On Apr 16, 2008, at 3:08 AM, Aristedes Maniatis wrote:

My only other comment here is that ant may not be the best tool for deployed systems.

Let's elaborate on that a bit. I'd like to have a better understanding of the scenarios we may be dealing with. I have two in mind:

1. A group of developers works on the same project, each with his own local copy of the DB. Each developer can introduce schema/data changes as a part of coding. DBPatch would serve a purpose of bringing all local DB's in sync with the state of the code on trunk.

2. After a cycle of development, a deployment is done to an existing production database. DBPatch is run sometime after .war assembly (assuming that's a web app), and before deploying the wars to the server. Here the assumption is that a (remote) DB server is accessible from the build machine.

3. The application is given to a customer and it automatically updates the production database when it first runs.


What other scenarios I'm missing that won't allow using Ant? Shrink- wrapped software? As for DBPatch specifically, the plan to code it in such a way that Ant interface is simply a frontend to a Java class that can be run standalone.


I see, so it isn't so much an ant task as a useful library which is not specifically ant or Cayenne centric but works nicely alongside either. The way we use this workflow is on server startup, after the database is started, but before Cayenne's model is initialised. It is built into the application itself. For us, that means both 1 and 3 above. I'd be interested in looking to see how DBPatch relates to what we've already done. What is the URI of the sandbox?


Ari Maniatis





-------------------------->
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001   fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A


Reply via email to