Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-25303

Server adapter: support hot-deployment on OpenShift for SpringBoot app


      currently, Springboot jar projects (such as Fuse Integration Services) are rsynced with a zipped jar file.
      The requirements are:

      • rsync unpacked jar
      • rsync without the jar name as folder
      • it will will work only if springboot devtool are included (so maybe need some dialog guiding user to do i in case it is not activated)

      use case "Develop SpringBoot application deployed on OpenShift as any other applications in JBoss Tools":

      • there is a SpringBoot app deployed on OpenShift
      • the developer want to develop evolution of the SpringBoot app
        • when he/she modifies the project, the application needs to be automatically updated on OpenShift instance
        • Remote java debug should be available when the OpenShift server adapter is in debug mode.


      1. EXEC: create a project in your OpenShift server (ex. camel-ose-springboot)
      2. EXEC: Import project within fuse-on-openshift.zip into your workspace
      3. EXEC: open launch configuration and change:
        • -Dkubernetes.master= so that it first your cdk instance
        • -Dkubernetes.namespace= to the name of the project that you create in step 1.
        • -Dfabric8.generator.from=fabric8/s2i-java
      4. EXEC: run the launch config (that is included in the project), so that the project gets deployed to OpenShift (cdk)
      5. ASSERT: your project in OpenShift now contains a service *camel-ose-springboot-xml*, the pod for it is running.
      6. EXEC: in OpenShift Explorer: select this service and create a server adapter for it (Server Adapter.. in the context menu for the service)
      7. ASSERT: server adapter is created and is [started]
      8. EXEC: in OpenShift Explorer: pick Pod Log... in the context menu for the pod of your service)
      9. ASSERT: pod log is opened in "Console" view and shows an output with random numbers in the end
        simple-route - >>> 455
        simple-route - >>> 695
        simple-route - >>> 935
      10. EXEC: In Project Explorer: open class MyTransformer and change the transform method
      11. ASSERT: "Console" view is opened and shows how the server adapter is publishing the MyTransformer class to the pod

        1. docker-explorer-inspect-image.png
          130 kB
        2. fuse-on-openshift.zip
          31 kB
        3. Image+Pasted+at+2018-1-16+10-58.png
          83 kB
        4. project-deployment-assembly.png
          46 kB
        5. screenshot-1.png
          41 kB
        6. spring-boot-demo.zip
          50 kB

            adietish@redhat.com André Dietisheim
            apupier@redhat.com Aurélien Pupier
            0 Vote for this issue
            6 Start watching this issue