Wondering what are the views on this
We have a CI server that runs some integration tests on the DB server, and well… it just seems wrong to install a database server on the CI server to accommodate that
More info to answer comment:
Why is it necessary to do this?
This particular part of the tests checks for db schema generation and migrations and runs some methods on top of that.
What CI system are you using?
Team City, but I dont think that is a relevant question TBH
Are you concerned about performance if you separate CI from the database server?
not really, thou I do realise that the separation will make the tests run slower which is a bad idea.
I d love to hear other developers views on the subject
If that database only exists in order to run integration tests from the CI build, then it doesn’t seem so bad to me. If however, a few months down the line it starts to get repurposed for other means and used by other clients, then well maybe it’s worth a rethink.
To be honest though, it doesn’t seem like something that can be answered objectively. Lots of other factors play a part – licensing, the spec of the machine, availability of other servers, level of usage of virtulaisation, support policy where you work, etc etc.
If it is working without a hitch then is it something to worry about?