Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Picking up @jbrumwell #1456 to ease running tests #1674
Containers to ease running the test bench
Docker is supported in almost all platforms and has become really easy to setup and use. With a single command the boilerplate is reduced to none and tests run smoothly.
This is an almost one year old PR, picked up from the scrap that shouldn't be forgotten nor ignored.
Using containers to run the tests isolated and reduce the tested engines' setup boilerplate.
Current PR Issues
Was not tested on a Windows machine.
SQLite tests run in memory so i don't think the overhead of opening a random port and piping data into the container worth the hassle.
But shouldn't it be engine independent? I mean, that's knex territory, right?
@rapzo That's another discussion that also took place in #1661. I don't see a problem with not having OracleDB tests with the Docker solution, since all specific database engine tests should eventually be removed anyway.
BTW, is it possible to configure Travis to use the new solution you propose here?
Travis uses docker for running its tests https://travis-ci.org/bookshelf/bookshelf/jobs/295316556#L33
But i'll look into, trying to get builds from my fork with a similar config. Will get back here when i get some results.
Been trying some mixed configs into this but it looks like travis is, somehow, using 3306 and 5432 already for no reason. Maybe we should have each node version tests to run in a container as well, that way we use docker to connect themselves instead of using travis stuff.
Knex's dudes are into it as well, maybe i'll try and extend there as well.
One problem though, that oracledb stuff... It cries because a container doesn't have 1GB of memory available... Won't be easy.