Author: buildbot
Date: Thu Apr 30 14:06:59 2015
New Revision: 949730
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 Apr 30 14:06:59 2015
@@ -1 +1 @@
-1676989
+1676994
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 Apr 30 14:06:59 2015
@@ -226,9 +226,47 @@ Each run mode is associated with a set o
</pre></div>
-<p>Notice that this model only supports string properties. Therefore the
service consuming the configuration needs to be able to adapt a string value to
the correct type.</p>
+<p>Notice that this definition only supports string properties. Therefore the
service consuming the configuration needs to be able to adapt a string value to
the correct type.</p>
+<h2 id="slingstart-and-slingfeature-projects">Slingstart and Slingfeature
projects</h2>
+<p>The slingstart Maven plugin introduces two new packaging types:</p>
+<ul>
+<li>slingstart : This type requires a model at src/main/provisioning. It reads
all text files in that directory and merges them in alphabetical order. The
resulting artifact is a runnable jar. The assembled model is also attached to
the project artifacts.</li>
+<li>slingfeature : This type requires a model at src/main/provisioning. It
reads all text files in that directory and merges them in alphabetical order
and creates a merged model which is the final artifact of this project.</li>
+</ul>
+<p>A model can reference other slingstart or slingfeature artifacts. When such
an artifact is reference, the type needs to be specified, for example:</p>
+<p>[artifacts]
+ org.apache.sling/org.apache.sling.launchpad/8-SNAPSHOT/slingstart
+
org.apache.sling/org.apache.sling.launchpad.test-bundles/0.0.1-SNAPSHOT/slingfeature</p>
+<p>The resulting model is a merged model, starting with the dependencies and
then merging in the current model.</p>
+<h3 id="model-merging">Model Merging</h3>
+<p>Two models are merged feature by feature - each feature is treated as a
separate unit. Within a feature each run mode is treated separately as well.
Within a run mode a model can overwrite definitions from the base model. For
example, it can define a different configuration or a different version and/or
start level for an artifact.
+In addition, it can also remove artifacts and configurations. For this the
special runmode :remove needs to be used together with all run modes the
artifact or configuration is currently in.</p>
+<p>Let's look at an example base model</p>
+<p>[artifacts]
+ my/special/artifact/1.0.0
+ commons/library/1.0.0</p>
+<p>[artifacts runModes=test]
+ another/one/2.1.0</p>
+<p>Now, another model wants to use the above model as it's base but:</p>
+<ul>
+<li>Change the version of the commons library to 1.1.0 and move it to a
different start level.</li>
+<li>Remove the "special artifact"</li>
+<li>Remove the "another one"</li>
+</ul>
+<p>The changing model would mention the above as one artifact and in addition
have:
+ [artifacts startLevel=5]
+ commons/library/1.1.0</p>
+<div class="codehilite"><pre><span class="k">[artifacts
runModes=:remove]</span>
+ <span class="err">my/special/artifact/0.0.0</span>
+
+<span class="k">[artifacts runModes=:remove,test]</span>
+ <span class="err">another/one/0.0.0</span>
+</pre></div>
+
+
+<p>Note that the version for removal does not play a role, it's not compared
for an exact match. Configurations can be removed in the same way by just
specifying their PID in the :remove run mode.</p>
<div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
- Rev. 1674837 by cziegeler on Mon, 20 Apr 2015 13:08:02 +0000
+ Rev. 1676994 by cziegeler on Thu, 30 Apr 2015 14:06:52 +0000
</div>
<div class="trademarkFooter">
Apache Sling, Sling, Apache, the Apache feather logo, and the Apache
Sling project