05. September 2017

Continuous Integration für Kubernetes mit Jenkins

Continuous Integration für Kubernetes mit Jenkins (Bild: pixabay.com/StockSnap)

Bei der Entwicklung und dem Betrieb von Software mit modernen Microservices sind Continuous Integration (CI) und Continuous Delivery (CD) nicht mehr weg zu denken. Dazu gehört auch die Philosophie, jeden Build der Software gründlich zu testen und aktuell zu halten. Dieser Beitrag befasst sich mit den Herausforderungen bei CI/CD mit Jenkins von Kubernetes-basierten Software Produkten.

Jenkins – von Code zu Container

Das frei verfügbare Produkt Jenkins ist eine Software für das Bauen und Deployen von Applikationen. Es wird weitgehend als CI/CD Software benutzt, da es sehr einfach mit verschiedenen Plugins erweiterbar ist; außerdem ist es einfach zu installieren und lässt sich sehr leicht bedienen.

Über ein Web Interface lassen sich vordefinierte Software Deployments anstoßen, die auch automatisiert in eine Betriebsumgebung (wie Kubernetes) geschickt werden können. Der Deployment-Ablauf beginnt für Jenkins meistens mit einem externen Ereignis. Dies kann zum Beispiel ein Commit in ein Git Repository sein. Jenkins lädt den Software Code aus Git und baut daraus eine Applikation mit allen notwendigen Abhängigkeiten, die anschließend von Jenkins in ein Docker Image verpackt wird. Dieses Docker Image wird danach in ein Docker Repository hochgeladen, damit es für Applikationsserver verfügbar ist. Mit Jenkins haben wir uns in diesem Blog-Beitrag bereits ausführlich auseinandergesetzt. Ganzen Beitrag lesen

25. April 2017

synTechTalk: Jenkins für Entwickler

synTechTalk: Jenkins für Entwickler (Bild: https://wiki.jenkins-ci.org/display/JENKINS/Logo / Creative Commons Attribution-ShareAlike 3.0 Unported License)

Jenkins ist ein hervorragendes Tool für DevOps, da es sowohl den Entwicklungsprozess unterstützen als auch automatische Deployments durchführen kann. In diesem Artikel möchten wir uns auf die Vorteile konzentrieren, die Jenkins im reinen Entwicklungsprozess bietet. Für die Durchführung der hier vorgestellten Demo benötigt man ungefähr 30 Minuten.

Inhaltsverzeichnis

  1. Installation
  2. Einrichtung
  3. Das erste Projekt
  4. Entwickler entlasten
  5. Beseitigung potentieller Fehlerquellen
  6. Unit-Tests
  7. Benachrichtigungen
  8. Fazit

Ganzen Beitrag lesen

09. März 2017

synTechTalk: Selenium – Web Browser Automation in Java

Selenium – Web Browser Automation in Java (Bild: http://www.seleniumhq.org/)

Dieser Blogpost richtet sich an alle, die dabei sind, die Nutzung von Selenium zu erlernen oder die ein generelles Interesse an Browser-Automatisierung haben. Anhand eines kleinen praktischen Beispiels wird demonstriert, wie Selenium zum Testen von Webseiten genutzt werden kann. Als Voraussetzung werden Java-Grundkenntnisse angenommen.

Inhaltsverzeichnis
1. Was kann Selenium?
2. Wie funktioniert Selenium?
3. Testen mit Selenium WebDriver
4. Page Object Design Pattern

1. Was kann Selenium?

Seleniums Hauptfeature ist die Browser-Automatisierung. Diese unterteilt sich in zwei Teile – einmal die Selenium IDE und einmal den Selenium WebDriver. Mit der IDE lassen sich im Browser Aktionen „aufnehmen“. Diese Aufnahmen werden in der eigenen Skriptsprache „Selenese“ gespeichert und können beliebig wiedergegeben werden. Dies ermöglicht die Automatisierung von Abläufen im Browser.

Ganzen Beitrag lesen