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.

Easy and free Tools for Development, Ideas and Projects

Falls ich eine Idee entwickeln möchte und dies mit anderen zusammen – muss ich dafür Geld investieren?

Nein, es gibt viele Projektmanagement Tools und Plattformen wo für den Anfang die free Version ausreicht.

Projektmanagement:

  • Workboard – bietet viele Möglichkeiten die Tasks eines Projektes zu managen und kommt zudem noch mit Reports
  • Trello – Kanban Board mit flexiblen Spalten und mehreren Boards
  • Producteev – Task Manager
  • Bitbucket und Github – einfache Taskfunktion

Zu Kommunikation zwischen mehreren Teammitgliedern bietet sich Slack an. Es kann mit mobilen Geräten aber auch am Desktop verwendet werden.

Zum bearbeiten von Notizen oder Dateien bietet sich neben Dropbox und GoogleDrive auch Evenote an. Es ist ein digitales Notizbuch und wer nur Notizen erstellen möchte (auch mit Bildern) dem dürfte Evernote weiterhelfen.

Docker

Was bringt einem Docker? Docker isoliert z.B. einen Jenkins in einem Container auf deinem Ubuntu Server und ermöglicht es dazu noch weitere Anwendungen in anderen Containern bereitzustellen.

Installation

Aktuell wird Windows von Docker nicht unterstützt. Die folgende Anleitung beschreibt die Installation von Docker auf einem Ubuntu 14.10 Server. Einen solchen Server kann man sich einfach mit Hilfe z.B. der Virtualbox lokal auf seinem Rechner einrichten. Dazu benötigt man ca. 10 GB Festplatten Platz und genug RAM damit die Virtuelle VM nicht zu langsam ist.

Wer noch Ubuntu <= 13.10 verwendet sollte die Anmerkungen unter der Docker URL befolgen.

Docker kann einfach mit dem Tool “wget” heruntergeladen werden und mit sh wird der Installationsprozess gestartet:

Validieren kann man die Installation mit:

Erste Schritte

Um die ersten Kenntnisse und Schritte in Docker zu lernen empfehle ich das Online Tutorial von Docker:

https://www.docker.com/tryit/

Travis-Ci – Continuous Integration Tool für OpenSource Github Projekte

Wer ein OpenSource Github Projekt hat und dieses gerne automatisch bauen lassen möchte z.B. mit maven, gradle, composer etc. kann das mit https://travis-ci.com/.  Es ist natürlich auch mit nicht OpenSource Projekten möglich, dann aber nicht mehr kosten frei (https://travis-ci.com/plans).

Um es mit Github zu verwenden muss man auf “Start your free trial!” klicken und dann die Verbindung mit Github herstellen. Danach kann man dann einzelne Github Repos hinzufügen.

Damit der Build auch ausgeführt werden kann wird im root Verzeichnis eine Datei mit dem Namen “.travis.yml” benötigt. Als Syntax wird hier die Sprache YAML verwendet. Unter der Url http://lint.travis-ci.org/ kann man die Datei validieren lassen.

Für ein Java Maven Projekt könnte die Datei z.B. wie folgt aussehen:

language: java
install: mvn clean install

Weitere Beispiele gibt es auch unter https://github.com/travis-ci-examples.

Wenn alles erfolgreich war sieht es wie unter https://travis-ci.org/lightszentip/password-security aus.

Git – nützliche Links

Ein paar nützliche Links zu git:

https://kleinweby.de/2012/03/git-bisect-wer-hat-wann-was-kaputt-gespielt/ <– verwenden von bitsect

http://git-scm.com/book/de/ <– Git Buch online

http://try.github.io/levels/1/challenges/1 <– Intaraktives Tutorial im Browser

http://rogerdudler.github.io/git-guide/ <– Simple Git Guide

https://www.youtube.com/watch?v=ZDR433b0HJY

Git origin per console löschen:

Maven – Prüfen ob neue Versionen der dependencies verfügbar sind

Hallo, mit dem Plugin “versions-maven-plugin” kann man z.B. bei mvn install anzeigen lassen, ob die dependencies noch aktuell sind:

Wenn man das ganze um folgendes erweitert Continue reading “Maven – Prüfen ob neue Versionen der dependencies verfügbar sind”

Graylog2 Server start script

Das folgende Start Script startet einen Graylog2 Server unter ubunut:

/etc/init.d/graylog2-server

Graylog2 Web Interface start script

Das folgende Script startet das web-interface von Graylog2.

/etc/init.d/graylog2-web-interface: