image:https://travis-ci.com/teiid/teiid-spring-boot.svg?branch=master["Build Status", link="https://travis-ci.com/teiid/teiid-spring-boot"]

= Teiid Spring Boot Starter

Primary purpose of `teiid-spring-boot` is to enable Teiid in Spring Boot applications. The Teiid can be added using Maven dependency below to your Spring Boot application pom.xml file.

[source,xml]
----
<dependency>
   <groupId>org.teiid</groupId>
   <artifactId>teiid-spring-boot-starter</artifactId>
   <version>{{ book.versionNumber }}</version>
</dependency>
----

**Key Features:**

* Enables Teiid for Spring Boot applications
* Supports translators/connectors auto-detection 
* Enable Externalized .yml/.properties based configuration
* Supports VDB building using Spring style Annotations.

Refer to link:docs/UserGuide.adoc[User Guide] for more details.

== Build

* install JDK 1.8 or higher
* install maven 3.2+ - http://maven.apache.org/download.html
* Create a github account fork the teiid-spring-boot

Enter the following:

[source,xml]
----
$ git clone https://github.com/<yourname>/teiid-spring-boot.git
$ cd teiid-spring-boot
$ mvn clean install
----

The directory structure is defined as follows:
----
/teiid-spring-boot
    /starter -> Main Bootstaping application
    /data -> Contains all the different data sources that Teiid supports (RDBMS is implicitly supported)
    /odata -> starter app for providing the odata support
    /samples -> various examples show casing different data sources
    /starter-test -> tests
    /docs -> Documents
----       

==  Useful Links

* Website - http://teiid.org
* Documentation - http://teiid.github.io/teiid-documents/master/content/
* Documentation Project - https://teiid.gitbooks.io
* JIRA Issues -  https://issues.jboss.org/browse/TEIID
* User Forum - https://community.jboss.org/en/teiid?view=discussions
* Wiki - https://community.jboss.org/wiki/TheTeiidProject

== How to do a release

----
git pull upstream master
mvn -DautoVersionSubmodules=true -P release clean package release:prepare
mvn -P release release:perform
----
