[
https://issues.jboss.org/browse/JBIDE-25303?page=com.atlassian.jira.plugi...
]
Andre Dietisheim commented on JBIDE-25303:
------------------------------------------
[~aurelien.pupier] I tried to explain that in my
[
comment|https://issues.jboss.org/browse/JBIDE-25303?focusedCommentId=1349...].
The example fuse-on-openshift (as it is now once imported into Eclipse) compiles classes
into <project>/target/classes, there is no BOOT-INF in it. On the other hand, the
pod expects changed classes in <deployment-root>/BOOT-INF/classes. The BOOT-INF
comes from the fact that it is unpacking the jar that it got from the fabric8-maven
plugin. Both paths (project-, pod-) dont match. So the question is how to have the project
to "package" classes into BOOT-INF/classes so that the adapter has the same path
on both ends. [~rob.stryker] was suggeting the configuration in the "Deployment
Assembly" that i pointed out above. He also mentioned that there are m2e-wtp bridges
that could fullfill this. [~jeffmaury] doesnt seem to agree on the assembly approach.
[~rob.stryker] Toughts?
Server adapter: support hot-deployment on OpenShift for SpringBoot
app
----------------------------------------------------------------------
Key: JBIDE-25303
URL:
https://issues.jboss.org/browse/JBIDE-25303
Project: Tools (JBoss Tools)
Issue Type: Feature Request
Components: openshift
Affects Versions: 4.5.1.Final
Reporter: Aurélien Pupier
Assignee: Andre Dietisheim
Labels: openshift_v3, server_adapter
Fix For: 4.5.2.AM2
Attachments: fuse-on-openshift.zip, project-deployment-assembly.png,
spring-boot-demo.zip
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.
Steps:
# EXEC: create a project in your OpenShift server (ex. camel-ose-springboot)
# EXEC: Import project within fuse-on-openshift.zip into your workspace
# 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.
# EXEC: run the launch config (that is included in the project), so that the project gets
deployed to OpenShift (cdk)
# ASSERT: your project in OpenShift now contains a service **camel-ose-springboot-xml**,
the pod for it is running.
# EXEC: in OpenShift Explorer: select this service and create a server adapter for it
(*Server Adapter..* in the context menu for the service)
# ASSERT: server adapter is created and is *[started]*
# EXEC: in OpenShift Explorer: pick *Pod Log...* in the context menu for the pod of your
service)
# ASSERT: pod log is opened in "Console" view and shows an output with random
numbers in the end
{code}
simple-route - >>> 455
simple-route - >>> 695
simple-route - >>> 935
{code}
# EXEC: In Project Explorer: open class MyTransformer and change the transform method
# ASSERT: "Console" view is opened and shows how the server adapter is
publishing the MyTransformer class to the pod
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)