Michael Blow | f93d7f5 | 2016-10-07 14:36:30 -0400 | [diff] [blame] | 1 | <!DOCTYPE html> |
| 2 | <html lang="en"> |
| 3 | <head> |
| 4 | <meta charset="utf-8"> |
| 5 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| 6 | <meta name="viewport" content="width=device-width, initial-scale=1"> |
| 7 | <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> |
| 8 | <meta name="description" content=""> |
| 9 | <meta name="author" content=""> |
| 10 | <link rel="icon" href="favicon.ico"> |
| 11 | |
| 12 | <title>AsterixDB Extensions</title> |
| 13 | |
| 14 | <!-- Bootstrap core CSS --> |
| 15 | <link href="css/bootstrap.min.css" rel="stylesheet"> |
| 16 | <!-- Bootstrap theme --> |
| 17 | |
| 18 | <!-- Custom styles for this template --> |
| 19 | <link href="css/theme.css" rel="stylesheet"> |
| 20 | |
| 21 | <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> |
| 22 | <!--[if lt IE 9]> |
| 23 | <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> |
| 24 | <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
| 25 | <![endif]--> |
| 26 | <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"> |
| 27 | </head> |
| 28 | |
| 29 | <div class="container theme-showcase" role="main"> |
| 30 | <div class="masthead"> |
| 31 | <p class="lead"> |
| 32 | <a href="index.html"> |
| 33 | <img src="img/asterixdb_tm.png" style="height:75px; width:auto; vertical-align:bottom; margin-top:10px;"/> |
| 34 | </a> |
| 35 | </p> |
| 36 | </div> |
| 37 | |
| 38 | <nav class="navbar navbar-default"> |
| 39 | <div class="container"> |
| 40 | <div class="navbar-header"> |
| 41 | <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse"> |
| 42 | <span class="sr-only">Toggle navigation</span> |
| 43 | <span class="icon-bar"></span> |
| 44 | <span class="icon-bar"></span> |
| 45 | <span class="icon-bar"></span> |
| 46 | </button> |
| 47 | <a class="navbar-brand" href="index.html">Overview</a> |
| 48 | </div> |
| 49 | <div class="navbar-collapse collapse"> |
| 50 | <ul class="nav navbar-nav"> |
| 51 | <li><a href="download.html">Download</a></li> |
| 52 | <li class="dropdown"> |
| 53 | <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Documentation<span class="caret"></span></a> |
| 54 | <ul class="dropdown-menu" role="menu"> |
| 55 | <li class="dropdown-header">Stable release</li> |
| 56 | <li><a href="docs/0.8.8-incubating/index.html">Documentation for 0.8.8-incubating<i class="fa fa-external-link fa-sm"></i></a></li> |
| 57 | <li class="divider"></li> |
| 58 | <li class="dropdown-header">Snapshot release</li> |
| 59 | <li><a href="https://ci.apache.org/projects/asterixdb/index.html">Documentation for 0.8.9-SNAPSHOT <i class="fa fa-external-link fa-sm"></i></a></li> |
| 60 | </ul> |
| 61 | </li> |
| 62 | <li><a href="about.html">About</a></li> |
| 63 | <li class="dropdown"> |
| 64 | <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a> |
| 65 | <ul class="dropdown-menu" role="menu"> |
| 66 | <li><a href="community.html">Mailing Lists</a></li> |
| 67 | <li><a href="community.html#irc">IRC</a></li> |
| 68 | <li><a href="community.html#asterixdb-team">Team</a></li> |
| 69 | <li><a href="https://issues.apache.org/jira/browse/ASTERIXDB">Issue Tracker</a></li> |
| 70 | </ul> |
| 71 | </li> |
| 72 | <li class="dropdown"> |
| 73 | <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Development<span class="caret"></span></a> |
| 74 | <ul class="dropdown-menu" role="menu"> |
| 75 | <li class="dropdown-header">For New Contributors</li> |
| 76 | <li><a href="dev-setup.html">Development Setup</a></li> |
| 77 | <li class="divider"></li> |
| 78 | <li class="dropdown-header">For Committers</li> |
| 79 | <li><a href="pushing.html">Pushing changes</a></li> |
| 80 | <li><a href="site.html">Editing this site</a></li> |
| 81 | <li class="dropdown-header">Extensions</li> |
| 82 | <li><a href="extension.html">Extending AsterixDB</a></li> |
| 83 | </ul> |
| 84 | </li> |
| 85 | </ul> |
| 86 | <ul class="nav navbar-nav navbar-right"> |
| 87 | <li class="dropdown"> |
| 88 | <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false" |
| 89 | style="padding-right: 30px"> |
| 90 | <img src="img/feather.png" style="height:20px"/>Apache Software Foundation<span class="caret"/> |
| 91 | </a> |
| 92 | <ul class="dropdown-menu dropdown-menu-right" role="menu"> |
| 93 | <li><a href="http://www.apache.org/"><b>ASF Homepage</b></a></li> |
| 94 | <li><a href="http://www.apache.org/licenses/">License</a></li> |
| 95 | <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li> |
| 96 | <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li> |
| 97 | <li><a href="http://www.apache.org/security/">Security</a></li> |
| 98 | </ul> |
| 99 | </li> |
| 100 | </ul> |
| 101 | </div><!--/.nav-collapse --> |
| 102 | </div> |
| 103 | </nav> |
| 104 | |
| 105 | |
| 106 | <div class="row"> |
| 107 | <div class="col-md-8 col-centered"> |
| 108 | <h2>AsterixDB Extensions</h2> |
| 109 | <ul id="markdown-toc"> |
| 110 | <li><a href="#integrating-with-asterixdb-build" id="markdown-toc-integrating-with-asterixdb-build">Integrating with AsterixDB Build</a> <ul> |
| 111 | <li><a href="#bill-of-materials-maven-module" id="markdown-toc-bill-of-materials-maven-module">Bill of Materials Maven Module</a></li> |
| 112 | </ul> |
| 113 | </li> |
| 114 | </ul> |
| 115 | |
| 116 | <hr /> |
| 117 | |
| 118 | <h2 id="integrating-with-asterixdb-build">Integrating with AsterixDB Build</h2> |
| 119 | |
| 120 | <p>Extensions can be built as part of the AsterixDB + Hyracks build by adding a module in ‘asterixdb/asterix-opt’ The |
| 121 | presence of a pom.xml in this directory adds this to the maven reactor as a sub-module of asterixdb.</p> |
| 122 | |
| 123 | <h3 id="bill-of-materials-maven-module">Bill of Materials Maven Module</h3> |
| 124 | |
| 125 | <p>A Bill of Materials (i.e. BOM) must be provided to indicate which (if any) jars & dependencies should be included in |
| 126 | the AsterixDB (e.g. asterix-server, asterix-installer, etc.) binary assemblies. Typically, the maven module defined |
| 127 | in asterixdb/asterix-opt will have a BOM project as a sub-module.</p> |
| 128 | |
| 129 | <p>This BOM must have the following coordinates, as this is used as the linkage into the asterix-server binary-assembly: |
| 130 | <code>org.apache.asterix:asterix-opt-bom:0.8.9-SNAPSHOT:pom</code> (<em>version must match AsterixDB project version</em>)</p> |
| 131 | |
| 132 | <p>Any dependencies specified in the BOM (as well as transitive dependencies) will be included in the AsterixDB binary |
| 133 | assemblies. If no jars are desired to be included in the AsterixDB binary assemblies, the BOM need not specify any |
| 134 | dependencies.</p> |
| 135 | |
| 136 | <h4 id="example-bom">Example BOM</h4> |
| 137 | |
Till Westmann | 6d47eed | 2016-10-08 20:21:30 -0700 | [diff] [blame] | 138 | <pre><code><project |
| 139 | xmlns="http://maven.apache.org/POM/4.0.0" |
| 140 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| 141 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> |
Michael Blow | f93d7f5 | 2016-10-07 14:36:30 -0400 | [diff] [blame] | 142 | |
Till Westmann | 6d47eed | 2016-10-08 20:21:30 -0700 | [diff] [blame] | 143 | <modelVersion>4.0.0</modelVersion> |
Michael Blow | f93d7f5 | 2016-10-07 14:36:30 -0400 | [diff] [blame] | 144 | |
Till Westmann | 6d47eed | 2016-10-08 20:21:30 -0700 | [diff] [blame] | 145 | <!-- project coordinates --> |
| 146 | <groupId>org.apache.asterix</groupId> |
| 147 | <artifactId>asterix-opt-bom</artifactId> |
| 148 | <version>0.8.9-SNAPSHOT</version> |
| 149 | <name>psu-nittany-bom</name> |
| 150 | <description>Penn State Nittany Lion Search Extension to AsterixDB</description> |
Michael Blow | f93d7f5 | 2016-10-07 14:36:30 -0400 | [diff] [blame] | 151 | |
Till Westmann | 6d47eed | 2016-10-08 20:21:30 -0700 | [diff] [blame] | 152 | <!-- any dependencies listed here will be included in --> |
| 153 | <!-- asterix-server, etc. binary assemblies --> |
| 154 | <dependencies> |
| 155 | <dependency> |
| 156 | <groupId>edu.psu.cs</groupId> |
| 157 | <artifactId>nittany-search</artifactId> |
| 158 | <version>0.1.0-SNAPSHOT</version> |
| 159 | <packaging>pom</packaging> |
| 160 | </dependency> |
| 161 | </dependencies> |
| 162 | </project> |
Michael Blow | f93d7f5 | 2016-10-07 14:36:30 -0400 | [diff] [blame] | 163 | </code></pre> |
| 164 | |
| 165 | </div> |
| 166 | </div> |
| 167 | |
| 168 | |
| 169 | <hr/> |
| 170 | |
| 171 | <footer> |
| 172 | <div class="row"> |
| 173 | <div class="col-md-9 col-centered text-center"> |
| 174 | <p/> |
| 175 | <p>© Copyright 2016 The Apache Software foundation. All Rights Reserved. </p> |
| 176 | <p>Apache AsterixDB, the Apache AsterixDB logo, Apache, and the Apache feather logo are trademarks of the |
| 177 | Apache Software Foundation</p> |
| 178 | </div> |
| 179 | </div> |
| 180 | </footer> |
| 181 | </div> <!-- /container --> |
| 182 | |
| 183 | <!-- Bootstrap core JavaScript |
| 184 | ================================================== --> |
| 185 | <!-- Placed at the end of the document so the pages load faster --> |
| 186 | <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> |
| 187 | <script src="js/bootstrap.min.js"></script> |
| 188 | </body> |
| 189 | </html> |