2016-04-20 8 views
0

Meine Infrastruktur basiert auf AWS, 3 für EC2 Instanzen für Rails App Server, 1 für RDS (MongoDB), 1 für EC2 Instanz als Redis Server.Wie kann travis CI die Testumgebung für Ruby on Rails und sein Backend vorbereiten?

Wird der TravisCI ähnliche Dienste starten (zB MongoDB, Redis), um die RSpec-Tests zu bestehen.

Wenn nicht, was ist die Logik hinter dem TravisCI?

Wäre es praktischer, den Test auf meiner realen Infrastruktur statt in TravisCI durchzuführen?

Antwort

0

Ja! Travis CI unterstützt vollständig Ruby on Rails und kann die gleichen Dienste starten, die Sie für die Tests benötigen, also erwarte ich, dass Sie bereit sind. Wenn Sie Ihre travis.yml Datei erstellen, können Sie die Konfiguration für Ihre Build-Umgebung festlegen, einschließlich der Einrichtung von Diensten einschließlich MongoDB and/or Redis. Hier ist ein Beispielcode, wie das aussieht:

services 
- mongodb 
- redis 

Aus praktischer Sicht, eine separate Umgebung macht es einfache Testintegrität zu gewährleisten, wenn Sie das zusätzliche Software-Setup müssen tun. Der Hauptvorteil besteht jedoch darin, dass Sie bei jedem Build für alle Ihre Tests eine saubere Weste erhalten und es weit entfernt von Ihrem Produktionscode ist, falls es ein Problem gibt.