Author: buildbot
Date: Thu Oct 2 12:56:28 2014
New Revision: 924399
Log:
Staging update by buildbot for sling
Modified:
websites/staging/sling/trunk/content/ (props changed)
websites/staging/sling/trunk/content/documentation/development/slingstart.html
Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Thu Oct 2 12:56:28 2014
@@ -1 +1 @@
-1628691
+1628963
Modified:
websites/staging/sling/trunk/content/documentation/development/slingstart.html
==============================================================================
---
websites/staging/sling/trunk/content/documentation/development/slingstart.html
(original)
+++
websites/staging/sling/trunk/content/documentation/development/slingstart.html
Thu Oct 2 12:56:28 2014
@@ -18,7 +18,7 @@
limitations under the License.
-->
<head>
- <title>Apache Sling - Apache SlingStart</title>
+ <title>Apache Sling - The Apache Sling Provisioning Model and Apache
SlingStart</title>
<link rel="icon" href="/res/favicon.ico">
<link rel="stylesheet" href="/res/site.css" type="text/css" media="all">
<link rel="stylesheet" href="/res/codehilite.css" type="text/css"
media="all">
@@ -88,17 +88,18 @@
- <h1>Apache SlingStart</h1>
- <p>SlingStart defines a model to provision an OSGi based application. It
can also be used to define a partial application aka feature or subsystem.#</p>
-<p>The model is used by tooling, e.g. the slingstart-maven-plugin to build an
executable application or web application.</p>
+ <h1>The Apache Sling Provisioning Model and Apache SlingStart</h1>
+ <p>The Apache Sling provisioning model is a model to describe OSGi based
application. It can also be used to define a partial application aka feature or
subsystem.</p>
+<p>The model is used by various tooling, e.g. the slingstart-maven-plugin to
build an executable application or web application.</p>
<h2 id="the-model">The Model</h2>
<p>The model is a simple API consisting of data objects:</p>
<ul>
-<li>Subsystem : this is the central object holding all the definitions. A
subsystem consists of properties and run modes.</li>
-<li>Subsystem properties: These properties can be used as variables for
version definitions of artifacts.</li>
-<li>Run Mode : A run mode contains artifacts, configurations, and settings.
The artifacts are divided into start levels.</li>
-<li>Start Level: A start level contains a set of artifacts (usually
bundles)</li>
-<li>Artifact: A deployable artifact </li>
+<li>Model: This is the central object. It consists of features.</li>
+<li>Feature : this is the central object describing a (partial) system. A
feature consists of variables and run modes.</li>
+<li>Variables: These can be used to define artifact versions, settings values
or configuration property values.</li>
+<li>Run Mode : A run mode contains artifacts, configurations, and settings.
The artifacts are divided into artifact groups.</li>
+<li>Artifact Group: A group of artifacts with an associated start level (the
artifacts are usually bundles)</li>
+<li>Artifact: A deployable artifact described by Maven coordinates.</li>
<li>Configuration: A OSGi configuration</li>
<li>Settings : Framework settings for the OSGi framework</li>
</ul>
@@ -106,10 +107,8 @@
<p>The default run mode is always active, and all information provided there
will be used/started.
Custom run modes can be used to configure for different situations. Depending
on which run mode is used to start the instance a different set of artifacts or
configurations is used.
Each run mode is associated with a set of run mode names. Only if all listed
run modes are active, the definition is used.</p>
-<p>The model also supports special run modes, which are have special meaning.
By default, these pre defined special run modes are available:</p>
+<p>The model also supports special run modes, which have special meaning. By
default, these pre defined special run modes are available:</p>
<ul>
-<li>:base This run mode contains the dependency to Sling's launchpad artifact
to be used. This mode is required if Apache Sling Launchpad should be used to
start the application.</li>
-<li>:boot The artifacts that are installed before the framework is started.
They're used to bootstrap the system.</li>
<li>:standalone Artifacts for the standalone application - in contrast to a
war.</li>
<li>:webapp Artifacts for the webapp only</li>
</ul>
@@ -127,50 +126,49 @@ Special configurations can be marked wit
</ul>
<h3 id="settings">Settings</h3>
<p>Settings are key value pairs that are added to the framework properties.
For now, only settings for the run modes :boot, :base, :standalone, or :webapp
are supported.</p>
-<h2 id="xml-configuration">XML Configuration</h2>
-<p>The XML format to define a subsystem is not as strict as the model itself,
e.g. it allows to directly specify artifacts and configurations on the
subsystem level. These are added to the default run mode.
-This makes the XML more compact as usually subsystems do not use specific
start levels.</p>
-<p>A subsystem can be configured through an XML file:</p>
-<div class="codehilite"><pre><span class="cp"><?xml
version="1.0"?></span>
-<span class="nt"><subsystem></span>
- <span class="nt"><properties></span>
- eventadmin.version=1.0.0
- metatype.version=1.2.0
- <span class="nt"></properties></span>
- <span class="nt"><runMode/></span>
-
- <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"eventadmin"</span>
<span class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">eventadmin</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
- <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"metatype"</span> <span
class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">metatype</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
- <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"coordinator"</span>
<span class="na">version=</span><span class="s">"3.0.0"/</span><span
class="nt">></span>
-
- <span class="nt"><configuration</span> <span
class="na">pid=</span><span
class="s">"org.apache.sling.eventadmin"</span><span
class="nt">></span>
- useQueue=true
- ignoreTopics=["myTopic"]
- <span class="nt"></configuration></span>
-<span class="nt"></subsystem></span>
+<h3 id="features">Features</h3>
+<p>Features group run modes and defined a special functionality. The model
also defines two special features:</p>
+<ul>
+<li>:launchpad This feature contains the dependency to Sling's launchpad
artifact to be used. This mode is required if Apache Sling Launchpad should be
used to start the application.</li>
+<li>:boot The artifacts that are installed before the framework is started.
They're used to bootstrap the system.</li>
+</ul>
+<h2 id="model-files">Model Files</h2>
+<p>The model comes also with a textual description language:</p>
+<div class="codehilite"><pre><span class="k">[feature name=my-feature]</span>
+ <span class="k">[variables]</span>
+ <span class="na">eventadmin.version</span><span
class="o">=</span><span class="s">1.0.0</span>
+<span class="s"> metatype.version=1.2.0</span>
+
+ <span class="k">[artifacts]</span>
+ <span
class="err">org.apache.sling/eventadmin/${eventadmin.version}</span>
+ <span class="err">org.apache.sling/metatype/${metatype.version}</span>
+ <span class="err">org.apache.sling/coordinator/3.0.0</span>
+ <span class="k">[configurations]</span>
+ <span class="err">org.apache.sling.eventadmin</span>
+ <span class="na">useQueue</span><span class="o">=</span><span
class="s">true</span>
+<span class="s"> ignoreTopics=["myTopic"]</span>
</pre></div>
<p>A configuration for a run mode looks like this:</p>
-<div class="codehilite"><pre><span class="nt"><subsystem></span>
- <span class="nt"><runMode</span> <span class="na">modes=</span><span
class="s">"mymode"</span><span class="nt">></span>
-
- <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span class="s">"metatype"</span>
<span class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">metatype</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
- <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span
class="s">"coordinator"</span> <span class="na">version=</span><span
class="s">"3.0.0"/</span><span class="nt">></span>
-
- <span class="nt"><configuration</span> <span
class="na">pid=</span><span
class="s">"org.apache.sling.eventadmin"</span><span
class="nt">></span>
- useQueue=true
- ignoreTopics=["myTopic"]
- <span class="nt"></configuration></span>
-
- <span class="nt"><startLevel</span> <span
class="na">level=</span><span class="s">"5"</span><span
class="nt">></span>
- <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span
class="s">"eventadmin"</span> <span class="na">version=</span><span
class="s">"</span><span class="cp">${</span><span
class="n">eventadmin</span><span class="o">.</span><span
class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
- <span class="nt"></startLevel></span>
- <span class="nt"></runMode></span>
-<span class="nt"></subsystem></span>
+<div class="codehilite"><pre><span class="k">[feature name=my-feature]</span>
+ <span class="k">[variables]</span>
+ <span class="na">eventadmin.version</span><span
class="o">=</span><span class="s">1.0.0</span>
+<span class="s"> metatype.version=1.2.0</span>
+
+ <span class="k">[artifacts runModes=mymode]</span>
+ <span class="err">org.apache.sling/metatype/${metatype.version}</span>
+
+ <span class="k">[artifacts startLevel=5 runModes=mymode]</span>
+ <span
class="err">org.apache.sling/eventadmin/${eventadmin.version}</span>
+
+ <span class="k">[configurations runModes=mymode]</span>
+ <span class="err">org.apache.sling.eventadmin</span>
+ <span class="na">useQueue</span><span class="o">=</span><span
class="s">true</span>
+<span class="s"> ignoreTopics=["myTopic"]</span>
</pre></div>
<div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
- Rev. 1626173 by cziegeler on Fri, 19 Sep 2014 10:30:46 +0000
+ Rev. 1628963 by cziegeler on Thu, 2 Oct 2014 12:56:19 +0000
</div>
<div class="trademarkFooter">
Apache Sling, Sling, Apache, the Apache feather logo, and the Apache
Sling project