You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by ri...@apache.org on 2018/04/11 12:24:03 UTC

svn commit: r1828892 [7/18] - in /brooklyn/site/v/1.0.0-SNAPSHOT: ./ blueprints/ blueprints/ansible/ blueprints/catalog/ blueprints/chef/ blueprints/example_yaml/ blueprints/java/ blueprints/salt/ blueprints/test/ blueprints/test/example_yaml/entities/...

Modified: brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/multiple-services.html
URL: http://svn.apache.org/viewvc/brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/multiple-services.html?rev=1828892&r1=1828891&r2=1828892&view=diff
==============================================================================
--- brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/multiple-services.html (original)
+++ brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/multiple-services.html Wed Apr 11 12:24:01 2018
@@ -50,7 +50,7 @@
 
     
         
-        <link rel="stylesheet" href="../website-1509027295765.css">
+        <link rel="stylesheet" href="../website-1523449269765.css">
         
     
         
@@ -1043,7 +1043,7 @@
                 <a href="../locations/">
             
                     
-                    Deploying Blueprint
+                    Deploying Blueprints
             
                 </a>
             
@@ -1615,12 +1615,26 @@
             
         </li>
     
-        <li class="chapter " data-level="1.7.13" data-path="../ops/upgrade.html">
+        <li class="chapter " data-level="1.7.13" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/">
+            
+                    
+                    Upgrades
+            
+                </a>
+            
+
+            
+            <ul class="articles">
+                
+    
+        <li class="chapter " data-level="1.7.13.1" data-path="../ops/upgrades/">
             
-                <a href="../ops/upgrade.html">
+                <a href="../ops/upgrades/#upgrading-brooklyn">
             
                     
-                    Upgrade
+                    Upgrading Brooklyn
             
                 </a>
             
@@ -1628,6 +1642,37 @@
             
         </li>
     
+        <li class="chapter " data-level="1.7.13.2" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/#upgrading-blueprints-and-bundles">
+            
+                    
+                    Upgrading Blueprints
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.3" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/#upgrading-systems-under-management">
+            
+                    
+                    Upgrading Systems under Management
+            
+                </a>
+            
+
+            
+        </li>
+    
+
+            </ul>
+            
+        </li>
+    
         <li class="chapter " data-level="1.7.14" data-path="../ops/security-guidelines.html">
             
                 <a href="../ops/security-guidelines.html">
@@ -2094,8 +2139,9 @@
     
                                 <section class="normal markdown-section">
                                 
-                                <h1 id="multiple-services-and-dependency-injection">Multiple Services and Dependency Injection</h1>
-<p>We&apos;ve seen the configuration of machines and how to build up clusters.
+<h1>Multiple Services and Dependency Injection</h1>
+
+                                <p>We&apos;ve seen the configuration of machines and how to build up clusters.
 Now let&apos;s return to our app-server example and explore how more interesting
 services can be configured, composed, and combined.</p>
 <h3 id="service-configuration">Service Configuration</h3>
@@ -2104,7 +2150,7 @@ services can be configured, composed, an
 <span class="hljs-attr">services:</span>
 <span class="hljs-attr">- type:</span> org.apache.brooklyn.entity.webapp.jboss.JBoss7Server
   brooklyn.config:
-    wars.root: http://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.8</span><span class="hljs-number">.0</span>-incubating/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.8</span><span class="hljs-number">.0</span>-incubating.war
+    wars.root: https://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.12</span><span class="hljs-number">.0</span>/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.12</span><span class="hljs-number">.0</span>.war <span class="hljs-comment"># BROOKLYN_VERSION</span>
     http.port: <span class="hljs-number">8080</span>
 </code></pre>
 <p>(As before, you&apos;ll need to add the <code>location</code> info; <code>localhost</code> will work for these and subsequent examples.)</p>
@@ -2122,7 +2168,7 @@ And it fails, because we have not set on
 <span class="hljs-attr">- type:</span> org.apache.brooklyn.entity.webapp.jboss.JBoss7Server
 <span class="hljs-attr">  name:</span> AppServer HelloWorld 
   brooklyn.config:
-    wars.root: http://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.8</span><span class="hljs-number">.0</span>-incubating/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.8</span><span class="hljs-number">.0</span>-incubating.war
+    wars.root: https://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.12</span><span class="hljs-number">.0</span>/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.12</span><span class="hljs-number">.0</span>.war <span class="hljs-comment"># BROOKLYN_VERSION</span>
     http.port: <span class="hljs-number">8080</span>+
     java.sysprops: 
       brooklyn.example.db.url:
@@ -2188,7 +2234,7 @@ in superclasses and are portable across
 <span class="hljs-attr">- type:</span> org.apache.brooklyn.entity.webapp.tomcat.TomcatServer
 <span class="hljs-attr">  name:</span> AppServer HelloWorld 
   brooklyn.config:
