<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Gents,</div>
<div><br>
</div>
<div>For what it’s worth - We’ve long accounting for “extension points” within our VM and physical server provisioning flows, where developers may drop in code to augment OOTB behavior with customer/solution-specific needs. While there are many extension points
laced throughout different points in the provisioning flow, we pervasively injected “pre” and “post” provisioning extension points to allow for easy customization (like the one being attempted by Steve).</div>
<div><br>
</div>
<div>The notions of prepareDeploy and finishDeploy resonant well.</div>
<div><br>
</div>
<div>Regards,</div>
<div>Lee</div>
<div>
<div><span class="Apple-style-span" style="font-family: Calibri, Verdana, Helvetica, Arial; font-size: small; "><span style="font-size: 9pt; "> <img src="cid:79A77799-DB4B-4D01-957B-D6A7D5D69476" type="image/png"> <br>
<font color="#7C7C7C"><b>Lee Calcote</b></font><b><font color="#7A7A7A"><br>
</font><font color="#7B7B7B"> Sr. </font><font color="#7C7C7C">Software Engineering Manager<br>
Cloud and Virtualization Group<br>
</font></b></span></span><span class="Apple-style-span" style="font-family: Calibri, Verdana, Helvetica, Arial; font-size: small; "><b><font color="#7C7C7C"><span style="font-size: 8pt; "><br>
</span></font></b></span><span class="Apple-style-span" style="font-family: Calibri, Verdana, Helvetica, Arial; font-size: small; "><font color="#7C7C7C"><span style="font-size: 9pt; "> Phone: 512-378-8835<br>
</span></font></span><span class="Apple-style-span" style="font-family: Calibri, Verdana, Helvetica, Arial; font-size: small; "><span style="font-size: 9pt; "><font color="#7B7B7B">Mail/Jabber/Video: </font><font color="#0000FF"><u><a href="applewebdata://BF2BDB88-16CF-4E49-8251-92F7CF8AD490/lecalcot@cisco.com">lecalcot@cisco.com</a></u></font><font color="#7C7C7C"> <br>
</font><font color="#636363"><br>
</font><font color="#7C7C7C">United States<br>
www.cisco.com </font></span></span></div>
</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>Stan Lagun <<a href="mailto:slagun@mirantis.com">slagun@mirantis.com</a>><br>
<span style="font-weight:bold">Reply-To: </span>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Date: </span>Tuesday, July 22, 2014 at 4:37 PM<br>
<span style="font-weight:bold">To: </span>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>Re: [openstack-dev] [Murano]<br>
</div>
<div><br>
</div>
<div>
<div>
<div dir="ltr">Hi Steve,
<div><br>
</div>
<div>1. There are no objections whatsoever if you know how to do it without breaking the entire concept</div>
<div>2. I thing that deployment workflow need to be broken to more fine-grained steps. Maybe instead of single "deploy" methdos have "prepareDeploy" (which doesn't push the changes to Heat), "deploy" and "finishDeploy". Maybe more/other methods need to be defined.
This will make the whole process more customizible</div>
<div>3. If you want to have single-instance applications based on a fixed prebuild image then maybe what you need is to have your apps inhertir both Application and Instance classes and then override Instance's deploy method and add HOT snippet before VM instantiation.
This may also require ability for child class to bind fixed values to parent class properties (narrowing class public contract, hiding those properties from user). This is not yet supported in MuranoPL but can be done in UI form as a temporary workaround</div>
<div>4. Didn't get why you mentioned object model. Object model is mostly user input. Do you suggest passing HOT snippets as part of user input? If so that would be something I oppose to</div>
<div>5. I guess image tagging would be better solution to image-based deployment</div>
<div>6. Personally I believe that problem can be eficently solved by Murano today or in the nearest future without resorting to pure HOT packages. This is not against Murano design and perfectly alligned with it</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div dir="ltr"><span style="border-collapse:separate;color:rgb(0,0,0);font-family:'Times New Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:medium"><span style="font-family:arial;font-size:small">Sincerely
yours,<br>
Stan Lagun<br>
Principal Software Engineer @ Mirantis</span></span><br>
<span style="border-collapse:separate;color:rgb(0,0,0);font-family:'Times New Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:medium"><span style="font-family:arial;font-size:small"><br>
<a href="mailto:slagun@mirantis.com" target="_blank"></a></span></span></div>
</div>
<br>
<br>
<div class="gmail_quote">On Tue, Jul 22, 2014 at 8:05 PM, McLellan, Steven <span dir="ltr">
<<a href="mailto:steve.mclellan@hp.com" target="_blank">steve.mclellan@hp.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div>
<p class="MsoNormal">Hi,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">This is a little rambling, so I’ll put this summary here and some discussion below. I would like to be able to add heat template fragments (primarily softwareconfig) to a template before an instance is created by Heat. This could be possible
by updating but not pushing the heat template before instance.deploy, except that instance.deploy does a stack.push to configure networking before it adds information about the nova instance. This seems like the wrong place for the networking parts of the
stack to be configured (maybe in the Environment before it tries to deploy applications). Thoughts?<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">----------<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">The long version: <u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I’ve been looking at using disk-image-builder (a project that came out of triple-o) to build images for consumption through Murano. Disk images are built from a base OS plus a set of ‘elements’ which can include packages to install when
building the image, templatized config file etc, and allows for substitutions based on heat metadata at deploy time. This uses a lot of the existing heat software config agents taking configuration from StructuredConfig and StructuredDeployment heat elements.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I’m typically finding for our use cases that instances will tend to be single purpose (that is, the image will be created specifically to run a piece of software that requires some configuration). Currently Murano provisions the instance,
and then adds software configuration as a separate stack-update step. This is quite inefficient since os-refresh-config ends up having to re-run, and so I’m wondering if there’s strong opposition to allowing the object model to support injection of software
configuration heat elements before the instance is deployed.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Alternatively maybe this is something that is best supported by pure HOT packages, but I think there’s value having murano’s composition ability even if just to be able to combine heat fragments (perhaps in the drag & drop manner that was
briefly discussed in Atlanta). <u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Thanks,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Steve<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</span>
</body>
</html>