Jenkins Pipeline

Die neue Pipeline Funktion von Jenkins kann mit Jenkins 1.x und 2.x verwendet werden. Bei Jenkins 2.x gibt es aber auch noch ein Plugin um die einzelnen Stages in einer View zu visualisieren.

Für die Pipeline gibt es auch einen Snippet Generator unter http://localhost:8080/jenkins/job/Pipelinetest/pipeline-syntax/.

Mit dessen Hilfe kann man für die meisten Anwendungsfälle Snippets generieren und diese dann nach den eigenen Anforderungen anpassen.

Der Beispiel Code für einen Github checkout und Maven aufruf sieht dabei wie folgt aus:

Dabei sieht man auch die Änderungen bei Jenkins 2, das Thirdparty Komponenten wie Maven über Variablen und nicht mehr über Pfad Angaben in der Konfiguration gemanagt werden. Die „stage“ aufrufe bilden dabei die einzelnen Schritte welche auch in der Stage View sichtbar sind.

Slim und Ionic und CORS

Wer sich mit Slim und Ionic ein kleine App und Rest Api bauen möchte, kann schnell mit dem Thema CORS in Kontakt kommen. Besonders beim testen auf der lokalen Maschine.

Damit es auch lokal funktioniert. Müssen die folgenden Zeilen am Anfang der index.php hinzugefügt werden (am besten ganz oben):

Dabei kann man natürlich auch die Freigabe auf bestimmte Domains einschränken. Falls man diese drei Zeilen jedoch nicht hinzufügt, erhält man bei einem http.get(…) die folgende Fehlermeldung:

Installation Jenkins 2.x mit Tomcat

Im folgenden Beitrag beschreibe ich die Installation eines Jenkins 2.x in einem Tomcat8. Es ist auch möglich den Jenkins ohne Tomcat laufen zu lassen.

Schritt 1

Installation Tomcat8 unter Linux mit

alternativ kann auch die aktuelle Version unter https://tomcat.apache.org/download-80.cgi heruntergeladen werden und entpackt werden. Dieses Vorgehen ist für Windows zu empfehlen.

Unter Linux ist der Tomcat nach der Installation unter /var/lib/tomcat8/ zu finden.

tomcat8

Schritt 2

Damit Jenkins im Tomcat richtig starten kann, muss JENKINS_HOME im Tomcat Environment gesetzt werden. Alternativ kann JENKINS_HOME auch als Umgebungsvariable gesetzt werden, was aber das betreiben mehrerer Jenkinses auf einem Server verhindert.

Der folgende Code wir in der Datei conf/context.xml eingefügt: Continue reading “Installation Jenkins 2.x mit Tomcat”

Spring Boot – autoreload

Wer bei Spring Boot auch die Autoreload funktion haben möchte, muss die dependencie devtools einbinden:

Dann wird bei jeder Änderung im Classpath, die Anwendung restartet.

Weitere Einstellungsmöglichkeiten findet ihr unter http://docs.spring.io/spring-boot/docs/1.3.x-SNAPSHOT/reference/html/using-boot-devtools.html

Ionic – Anzeigen des Settings Menü GPS

Damit man mit Ionic dem User auch Anzeigen kann das die GPS Daten nicht vorhanden sind und er diese im Settings Menü ändern muss, braucht man die folgenden beiden Plugins

cordova-plugin-request-location-accuracy

cordova-diagnostic-plugin

Mit diesen kann man abfrage ob GPS aktiviert ist und auch den Benutzer zum jeweiligen Menü des OS zu schicken. Damit ist es wie in einer normalen Android App möglich ein “Bitte aktivieren Sie Google Standortdienste” Fenster anzuzeigen.