2016-05-04 10 views
0

I Jenkins bin mit Dateien von Git auf unseren Web-Server (mehr für das Kopieren von nicht Aufgaben bauen) SSH und haben ein paar Fragen:Konfigurieren von Jenkins für CI

  1. Ist es OK, die ausgeschlossen werden sollen. git-Ordner und .gitignore-Datei im Build? Wenn ja, was ist der beste Weg, dies zu erreichen? Ich bin mir nicht sicher, welche Syntax zu verwenden ist.

  2. Jedes Mal, wenn ich einen Build fire, merke ich, dass der Zeitstempel für jede Datei geändert wird. Gibt es eine Möglichkeit, nur Änderungen seit dem letzten Build zu aktualisieren? Ich habe versucht mit dem Plugin Änderungen seit dem letzten Erfolg, hatte aber kein Glück.

Dank

+0

Ihr Ziel ist es, die Dateien von einem Git Repo zu bekommen und sie auf Ihren Webservern zu kopieren? Der .git-Ordner ist obligatorisch, da er den gesamten Git-Verlauf enthält. Ich bin mir nicht sicher, ob Sie ihn ausschließen können. –

+0

Ok, perfekt. Wie wäre es mit dem letzten Commit-Teil meiner Frage? Irgendwelche Gedanken dazu? – GreenLion

+0

Ich habe eine Lösung, indem ich Ihre Web-Server als Jenkins-Slaves benutze (um Ihre Dateien von Git zu implementieren). Ist es eine akzeptable Lösung? –

Antwort

0

Eine Lösung, um Ihren Web-Server als Jenkins Sklaven zu verbinden sein sollte.

haben Sie einen Blick auf die folgenden Links, um Ihre Web-Server-Maschinen zum Master verbinden:

Windows-Slave: https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines

Linux-Slave: http://docs.omnirom.org/Adding_a_Slave_node_to_Jenkins

Als nächste Sie einen Freestyle-Job erstellen um die Datei von Git mit einer Konfiguration wie unten zu erhalten.

einen benutzerdefinierten Arbeitsbereich Verwenden Sie die Datei in den entsprechenden Pfad zur Kasse:

enter image description here

Als nächstes konfigurieren Sie den Abschnitt SCM Ihre Dateien von Git zu erhalten:

enter image description here

können Sie Konfigurieren Sie den Abschnitt Auslöser erstellen, um Ihr Git Repo mit einem Cron-Ausdruck zu überprüfen:

enter image description here

Eine andere Lösung sollte es sein, einen Post-Commit-Hook auf Ihrem Git-Server zu verwenden, um jedes Mal, wenn etwas festgeschrieben wird, einen Jenkins-Build auszulösen.

Hilft es? :)

+0

Ja, tut es. Der Artikel schlägt vor, dass ich Jenkins nicht auf dem Slave-Server installiert haben muss. Was sind deine Gedanken? – GreenLion

+0

In meiner Antwort gibt es zwei Links, um den Jenkins-Slave-Agenten unter Windows und Linux zu installieren. Ihre Webserver laufen unter Linux? –

Verwandte Themen