]
Van Halbert commented on TEIID-5563:
------------------------------------
Now that the wildfly reorg is done, can this be closed and a new one opened to focus on
what's to be done next?
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.