[teiid-issues] [JBoss JIRA] (TEIID-5563) Separate the Teiid WildFly distribution into their own repo or module

Steven Hawkins (Jira) issues at jboss.org
Mon Dec 10 17:26:00 EST 2018


    [ https://issues.jboss.org/browse/TEIID-5563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13672977#comment-13672977 ] 

Steven Hawkins commented on TEIID-5563:
---------------------------------------

> But you being one who does all the builds I do understand the pain of more work, so, I am fine whatever we decide in the end

The overriding consideration is can this be done through maven modules alone - especially initially.  If yes, then is using a separate repo overkill. 

> Separate lifecycles is something we should consider IMO. Otherwise, we need to set a precedent and call about teiid-thorntail and teiid-spring-boot and how to handle those with a single build.

The primary release driver is Teiid itself.  When will we release a Teiid 13.1 for example and not the corresponding runtime support?  In my mind this would only occur if/when we have truly fundamental divergence - core Teiid is at JRE X and runtime R is at JRE Y.  Otherwise I would see a release across all runtimes.  

What you are probably more thinking of is likely the scenario that a fix is applicable to only runtime T, then can we get that out "faster", correct?

> Deemphasize WildFly as main distribution, set its course if we want to do regular updates or not. I understand that is we said for 13 and beyond.

See above.  Unless there is a fundamental conflict, I do not see a scenario where it makes sense to release a Teiid 13.1 for example and not do it across all supported runtimes.  Can you define what you mean by irregular updates?  How that would benefit us?  Or are you proposing a further restructuring of the distribution - such that there could be some kind of core teiid overlay on base kit of wildfly + teiid-wildfly integration?

> Gives a better option for the community to be at set Teiid version but update the resource-adapters or WildFly version. We can sync these releases more with WF releases?

Maybe that's an extension of what I'm asking above - are you proposing new kititng / overlay / patching logic?  If so we need to understand what is being proposed.

>  I also would like core Teiid to move to basepom after the changes. Clear separation of modules.
> I see we will be divergent in support of "data sources" based on distribution flavour. I would not be obligated, say if I came up with source support in SB not WildFly or vice versa.

Neither of these necessitate a new repo.


> Separate the Teiid WildFly distribution into their own repo or module
> ---------------------------------------------------------------------
>
>                 Key: TEIID-5563
>                 URL: https://issues.jboss.org/browse/TEIID-5563
>             Project: Teiid
>          Issue Type: Task
>          Components: Build/Kits, Integration Tests
>    Affects Versions: 12.x
>            Reporter: Van Halbert
>            Assignee: Van Halbert
>            Priority: Major
>
> With the different types of distributions now being built based on Teiid like
> * WildFly
> * Thorntail
> * SpringBoot
> * Embedded
> Having main `github.com/teiid` repo contain artifacts for WildFly distribution poses an unnecessary dependency burden on other distributions. For example, the resource adapters are mainly for use with WildFly and Thorntail V2.   They can still be applicable to embedded and SpringBoot as either non-managed connection factories, or require the user to provide appropriate management / pooling.  When they are pulled into environments like SpringBoot they will bring several wildfly dependencies / and JEE constructs that are unnecessary - specifically the dependencies jboss-jaxws-api (teiid-api), javax.activation (teiid-core), jboss-transaction-api (teiid-api), and jboss-connector-api (teiid-api).  
> This proposal is to separate "teiid" core modules along with all translators into one repository and move all the resource adapters along with any feature-packs and module building into a sperate repository like "teiid-wildfly".  With the goal of providing similar connectivity in SpringBoot using as much common logic from SpringBoot (Spring Data in particular) and even Fuse as possible. 
> Basically, when finished, the core Teiid modules only provide Maven artifacts along with their clean pom.xml with for direct and maybe transitive dependencies. None of the WildFly based modules support will be here.  At worst this may introduce duplicate dependencies into the WildFly environment as we will need to manage all core / translator dependencies independently from those provided by WildFly.  Where possible the teiid-api / core modules will need to use the generic javax dependency - or even remove the dependency if possible.
> The "teiid-wildfly" module on the other hand, will exactly preserve what is in the current repo as far feature packs and module building and overall WildFly distribution building.
> A follow-on task we can task we can look into is, converting the main teiid then to use basepom rather than the jboss-parent pom. However, the recommendation is this should be done after, not simultaneously.



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the teiid-issues mailing list