-    wars.root: http://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.8</span><span class="hljs-number">.0</span>-incubating/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.8</span><span class="hljs-number">.0</span>-incubating.war
+    wars.root: https://search.maven.org/remotecontent?filepath=org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/<span class="hljs-number">0.12</span><span class="hljs-number">.0</span>/brooklyn-example-hello-world-sql-webapp<span class="hljs-bullet">-0.12</span><span class="hljs-number">.0</span>.war <span class="hljs-comment"># BROOKLYN_VERSION</span>
     http.port: <span class="hljs-number">8080</span>+
     java.sysprops: 
       brooklyn.example.db.url:
@@ -2215,6 +2261,7 @@ service, a grouping of components, or a
 application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> basis.</p>
 
                                 
+
                                 </section>
                             
     </div>
@@ -2246,7 +2293,7 @@ application/system. It is a &quot;manage
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"Multiple Services and Dependency Injection","level":"1.5.5","depth":2,"next":{"title":"Custom Entities","level":"1.5.6","depth":2,"path":"blueprints/custom-entities.md","ref":"blueprints/custom-entities.md","articles":[]},"previous":{"title":"Configuring VMs","level":"1.5.4","depth":2,"path":"blueprints/configuring-vms.md","ref":"blueprints/configuring-vms.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1509027295765.css","pdf":"pdf-1509027295792.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2}
 ,"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"
 facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","br
 ooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/multiple-services.md","mtime":"2017-10-26T13:41:38.676Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2017-10-26T14:14:53.591Z"},"basePath":"..","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"Multiple Services and Dependency Injection","level":"1.5.5","depth":2,"next":{"title":"Custom Entities","level":"1.5.6","depth":2,"path":"blueprints/custom-entities.md","ref":"blueprints/custom-entities.md","articles":[]},"previous":{"title":"Configuring VMs","level":"1.5.4","depth":2,"path":"blueprints/configuring-vms.md","ref":"blueprints/configuring-vms.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1523449269765.css","pdf":"pdf-1523449269817.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2}
 ,"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"
 facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","br
 ooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/multiple-services.md","mtime":"2018-04-11T12:18:40.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-04-11T12:21:07.465Z"},"basePath":"..","book":{"language":""}});
         });
     </script>
 </div>

Modified: brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/policies.html
URL: http://svn.apache.org/viewvc/brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/policies.html?rev=1828892&r1=1828891&r2=1828892&view=diff
==============================================================================
--- brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/policies.html (original)
+++ brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/policies.html Wed Apr 11 12:24:01 2018
@@ -50,7 +50,7 @@
 
     
         
-        <link rel="stylesheet" href="../website-1509027295765.css">
+        <link rel="stylesheet" href="../website-1523449269765.css">
         
     
         
@@ -1043,7 +1043,7 @@
                 <a href="../locations/">
             
                     
-                    Deploying Blueprint
+                    Deploying Blueprints
             
                 </a>
             
@@ -1615,12 +1615,52 @@
             
         </li>
     
-        <li class="chapter " data-level="1.7.13" data-path="../ops/upgrade.html">
+        <li class="chapter " data-level="1.7.13" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/">
+            
+                    
+                    Upgrades
+            
+                </a>
+            
+
+            
+            <ul class="articles">
+                
+    
+        <li class="chapter " data-level="1.7.13.1" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/#upgrading-brooklyn">
+            
+                    
+                    Upgrading Brooklyn
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.2" data-path="../ops/upgrades/">
+            
+                <a href="../ops/upgrades/#upgrading-blueprints-and-bundles">
+            
+                    
+                    Upgrading Blueprints
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.3" data-path="../ops/upgrades/">
             
-                <a href="../ops/upgrade.html">
+                <a href="../ops/upgrades/#upgrading-systems-under-management">
             
                     
-                    Upgrade
+                    Upgrading Systems under Management
             
                 </a>
             
@@ -1628,6 +1668,11 @@
             
         </li>
     
+
+            </ul>
+            
+        </li>
+    
         <li class="chapter " data-level="1.7.14" data-path="../ops/security-guidelines.html">
             
                 <a href="../ops/security-guidelines.html">
@@ -2094,8 +2139,9 @@
     
                                 <section class="normal markdown-section">
                                 
