Setting up continuous integration with Rails

I have a number of applications that I am looking to use CI, because the test suites are getting large enough to run manually becomes cumbersome.

Since these are client applications, not gems, there are quite a few dependencies such as Postgres, Redis, Memcache, etc.

Now it makes no sense for me to stop this material in my tests, since I really do not test the application properly.

So what is the best way to fix such things? Create a server with all the necessary dependencies installed and configured for applications or something else?

This question is not “what CI” is, but how to deal with dependencies.

+4
source share
2 answers

Since they are more related to configuration management, it’s better to use tools like Chef or Puppet for configuration. You can use this with Capistrano to automate the setup. Railsmachine Moonshine combines both Capistrano and Puppet and is easy to configure.

+1
source

Another option is to use a hosted service such as Circle (disclaimer: I am the founder of Circle ). We have most of the predefined dependencies and you can install additional packages if you need them. This way you don’t drown anything, and it’s much easier than writing a chef or puppet or capistrano - in fact, you don’t need to write anything at all.

+1
source

Source: https://habr.com/ru/post/1383843/


All Articles