Tuesday, June 9, 2020

Cloud Native Application Builder

This is my new Open Source project, aiming to manage cloud native application in more efficient way with experience similar to monolithic application.



The project is designed to allow adding code and deployment generators per technology so by time more components will be added easily.
The project/code generation will be enhanced to include draft implementations and in the future the tool will commit the generated code into a git repository.
Currently the project have the initial support for Qurarkus, SpringBoot and Java in addition to generating deployment commands for Tomcat, JBoss, MySQL, MongoDB, MariaDB, Redis and PostgreSQL. It is still in early development phases so expect some changes and improvement over time.





Project GitHub Location:



You can import this maven project into an IDE and execute it, or run the maven commands:

mvn clean install compile package
And then deploy into into any application server such as Glassfish, Tomcat, JBoss, WebLogic, WebSphere, etc.

Also you can deploy it directly into OpenShift using S2I:

oc new-app --name=my-designer jboss-webserver30-tomcat8-openshift:1.3~https://github.com/osa-ora/app-designer  
And then expose a router to the application:
oc expose service my-desginer 
Access the application using {route_url}/AppBuilder-1.0-SNAPSHOT/

There is a "sample.json" file in the GIT repository in the "samples" folder where you can load it or create your own application stack (it load and save applications in JSON format).

Disclaimer: This tool is still under development, anyone willing to join and work on it, feel free to contact me :)