-                                <h1 id="policies">Policies</h1>
-<p>Policies perform the active management enabled by Brooklyn.
+<h1>Policies</h1>
+
+                                <p>Policies perform the active management enabled by Brooklyn.
 They can subscribe to <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
 service, a grouping of components, or a logical construct describing part of an
 application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> sensors and be triggered by them (or they can run periodically,
@@ -2182,7 +2228,7 @@ this gives up and emits <code>ha.entityF
   brooklyn.config:
 <span class="hljs-attr">    failOnRecurringFailuresInThisDuration:</span> <span class="hljs-number">5</span>m
 </code></pre>
-<p>Typically this is used in conjunction with the FailureDetector <a href="../GLOSSARY.html#enricher" class="glossary-term" title="Generates new events or sensor values (metrics) for an entity, usually by aggregating 
+<p>Typically this is used in conjunction with the ServiceFailureDetector <a href="../GLOSSARY.html#enricher" class="glossary-term" title="Generates new events or sensor values (metrics) for an entity, usually by aggregating 
 or modifying data from one or more other sensors.">enricher</a> to emit the trigger <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a>.
 The <a href="../start/policies.html">introduction to policies</a> shows a worked 
 example of these working together.</p>
@@ -2194,11 +2240,24 @@ or an associated group of entities (e.g.
 A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.ha.ServiceReplacer</li>
 </ul>
 <p>The ServiceReplacer attaches to a DynamicCluster and replaces a failed member in response to 
-<code>ha.entityFailed</code> (or other configurable <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a>).<br>The <a href="../start/policies.html">introduction to policies</a> shows a worked 
+<code>ha.entityFailed</code> (or other configurable <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a>) as typically emitted by the ServiceFailureDetector <a href="../GLOSSARY.html#enricher" class="glossary-term" title="Generates new events or sensor values (metrics) for an entity, usually by aggregating 
+or modifying data from one or more other sensors.">enricher</a>.<br>The <a href="../start/policies.html">introduction to policies</a> shows a worked 
 example of this <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
 is associated with an entity; it normally manages the health of that entity
 or an associated group of entities (e.g. HA policies or auto-scaling policies).
 A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> in use.</p>
+<h4 id="servicefailuredetector-enricher">ServiceFailureDetector Enricher</h4>
+<ul>
+<li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.ha.ServiceFailureDetector</li>
+</ul>
+<p>The ServiceFailureDetector <a href="../GLOSSARY.html#enricher" class="glossary-term" title="Generates new events or sensor values (metrics) for an entity, usually by aggregating 
+or modifying data from one or more other sensors.">enricher</a> detects problems and fires an <code>ha.entityFailed</code> (or other configurable <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a>)
+for use by ServiceRestarter and ServiceReplacer.
+The <a href="../start/policies.html">introduction to policies</a> shows a worked 
+example of this in use.</p>
 <h4 id="sshmachinefailuredetector-policy">SshMachineFailureDetector Policy</h4>
 <ul>
 <li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
@@ -2221,6 +2280,210 @@ A policy performs actions on entities, b
 is associated with an entity; it normally manages the health of that entity
 or an associated group of entities (e.g. HA policies or auto-scaling policies).
 A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> for monitoring an http connection, emitting an event if the connection is lost/restored.</p>
+<h3 id="primary-election--failover-policies">Primary Election / Failover Policies</h3>
+<p>There are a collection of policies, enrichers, and effectors to assist with common
+failover scenarios and more generally anything which requires the election and re-election of a primary member.</p>
+<p>These can be used for:</p>
+<ul>
+<li>Nominating one child among many to be noted as a primary via a <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> (simply add the <code>ElectPrimaryPolicy</code>)</li>
+<li>Allowing preferences for such children to be specified  (via <code>ha.primary.weight</code>)</li>
+<li>Causing the primary to change if the current primary goes down or away</li>
+<li>Causing <code>promote</code> and <code>demote</code> effectors to be invoked on the appropriate nodes when the primary is elected/changed
+(with the parent reset to <code>STARTING</code> while this occurs)</li>
+<li>Mirroring sensors and optionally effectors from the primary to the parent</li>
+</ul>
+<p>A simple example is as follows, deploying two <code>item</code> entities with one designated as primary
+and its <code>main.uri</code> <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> published at the root. If &quot;Preferred Item&quot; fails, &quot;Failover Item&quot;
+will be become the primary. Any <code>demote</code> <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> on &quot;Preferred Item&quot; and any <code>promote</code> <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a>
+on &quot;Failover Item&quot; will be invoked on failover.</p>
+<pre><code class="lang-yaml">brooklyn.policies:
+<span class="hljs-attr">- type:</span> org.apache.brooklyn.policy.failover.ElectPrimaryPolicy
+  brooklyn.config:
+    <span class="hljs-comment"># `best` will cause failback to occur automatically when possible; could use `failover` instead</span>
+    primary.selection.mode: best
+    propagate.primary.sensors: [ main.uri ]
+
+brooklyn.enrichers:
+<span class="hljs-bullet">-</span> <span class="hljs-comment"># this enricher will cause the parent to report as failed if there is no primary</span>
+<span class="hljs-attr">  type:</span> org.apache.brooklyn.policy.failover.PrimaryRunningEnricher
+
+<span class="hljs-attr">services:</span>
+<span class="hljs-attr">- type:</span> item
+<span class="hljs-attr">  name:</span> Preferred Item
+  brooklyn.config:
+    ha.primary.weight: <span class="hljs-number">1</span>
+<span class="hljs-attr">- type:</span> item
+<span class="hljs-attr">  name:</span> Failover Item
+</code></pre>
+<h4 id="electprimary-policy">ElectPrimary Policy</h4>
+<ul>
+<li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.failover.ElectPrimaryPolicy</li>
+</ul>
+<p>The ElectPrimaryPolicy acts to keep exactly one of its children or members as primary, promoting and demoting them when required.</p>
+<p>A simple use case is where we have two children, call them North and South, and we wish for North to be primary.  If North fails, however, we want to promote and fail over to South.  This can be done by:</p>
+<ul>
+<li>adding this <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> at the parent</li>
+<li>setting <code>ha.primary.weight</code> on North</li>
+<li>optionally defining <code>promote</code> on North and South (if action is required there to promote it)</li>
+<li>observing the <code>primary</code> <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> to see which is primary</li>
+<li>optionally setting <code>propagate.primary.sensor: main.uri</code> to publish <code>main.uri</code> from whichever of North or South is active</li>
+<li>optionally setting <code>primary.selection.mode: best</code> to switch back to North if it comes back online</li>
+</ul>
+<p>The <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> works by listening for service-up changes in the target pool (children or members) and listening for <code>ha.primary.weight</code> <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> values from those elements.  On any change, it invokes an <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> to perform the primary election.  By default, the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> invoked is <code>electPrimary</code>, but this can be changed with the <code>primary.election.effector</code> config key.  If this <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> does not exist, the <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> will add a default behaviour using <code>ElectPrimaryEffector</code>.  Details of the election are described in that <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a>, but to summarize, it will find an appropriate primary from the target pool and publish a <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> indicating who the new primary is.  Optionally it can invoke <code>promote</code> and <code>demote</code> on the relevant entities.</p>
+<p>All the <code>primary.*</code> parameters accepted by that <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> can be defined on the <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> and will be passed to the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a>, along with an <code>event</code> parameter indicating the <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> which triggered the election.</p>
+<p>The <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> also accepts a <code>propagate.primary.sensors</code> list of strings or sensors.
+If present, this will add the <code>PropagatePrimaryEnricher</code> <a href="../GLOSSARY.html#enricher" class="glossary-term" title="Generates new events or sensor values (metrics) for an entity, usually by aggregating 
+or modifying data from one or more other sensors.">enricher</a> with those sensors set to
+be propagated.  </p>
+<p>If no <code>quorum.up</code> or <code>quorum.running</code> is set on the <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a>, both will be set to a constant 1.</p>
+<h4 id="electprimary-effector">ElectPrimary Effector</h4>
+<ul>
+<li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.failover.ElectPrimaryEffector</li>
+</ul>
+<p>This <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will scan candidates among children or members to determine which should be noted as &quot;primary&quot;.<br>The primary is selected from service-up candidates based on a numeric weight as a <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> or config on the candidates 
+(<code>ha.primary.weight</code>, unless overridden), with higher weights being preferred and negative indicating not permitted.<br>In the case of ties, or a new candidate emerging with a weight higher than a current healthy primary, 
+behaviour can be configured with <code>primary.selection.mode</code>.</p>
+<p>If there is a primary and it is unchanged, the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will end.</p>
+<p>If a new primary is detected, the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will:</p>
+<ul>
+<li><p>set the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> to the STARTING state</p>
+</li>
+<li><p>clear any &quot;primary-election&quot; problem</p>
+</li>
+<li><p>publish the new primary in a <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> called <code>primary</code> (or the <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> set in <code>primary.sensor.name</code>)</p>
+</li>
+<li><p>set service up true</p>
+</li>
+<li><p>cancel any other ongoing promote calls, and if there is an ongoing demote call on the <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> being promoted, cancel that also</p>
+</li>
+<li><p>in parallel</p>
+<ul>
+<li><p>invoke <code>promote</code> (or the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> called <code>primary.promote.effector.name</code>) on the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> or the <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> being promoted</p>
+</li>
+<li><p>invoke <code>demote</code> (or the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> called <code>primary.promote.effector.name</code>) on the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> or the <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> being demoted, if an <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> is being demoted</p>
+</li>
+</ul>
+</li>
+<li><p>set the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> to the RUNNING state</p>
+</li>
+</ul>
+<p>If no primary can be found, the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will:</p>
+<ul>
+<li><p>add a &quot;primary-election&quot; problem so that service state logic, if applicable, will know that the <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> is unhealthy</p>
+</li>
+<li><p>demote any old primary</p>
+</li>
+<li><p>set service up false</p>
+</li>
+<li><p>if the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> is expected to be RUNNING, it will set actual state to ON_FIRE</p>
+</li>
+<li><p>if the local <a href="../GLOSSARY.html#entity" class="glossary-term" title="A component of an application or system. This could be a physical component, a
+service, a grouping of components, or a logical construct describing part of an
+application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> has no expectation, it will set actual state to STOPPED</p>
+</li>
+</ul>
+<p>More details of behaviour in edge conditions can be seen and set via the parameters on this <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a>.</p>
+<ul>
+<li><p><code>primary.target.mode</code>:  where should the <a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a> look for primary candidates; one of &apos;children&apos;, &apos;members&apos;, or &apos;auto&apos; (members if it has members and no children)</p>
+</li>
+<li><p><code>primary.selection.mode</code>:  under what circumstances should the primary change:  <code>failover</code> to change only if an existing primary is unhealthy, <code>best</code> to change so one with the highest weight is always selected, or <code>strict</code> to act as <code>best</code> but fail if several advertise the highest weight (for use when the weight <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> is updated by the nodes and should tell us unambiguously who was elected)</p>
+</li>
+<li><p><code>primary.stopped.wait.timeout</code>:  if the highest-ranking primary is stopped (but not failed), the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will wait this long for it to be starting before picking a less highly-weighted primary; default 3s, typically long enough to avoid races where multiple children are started concurrently but they complete extremely quickly and one completes before a better one starts</p>
+</li>
+<li><p><code>primary.starting.wait.timeout</code>:  if the highest-ranking primary is starting, the <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> will wait this long for it to be running before picking a less highly-weighted primary (or in the case of <code>strict</code> before failing if there are ties); default 5m, typically long enough to avoid races where multiple children are started and a sub-optimal one comes online before the best one</p>
+</li>
+<li><p><code>primary.sensor.name</code>:  name to publish, defaulting to <code>primary</code></p>
+</li>
+<li><p><code>primary.weight.name</code>:  config key or <a href="../GLOSSARY.html#sensor" class="glossary-term" title="A sensor is a property, or attribute of an Apache Brooklyn entity, updated in real-time.">sensor</a> to scan from candidate nodes to determine who should be primary</p>
+</li>
+<li><p><code>primary.promote.effector.name</code>: <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> to invoke on promotion, default <code>promote</code> and with no error if not present (but if set explicitly it will cause an error if not present)</p>
+</li>
+<li><p><code>primary.demote.effector.name</code>: <a href="../GLOSSARY.html#effector" class="glossary-term" title="Effectors are tools Apache Brooklyn provides, that allow you to manipulate the live entities within an application.
+They are operations applied on entities.">effector</a> to invoke on demotion, default <code>demote</code> and with no error if not present (but if set explicitly it will cause an error if not present)</p>
+</li>
+</ul>
+<h4 id="primaryrunning-enricher">PrimaryRunning Enricher</h4>
+<ul>
+<li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.failover.PrimaryRunningEnricher</li>
+</ul>
+<p>This adds service not-up and problems entries if the primary is not running, 
+so that the parent will only be up/healthy if there is a healthy primary.</p>
+<h4 id="propagateprimary-enricher">PropagatePrimary Enricher</h4>
+<ul>
+<li>org.apache.brooklyn.<a href="../GLOSSARY.html#policy" class="glossary-term" title="Part of an autonomic management system, performing runtime management. A policy
+is associated with an entity; it normally manages the health of that entity
+or an associated group of entities (e.g. HA policies or auto-scaling policies).
+A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.failover.PropagatePrimaryEnricher</li>
+</ul>
+<p>This allows selected sensors from the primary to be available at the parent.
+As the primary changes, the indicated sensors will be updated to reflect the values from the new primaries.</p>
 <h3 id="optimization-policies">Optimization Policies</h3>
 <h4 id="periodiceffector-policy">PeriodicEffector Policy</h4>
 <ul>
@@ -2469,6 +2732,7 @@ or an associated group of entities (e.g.
 A policy performs actions on entities, based on their sensor values and policy configuration.">policy</a>.</p>
 
                                 
+
                                 </section>
                             
     </div>
@@ -2500,7 +2764,7 @@ A policy performs actions on entities, b
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"Policies","level":"1.5.10","depth":2,"next":{"title":"Effectors","level":"1.5.11","depth":2,"path":"blueprints/effectors.md","ref":"blueprints/effectors.md","articles":[]},"previous":{"title":"Enrichers","level":"1.5.9","depth":2,"path":"blueprints/enrichers.md","ref":"blueprints/enrichers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1509027295765.css","pdf":"pdf-1509027295792.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"
 Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapap
 er":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree
 "},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/policies.md","mtime":"2017-10-26T13:41:38.677Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2017-10-26T14:14:53.591Z"},"basePath":"..","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"Policies","level":"1.5.10","depth":2,"next":{"title":"Effectors","level":"1.5.11","depth":2,"path":"blueprints/effectors.md","ref":"blueprints/effectors.md","articles":[]},"previous":{"title":"Enrichers","level":"1.5.9","depth":2,"path":"blueprints/enrichers.md","ref":"blueprints/enrichers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1523449269765.css","pdf":"pdf-1523449269817.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"
 Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapap
 er":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree
 "},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/policies.md","mtime":"2018-04-11T12:18:40.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-04-11T12:21:07.465Z"},"basePath":"..","book":{"language":""}});
         });
     </script>
 </div>

