Testdatengeneratoren als Microservices mit Docker überarbeitet

Ich habe die verschiedenen Testdatengeneratoren mittels Microservices über HTTP zugänglich gemacht, um sie unabhängig von der verwendeten Programmiersprache und/ oder Version (Java 11) verwenden zu können. Die betreffenden Projekte wurden überarbeitet.

Ich habe inzwischen zwei OpenSource-Projekte gestartet, die die verfügbaren Generatoren mittels zweier verschiedener Frameworks - Javalin und Quarkus - als REST-Services verfügbar machen.

Die beiden GitHub-Repositories - eines für die Variante mit Javalin und eines für die Variante mit Quarkus -

wurden nunmehr einer größeren Überarbeitung unterzogen:

Zunächst einmal bekamen beide eine Start-Seite spendiert, die man mittels Browser aufrufen kann. Diese enthält einige nützliche Links.

Zwei dieser Links führen zu den neuen für Anwender sichtbaren Features: Beide Varianten stellen eine OpenAPI-Spezifikation der Services zur Verfügung - das macht es für Anwender noch leichter, die Generatoren in eigene Projekte zu integrieren.

Der andere dieser zwei Links führt zu einer Seite, auf der mittels Swagger-UI für jeden Service (Generator) ein Formular aus dieser OpenAPI-Beschreibung erzeugt wurde. Damit ist es ein Leichtes, mit den verschiedenen Generatoren und ihren jeweiligen Parametern zu spielen um den passenden für den eigenen Anwendungszweck zu finden.

Die letzte große Änderung in den Projekten betrifft die Quelltexte selbst und ist daher eine Erleichterung für mich:

Die Erzeugung des Codes, der zwischen den Generatoren einerseits und den REST-Frameworks andererseits vermittelte war eine extrem langweilige weil nur in Nuancen abweichende immer gleiche Arbeit. Das war auch der Grund, warum die Variante mit Quarkus bisher nur eine minimale Anzahl an Generatoren anbot und auch die Variante mit Javalin nur eine Untermenge umfasste.

Ich erzeugte daher eine neue Annotation und einen dazu passenden Annotation-Prozessor, der es mir erlaubt, diesen Zwischen-Code auf Knopfdruck zu erzeugen.

Die beiden Projekte können immer noch unmittelbar in Docker integriert werden: Mit einem einfachen docker-compose up lassen sich beide Projekte in ein Docker-Image überführen und starten. Für Einbinden in Traefik sind im Dockerfile bereits Vorkehrungen getroffen, die nur noch leicht angepasst werden müssen.

Artikel, die hierher verlinken

Neue Generatoren für JSON, iCal und vCard

30.12.2020

Nachdem ich vor einiger Zeit meinen Testdatengenerator um einen Builder für beliebige JSON-Strukturen erweitert hatte habe ich nun die beiden auf GitHub veröffentlichten Microservice-Container zur Testdaten-Generierung basierend auf javalin und Quarkus um neue Generatoren erweitert, die die Flexibilität demonstrieren sollen.

NullPointer in FontConfig in Alpine-Java-Docker

30.08.2020

Ich habe nach zwei Tagen herumprobieren doch wieder ein Ticket auf GitHub eröffnet.

Testdaten für ein XML Schema generieren

01.05.2020

Ich suche immer wieder nach neuen Ideen, möglichst einfach problemangepasste Testdaten zu erzeugen. Diesmal habe ich damit begonnen, XML-Dokumente zu erzeugen, die einem vorgegebenen XML-Schema genügen sollten

Dynamische Gitlab Badges IV

07.12.2019

Die in den vorhergegangenen Artikeln beschriebene Idee, Badges für Gitlab zu erzeugen mündete nun endlich in ein Github-Projekt...

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Mandelbrot-Sets mittels Shadern berechnen

    17.05.2019

    Nachdem ich in den letzten verregneten Tagen auf Youtube in den Videos von Numberphile versunken bin, hat mich eines davon angestachelt, mich selbst mit dem Mandelbrotset zu beschäftigen. Als ich dann noch Code fand, der behauptete, das auf einer Graphikkarte mittels Shadern berechnen zu können, war es um mich geschehen...

    Weiterlesen...

Neueste Artikel

  • Erste Vor-Version eines Gis-Plugin für die sQLshell

    Wie bereits in einem früheren Artikel erwähnt plane ich, demnächst ein Plugin für die sQLshell anzubieten, das eine Visualisierung von Daten mit räumlichem Bezug im Stil eines Geoinformationssystems erlaubt.

    Weiterlesen...
  • bad-certificates Version 2.1.0

    Das bereits vorgestellte Projekt zur automatisierten Erzeugung von Zertifikaten mit allen möglichen Fehlern hat eine Erweiterung erfahren und verfügt über ein Partnerprojekt - beide sind nunmehr in der Version 2.1.0 freigegeben

    Weiterlesen...
  • SQLite als Geodatenbank

    Wie bereits in einem früheren Artikel beschrieben treibe ich derzeit Anstrengungen voran, die sQLshell attraktiver für Nutzer zu machen, die mit Geodatenbanken arbeiten.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.