IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New How to handle DB updates
We've got a set of apps that use both Oracle and SQL Server, and build/deploy with a mix of Jenkins, TeamCity and Octopus.* When we've got DB changes that need to go with a deployment, current process is to attach an update script to the Jira ticket, notify the DBA, and when we do the deployment he executes the script in the target environment(s).

I've worked in other systems where this process was integrated into our SCM/build/deploy process, so when we pushed the button for code the DB changes went with it. This might not be practical here because of the mix of Oracle and SQL Server**, but my gut tells me they just never bothered. Or that someone doesn't want to give up that level of control.

Assuming it's not a control issue, what should we be looking at to do this correctly?***


* Years of acquisitions, not everything has been integrated yet.
** One fight at a a time.
*** I'd like to say, "How long could it take to knock out a few Bash scripts?" but this is Windows, so I keep my mouth shut.
--

Drew
New Re **: Which one you gonna drop...?
...first?
--
Christian R. Conrad
Same old username (as above), but now on iki.fi

(Yeah, yeah, it redirects to the same old GMail... But just in case I ever want to change.)
New What's the underlying application server?
RoR and Django (what we use) incorporate database migration functionality. There are other ones for Java (like Migrate4j) that might be more standalone.

You want something that provides both forward and backward migrations as well as some means of generating migrations from changes. Django, for example, keeps track of what the current state of the schema should be, then diffs that against the next version and creates a script from the results.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New What about Liquibase?
It can target multiple databases and makes sure changesets are not re-run. And you can add the changelog files to your codebase. However, it does have some quirks in its SQL parser if you want to put in raw SQL.

Wade.
New That's the other one I was trying to think of
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New Thanks, will take a look
Should have mentioned, we use Git. I assume that's more relevant than the app server details?
--

Drew
Expand Edited by drook Dec. 13, 2017, 10:39:35 AM EST
     How to handle DB updates - (drook) - (5)
         Re **: Which one you gonna drop...? - (CRConrad)
         What's the underlying application server? - (malraux)
         What about Liquibase? - (static) - (2)
             That's the other one I was trying to think of -NT - (malraux)
             Thanks, will take a look - (drook)

(This message was left blank.)
65 ms