Modified: brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/about-salt.html
URL: http://svn.apache.org/viewvc/brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/about-salt.html?rev=1828892&r1=1828891&r2=1828892&view=diff
==============================================================================
--- brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/about-salt.html (original)
+++ brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/about-salt.html Wed Apr 11 12:24:01 2018
@@ -50,7 +50,7 @@
 
     
         
-        <link rel="stylesheet" href="../../website-1509027295765.css">
+        <link rel="stylesheet" href="../../website-1523449269765.css">
         
     
         
@@ -1043,7 +1043,7 @@
                 <a href="../../locations/">
             
                     
-                    Deploying Blueprint
+                    Deploying Blueprints
             
                 </a>
             
@@ -1615,12 +1615,26 @@
             
         </li>
     
-        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrade.html">
+        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/">
+            
+                    
+                    Upgrades
+            
+                </a>
+            
+
+            
+            <ul class="articles">
+                
+    
+        <li class="chapter " data-level="1.7.13.1" data-path="../../ops/upgrades/">
             
-                <a href="../../ops/upgrade.html">
+                <a href="../../ops/upgrades/#upgrading-brooklyn">
             
                     
-                    Upgrade
+                    Upgrading Brooklyn
             
                 </a>
             
@@ -1628,6 +1642,37 @@
             
         </li>
     
