-
Notifications
You must be signed in to change notification settings - Fork 4
Investigate supporting additional template types or variations #45
Comments
Currently in each template you will find a pom.xml and a pom.xml.wsdl2rest variant. I am investigating what it would take to simply add a "fuse" variant for each to keep the bulk of the templates intact and only vary what artifacts we actually pull in for a particular template at runtime. If I can achieve that, then the majority of the template remains the same and we just use the right pom for the various configuration combinations... i.e. Spring, Spring + wsdl2rest, Spring/Fuse, Spring/Fuse + wsdl2rest, etc. |
Signed-off-by: Brian Fitzpatrick <[email protected]>
-- fixed issue with skipList causing test failures for wsdl2rest Signed-off-by: Brian Fitzpatrick <[email protected]>
Created a PR here (#46) that includes working versions of spring, blueprint, and java templates for both camel and fuse (on a very happy path) with and without wsdl2rest. Happy path:
This works for Spring, Blueprint, and Java templates at present. I need some help tweaking the spring-boot template for use with a fuse spring boot BOM, so hopefully I can pick @apupier 's brain and get that functional. My goal was to use this PR as a discussion point and show the basic approach I wanted to implement. This is the most minimal approach I have come up with, modifying just the pom.xml for the various flavors of the template we want (camel, fuse, camel+wsdl2rest, fuse+wsdl2rest). It works on this minimal set of templates just fine, but will require manual adjustments when versions change. |
So now I need to determine what to do with prompting. I don't think the "--fuse" flag is really what we want to go with. :) Right now we prompt for:
I am wondering if we simply change the second prompt to a cascade that offers different defaults. Something like:
We should be able to still use command line arguments to pass appropriate values to do either, but it's good to give the user a simple choice. Like before, we can provide a default version (2.22.2 for Camel or a supported Fuse version like https://github.com/jbosstools/jbosstools-fuse/blob/master/configuration/camel2bom.fuse71.properties ) and update those defaults (including the Fuse/Camel choice and any versions specified) for later usage. What do you think? |
The best is to not have any templates embedded and rely only on quickstarts and boosters provided by Fuse Runtime team. |
when proposing a Camel productized version, you need to mention the Fuse version as it is done in Eclipse Fuse Tooling wizard. Otherwise, it is too boring for users to know which version of Camel they need to take. I think a conditional flow is better when we want to provide the choice of versions between Camel Community and Fuse versions. |
This manual adjustments when versions changes, even if currently restricted to pom.xml, will become a part of a lot of maintenance burden. We will also have to introduce the mechanism to select templates based on the version. |
As we begin to productize the camel generator it has become clear that we also need to figure out the simplest way to support multiple flavors of the same template. For example, a Fuse-ified spring-boot template as well as a standalone one.
Need to investigate what that means as far as the changes between poms.
The text was updated successfully, but these errors were encountered: