Travis CI ist ein gehostete kontinuierliche Integrations- und Bereitstellungssystem. Sie können jetzt Open Source- und Privatprojekte auf Travis-ci.com testen und bereitstellen! Sie können hier mehr über diese Änderung lesen.
Wir ziehen in unser neues Community -Forum: Travis CI Community! Im Rahmen dieses Schrittes können wir Threads besser folgen und antworten und es Ihnen erleichtern, Lösungen und Antworten zu finden. Wir werden unsere besten Anstrengungen unternehmen, um derzeit vorhandene Themen zu beantworten oder sie in das neue Community -Forum zu leiten.
Link zum Community-Forum: https://travis-ci.community
Abonnieren Sie für aktuelle Ausfälle und Vorfälle wie langsame Netzwerkverbindungen https://www.traviscistatus.com.
Weitere Supportprobleme können an [email protected] angewiesen werden, wo unser Support-Team gerne behilflich sein wird.
Dieses Repository enthält den zentralen Problem Tracker für das Travis CI -Projekt.
Die Dokumentation für das Travis CI-Projekt finden Sie unter https://docs.travis-ci.com.
Travis CI besteht aus vielen verschiedenen Unterprojekten. Die wichtigsten sind:
Travis-api ist die Sinatra-App, die für die Dienerin unserer API verantwortlich ist. Es reagiert auf verschiedene HTTP-Endpunkte und führt Dienste in Travis-Core aus. In diesem Repository ist sehr wenig Logik.
Travis-Build erstellt das Build-Skript für jeden Job. Die Konfiguration enthält die Datei .travis.yml und erstellt ein bash -Skript, das dann von Travis-Worker in der Build-Umgebung ausgeführt wird. In diesem Repository wird auch die Quelle für sprachspezifische Skripte gehostet.
Travis-Cookbooks hält die Kochkochbücher, mit denen die Build-Umgebungen bereitgestellt werden.
Travis-Hub sammelt Ereignisse aus anderen Apps und benachrichtigt andere Apps über die Ereignisse. Zum Beispiel werden Travis-Tasks über den Start und Abschluss von Builds benachrichtigt, sodass Benachrichtigungen verschickt werden können.
Travis-Hub ist auch für die Erstellung und Durchsetzung der Qualität der Servicebeschränkungen verantwortlich, beispielsweise für die Anzahl der gleichzeitigen Builds pro Benutzer.
Travis-Listener erhält Benachrichtigungen von Github, wenn Commits gedrückt oder an Anfragen geöffnet werden. Sie werden dann auf Rabbitmq gedrängt, damit andere Apps verarbeiten können.
Travis-Logs erhält Protokoll-Updates von Travis-Worker, speichert sie in der Datenbank und übertreibt sie an den Web-Client. Wenn ein Job abgeschlossen ist, ist Travis-Logs dafür verantwortlich, das Protokoll zum Archivieren an Amazon S3 zu bringen.
Travis-Support hält die gemeinsame Logik für die verschiedenen Travis CI-Apps. Es unterscheidet sich von Travis-Core insofern, als es generische Dinge enthält, z. B. wie man einen asynchronen Job ausführt oder wie man mit Ausnahmen umgeht.
Travis-Tasks erhält Benachrichtigungen von Travis-Hub und sendet Benachrichtigungen nach Bedarf an die verschiedenen Benachrichtigungsanbieter.
Travis-Web ist unser Haupt-Web-Client. Es wird mit Ember geschrieben und kommuniziert mit Travis-api, um Informationen zu erhalten, und erhält Live-Updates von Travis-Hub und Travis-Logs über Pusher.
Travis-Arbeiter ist dafür verantwortlich, die Build-Skripte in einer sauberen Umgebung auszuführen. Es wird die Protokollausgabe auf Travis-Logs gestreamt und staatliche Updates (Start/Veredelung erstellen) auf Travis-Hub.