+        <li class="chapter " data-level="1.7.13.2" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-blueprints-and-bundles">
+            
+                    
+                    Upgrading Blueprints
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.3" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-systems-under-management">
+            
+                    
+                    Upgrading Systems under Management
+            
+                </a>
+            
+
+            
+        </li>
+    
+
+            </ul>
+            
+        </li>
+    
         <li class="chapter " data-level="1.7.14" data-path="../../ops/security-guidelines.html">
             
                 <a href="../../ops/security-guidelines.html">
@@ -2094,8 +2139,9 @@
     
                                 <section class="normal markdown-section">
                                 
-                                <h1 id="about-salt">About Salt</h1>
-<h2 id="what-you-need-to-know-about-salt">What you need to know about Salt</h2>
+<h1>About Salt</h1>
+
+                                <h2 id="what-you-need-to-know-about-salt">What you need to know about Salt</h2>
 <p>Salt is designed to work in either what it calls a &apos;master/minion&apos; or a &apos;masterless&apos; topology.</p>
 <p>In the former, the master server acts as a managing controller for any number of client nodes, called &apos;minions&apos;. 
 A salt daemon running on the minion connects back to the master server for its operation, and manages the software on 
@@ -2136,6 +2182,7 @@ service, a grouping of components, or a
 application/system. It is a &quot;managed element&quot; in autonomic computing parlance.">entity</a> that supports general purpose Salt instructions.</p>
 
                                 
