Let’s say we have a continuous integration server. When I check in, the post-hook pulls the latest code, runs the tests, packages everything. What is the best way to also automate the database changes?
Ideally, I’d build an installer that could either build a database from scratch or update an existing one using some automated syncing method.
If you have the opportunity to define and control the whole database management and db creation process, have a serious look at DB Ghost – it’s more than just a tool – it’s a process.
If you like it and can implement it, you’ll get great returns on it – but it’s a bit of a ‘all-or-nothing’ kind of approach. Recommended.