<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Hi folks,</p>
    <p>Last week I wrote a BluePrint and a spec [1] to propose to change
      the way we used and managed the Plan in TripleO for the Deployment
      and the Life cycle (update/upgrade and scale).<br>
    </p>
    <p>While I was working on trying to simplified the implementation of
      the Update and Upgrade for a end user usage, I found very hard to
      follow all the calls that the TripleO Client was doing to the
      HeatClient and SwiftClient.</p>
    <p>I traced the calls and found that we can safely and easily
      decrease the number of calls and simplified the way that we are
      computing & rendering the TripleO Heat Templates files.</p>
    <p>I did a PoC to see what would be the problematic behind that and
      what we could do without breaking the "standard" usage and all the
      particular things that the current code handle (specific
      deployments and configurations & so on).</p>
    <p>By this refactoring I'm seeing another gain for the life cycle
      part of TripleO, where we used to try to make thing simpler &
      safer but we constantly failed due to this complexity and all the
      "special cases" that we faced during the testing.</p>
    <p>The result is that, when a user need to perform an update/upgrade
      of his deployment, he really have to be careful, to pay a lot of
      attention of all the options, -e environments files that he
      previously used  with the risk to make a simple mistake, and
      totally mess up the deployment.<br>
    </p>
    <p>So my goals with this PoC and this BP is to try to addressed
      those points by: <br>
    </p>
    <blockquote>
      <p>simplify  and reduce the number of calls between the clients,</p>
      <p>have a simple way for creating and updating the Plan, even by
        amending the plan with only a particular files / config or
        Playbooks, <br>
      </p>
      <p>store all the in formations provided by the user by uploading
        all the files outsides of the plan,</p>
      <p>keep the track of the environment files passed to the CLI,<br>
      </p>
      <p>trace the life cycle story of the deployment.</p>
    </blockquote>
    <p>So feel free to comment, add your concerns or feedback around
      this.</p>
    <p>Cheer,<br>
    </p>
    <p>Mathieu<br>
    </p>
    <p>[1]</p>
    <p><a class="moz-txt-link-freetext" href="https://blueprints.launchpad.net/tripleo/+spec/tripleo-plan-management">https://blueprints.launchpad.net/tripleo/+spec/tripleo-plan-management</a></p>
    <pre wrap=""><a class="moz-txt-link-freetext" href="https://review.openstack.org/599396">https://review.openstack.org/599396</a> </pre>
    <p>[2]</p>
    <pre wrap=""> <a class="moz-txt-link-freetext" href="https://review.openstack.org/583145">https://review.openstack.org/583145</a>


</pre>
  </body>
</html>