+
                                 </section>
                             
     </div>
@@ -2167,7 +2214,7 @@ application/system. It is a &quot;manage
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"About Salt","level":"1.5.18.1","depth":3,"next":{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"path":"blueprints/salt/creating-salt-blueprints.md","ref":"blueprints/salt/creating-salt-blueprints.md","articles":[]},"previous":{"title":"Salt in YAML Blueprints","level":"1.5.18","depth":2,"path":"blueprints/salt/index.md","ref":"blueprints/salt/index.md","articles":[{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"path":"blueprints/salt/creating-salt-blueprints.md","ref":"blueprints/salt/creating-salt-blueprints.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1509027295765.css",
 "pdf":"pdf-1509027295792.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/lat
 est/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY
 .md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/about-salt.md","mtime":"2017-10-26T13:41:38.678Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2017-10-26T14:14:53.591Z"},"basePath":"../..","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"About Salt","level":"1.5.18.1","depth":3,"next":{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"path":"blueprints/salt/creating-salt-blueprints.md","ref":"blueprints/salt/creating-salt-blueprints.md","articles":[]},"previous":{"title":"Salt in YAML Blueprints","level":"1.5.18","depth":2,"path":"blueprints/salt/index.md","ref":"blueprints/salt/index.md","articles":[{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"path":"blueprints/salt/creating-salt-blueprints.md","ref":"blueprints/salt/creating-salt-blueprints.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1523449269765.css",
 "pdf":"pdf-1523449269817.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/lat
 est/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY
 .md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/about-salt.md","mtime":"2018-04-11T12:18:40.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-04-11T12:21:07.465Z"},"basePath":"../..","book":{"language":""}});
         });
     </script>
 </div>

Modified: brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/creating-salt-blueprints.html
URL: http://svn.apache.org/viewvc/brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/creating-salt-blueprints.html?rev=1828892&r1=1828891&r2=1828892&view=diff
==============================================================================
--- brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/creating-salt-blueprints.html (original)
+++ brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/creating-salt-blueprints.html Wed Apr 11 12:24:01 2018
@@ -50,7 +50,7 @@
 
     
         
-        <link rel="stylesheet" href="../../website-1509027295765.css">
+        <link rel="stylesheet" href="../../website-1523449269765.css">
         
     
         
@@ -1043,7 +1043,7 @@
                 <a href="../../locations/">
             
                     
-                    Deploying Blueprint
+                    Deploying Blueprints
             
                 </a>
             
@@ -1615,12 +1615,26 @@
             
         </li>
     
-        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrade.html">
+        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/">
+            
+                    
+                    Upgrades
+            
+                </a>
+            
+
+            
+            <ul class="articles">
+                
+    
+        <li class="chapter " data-level="1.7.13.1" data-path="../../ops/upgrades/">
             
-                <a href="../../ops/upgrade.html">
+                <a href="../../ops/upgrades/#upgrading-brooklyn">
             
                     
-                    Upgrade
+                    Upgrading Brooklyn
             
                 </a>
             
@@ -1628,6 +1642,37 @@
             
         </li>
     
+        <li class="chapter " data-level="1.7.13.2" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-blueprints-and-bundles">
+            
+                    
+                    Upgrading Blueprints
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.3" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-systems-under-management">
+            
+                    
+                    Upgrading Systems under Management
+            
+                </a>
+            
+
+            
+        </li>
+    
+
+            </ul>
+            
+        </li>
+    
         <li class="chapter " data-level="1.7.14" data-path="../../ops/security-guidelines.html">
             
                 <a href="../../ops/security-guidelines.html">
@@ -2094,8 +2139,9 @@
     
                                 <section class="normal markdown-section">
                                 
-                                <h1 id="creating-blueprints-with-salt">Creating Blueprints with Salt</h1>
-<p>To write a <a href="../../GLOSSARY.html#blueprint" class="glossary-term" title="A description of an application or system, which can be used for its automated
+<h1>Creating Blueprints with Salt</h1>
+
+                                <p>To write a <a href="../../GLOSSARY.html#blueprint" class="glossary-term" title="A description of an application or system, which can be used for its automated
 deployment and runtime management. The blueprint describes a model of the
 application (i.e. its components, their configuration, and their
 relationships), along with policies for runtime management. The blueprint can
@@ -2271,6 +2317,7 @@ They are operations applied on entities.
 network interfaces on the minion.</p>
 
                                 
+
                                 </section>
                             
     </div>
@@ -2302,7 +2349,7 @@ network interfaces on the minion.</p>
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"next":{"title":"YAML Blueprint Advanced Example","level":"1.5.19","depth":2,"path":"blueprints/advanced-example.md","ref":"blueprints/advanced-example.md","articles":[]},"previous":{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1509027295765.css","pdf":"pdf-1509027295792.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","s
 ize":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"shar
 ing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tr
 ee","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/creating-salt-blueprints.md","mtime":"2017-10-26T13:41:38.678Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2017-10-26T14:14:53.591Z"},"basePath":"../..","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"Creating Blueprints with Salt","level":"1.5.18.2","depth":3,"next":{"title":"YAML Blueprint Advanced Example","level":"1.5.19","depth":2,"path":"blueprints/advanced-example.md","ref":"blueprints/advanced-example.md","articles":[]},"previous":{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1523449269765.css","pdf":"pdf-1523449269817.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontsettings":{"theme":"white","family":"sans","s
 ize":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org/v/0.9.0/","text":"Version 0.9.0"}]},"shar
 ing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"https://github.com/apache/brooklyn-server/tr
 ee","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/creating-salt-blueprints.md","mtime":"2018-04-11T12:18:40.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-04-11T12:21:07.465Z"},"basePath":"../..","book":{"language":""}});
         });
     </script>
 </div>

Modified: brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/index.html
URL: http://svn.apache.org/viewvc/brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/index.html?rev=1828892&r1=1828891&r2=1828892&view=diff
==============================================================================
--- brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/index.html (original)
+++ brooklyn/site/v/1.0.0-SNAPSHOT/blueprints/salt/index.html Wed Apr 11 12:24:01 2018
@@ -50,7 +50,7 @@
 
     
         
-        <link rel="stylesheet" href="../../website-1509027295765.css">
+        <link rel="stylesheet" href="../../website-1523449269765.css">
         
     
         
@@ -1043,7 +1043,7 @@
                 <a href="../../locations/">
             
                     
-                    Deploying Blueprint
+                    Deploying Blueprints
             
                 </a>
             
@@ -1615,12 +1615,26 @@
             
         </li>
     
-        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrade.html">
+        <li class="chapter " data-level="1.7.13" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/">
+            
+                    
+                    Upgrades
+            
+                </a>
+            
+
+            
+            <ul class="articles">
+                
+    
+        <li class="chapter " data-level="1.7.13.1" data-path="../../ops/upgrades/">
             
-                <a href="../../ops/upgrade.html">
+                <a href="../../ops/upgrades/#upgrading-brooklyn">
             
                     
-                    Upgrade
+                    Upgrading Brooklyn
             
                 </a>
             
@@ -1628,6 +1642,37 @@
             
         </li>
     
+        <li class="chapter " data-level="1.7.13.2" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-blueprints-and-bundles">
+            
+                    
+                    Upgrading Blueprints
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.7.13.3" data-path="../../ops/upgrades/">
+            
+                <a href="../../ops/upgrades/#upgrading-systems-under-management">
+            
+                    
+                    Upgrading Systems under Management
+            
+                </a>
+            
+
+            
+        </li>
+    
+
+            </ul>
+            
+        </li>
+    
         <li class="chapter " data-level="1.7.14" data-path="../../ops/security-guidelines.html">
             
                 <a href="../../ops/security-guidelines.html">
@@ -2094,8 +2139,9 @@
     
                                 <section class="normal markdown-section">
                                 
-                                <h1 id="salt-in-yaml-blueprints">Salt in YAML Blueprints</h1>
-<p>This guide describes how Brooklyn entities can be created using the Salt infrastructure management tool
+<h1>Salt in YAML Blueprints</h1>
+
+                                <p>This guide describes how Brooklyn entities can be created using the Salt infrastructure management tool
  (<a href="https://saltstack.com/" target="_blank">saltstack.com</a>).
 At present Brooklyn provides basic support for Salt, operating in a &apos;masterless&apos; mode. 
 Comments on this support and suggestions for further development are welcome.</p>
@@ -2106,6 +2152,7 @@ Comments on this support and suggestions
 </ul>
 
                                 
+
                                 </section>
                             
     </div>
@@ -2137,7 +2184,7 @@ Comments on this support and suggestions
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"Salt in YAML Blueprints","partial-summary-depth":1,"level":"1.5.18","depth":2,"next":{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},"previous":{"title":"Advanced Chef Integration","level":"1.5.17.4","depth":3,"path":"blueprints/chef/advanced-chef-integration.md","ref":"blueprints/chef/advanced-chef-integration.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1509027295765.css","pdf":"pdf-1509027295792.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontset
 tings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org
 /v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"ht
 tps://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/index.md","mtime":"2017-10-26T13:41:38.679Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2017-10-26T14:14:53.591Z"},"basePath":"../..","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"Salt in YAML Blueprints","partial-summary-depth":1,"level":"1.5.18","depth":2,"next":{"title":"About Salt","level":"1.5.18.1","depth":3,"path":"blueprints/salt/about-salt.md","ref":"blueprints/salt/about-salt.md","articles":[]},"previous":{"title":"Advanced Chef Integration","level":"1.5.17.4","depth":3,"path":"blueprints/chef/advanced-chef-integration.md","ref":"blueprints/chef/advanced-chef-integration.md","articles":[]},"dir":"ltr"},"config":{"plugins":["include-highlight","theme-api","collapsible-chapters","bootstrap-callout","styles-less","versions","partial-summary"],"root":"./guide","styles":{"website":"website-1523449269765.css","pdf":"pdf-1523449269817.css"},"pluginsConfig":{"styles-less":{},"search":{},"collapsible-chapters":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"include-highlight":{"extensionToLanguage":{"yml":"yaml","yaml":"yaml","bom":"yaml","java":"java"}},"bootstrap-callout":{},"fontset
 tings":{"theme":"white","family":"sans","size":2},"highlight":{},"theme-api":{"languages":[{"lang":"vagrant","name":"Vagrant","default":true},{"lang":"centos","name":"CentOS / RHEL 7"},{"lang":"ubuntu","name":"Ubuntu / Debian"},{"lang":"osx","name":"OSX / Linux"},{"lang":"windows","name":"Windows"},{"lang":"clouds","name":"Clouds"},{"lang":"byon","name":"BYON"},{"lang":"package","name":"RPM / DEB packages"},{"lang":"tarball","name":"Tarball"}],"split":false,"theme":"light"},"partial-summary":{"depth":0},"versions":{"type":"branches","gitbookConfigURL":"https://raw.githubusercontent.com/tbouron/brooklyn-docs/experiment/gitbook/book.json","options":[{"value":"https://brooklyn.apache.org/v/latest/","text":"Latest","selected":true},{"value":"https://brooklyn.apache.org/v/0.12.0/","text":"Version 0.12.0"},{"value":"https://brooklyn.apache.org/v/0.11.0/","text":"Version 0.11.0"},{"value":"https://brooklyn.apache.org/v/0.10.0/","text":"Version 0.10.0"},{"value":"https://brooklyn.apache.org
 /v/0.9.0/","text":"Version 0.9.0"}]},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{"brooklyn_version":"1.0.0-SNAPSHOT","brooklyn_version_stable":"0.12.0","url":{"brooklyn_website":"https://brooklyn.apache.org","brooklyn_javadoc":"https://brooklyn.apache.org/v/latest/misc/javadoc","brooklyn_git":"https://github.com/apache/brooklyn/tree","brooklyn_sever_git":"ht
 tps://github.com/apache/brooklyn-server/tree","brooklyn_library_git":"https://github.com/apache/brooklyn-library/tree"},"path":{"docs":""}},"gitbook":"^3.2.3"},"file":{"path":"blueprints/salt/index.md","mtime":"2018-04-11T12:18:40.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-04-11T12:21:07.465Z"},"basePath":"../..","book":{"language":""}});
         });
     </script>
 </div>