Hi,<div><br></div><div><br><div class="gmail_quote">On Fri, Aug 17, 2012 at 12:20 AM, reeuwijk <span dir="ltr"><<a href="mailto:reeuwijk@few.vu.nl" target="_blank">reeuwijk@few.vu.nl</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hello Gary,<br>
<br>
Thanks for the reply, but as far as I know not all templates are XML yet, the old text format that I used in my examples is also still supported. Would your approach work for those too?<br></blockquote><div><br></div><div>

The solution described by Gary is the way to go. Although templates can be defined in plain text, they are stored and treat (at the API level) as XML documents.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<br>
Also, I need some extra hints with respect to the DS or TM scripts you mention. I've tried to locate them in the OpenNebula sources, but I have frankly no idea what you are referring to.<br>
<br></blockquote><div><br></div><div>To check for an example of how to extract the information from a shell script just grep the sources for xpath.rb</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


(And lastly, I am still hoping that OpenNebula has a simpler way to access such variables, rather than using xpath on the template file.)<br>
<br></blockquote><div><br></div><div>It may seems to be more complicated but from a programmatic point of view is not that bad. On the other hand, this method to pass information is much more robust (e.g. to variables with spaces or characters with an special meaning for the shell...) and as you can get anything is much more flexible.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Again, thanks for your help!<br>
<br>
--<br>
Kees<br>
<br>
On 16 Aug 2012, at 12:20, Gary S. Cuozzo <<a href="mailto:gary@isgsoftware.net">gary@isgsoftware.net</a>> wrote:<br>
<br>
> Hi,<br>
> I believe the $TEMPLATE is actually a base64 encoded version of the entire XML document with all the variable in it.  That is how the DS/TM stuff works.  If you look in any of the DS or TM scripts, you can copy/paste the xpath related lines to access any variables you want.<br>


><br>
> If you want to see the exact structure, you can get the base64 encoded stream from the oned.log and run it through the base64 command to see the xml which is encoded.<br>
><br>
> Something like:  echo "encoded stream here" | base64<br>
><br>
> Hope that helps.  I have not used hooks, but I have used this to develop custom DS/TM drivers.<br>
> gary<br>
><br>
><br>
> ----- Original Message -----<br>
> From: "reeuwijk" <<a href="mailto:reeuwijk@few.vu.nl">reeuwijk@few.vu.nl</a>><br>
> To: "opennebula users" <<a href="mailto:users@lists.opennebula.org">users@lists.opennebula.org</a>><br>
> Sent: Thursday, August 16, 2012 10:12:54 AM<br>
> Subject: [one-users] Fwd: Template parameters arguments to hook script?<br>
><br>
> Hi,<br>
><br>
> I want to pass some parameters from OpenNebula templates to a hook script.<br>
><br>
> In OpenNebula 2.2 I could use something like<br>
><br>
> CONTEXT = [<br>
> :<br>
>  SERVER = "bla"<br>
> :<br>
> ]<br>
><br>
> and then in oned.conf I could use a hook script with something like:<br>
><br>
> VM_HOOK = [<br>
>  arguments = " … $CONTEXT[SERVER] …"<br>
> ]<br>
><br>
> and the hook script would be invoked with the value I defined in CONTEXT.<br>
><br>
> Unfortunately, it seems that OpenNebula 3.6 does not support this any longer. Instead of the value defined in CONTEXT, the expression '$CONTEXT' is replaced with the empty string, so the hook script of the example always gets the string [SERVER].<br>


><br>
> From the documentation it is not entirely clear to me whether the mechanism I used for 2.2 is supported at all. The webpage at <a href="http://opennebula.org/documentation:rel3.6:oned_conf" target="_blank">http://opennebula.org/documentation:rel3.6:oned_conf</a> only mentions access to $VMID and $TEMPLATE and nothing else, so I may have been using an undocumented feature of OpenNebula 2.2.<br>


><br>
> However, limiting access to only those two variables seems overly restrictive to me, so for now I am assuming more is possible. But exactly what is allowed, and what is not?<br>
><br>
> --<br>
> Kees van Reeuwijk<br>
><br>
><br>
><br>
> _______________________________________________<br>
> Users mailing list<br>
> <a href="mailto:Users@lists.opennebula.org">Users@lists.opennebula.org</a><br>
> <a href="http://lists.opennebula.org/listinfo.cgi/users-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/users-opennebula.org</a><br>
> _______________________________________________<br>
> Users mailing list<br>
> <a href="mailto:Users@lists.opennebula.org">Users@lists.opennebula.org</a><br>
> <a href="http://lists.opennebula.org/listinfo.cgi/users-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/users-opennebula.org</a><br>
<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opennebula.org">Users@lists.opennebula.org</a><br>
<a href="http://lists.opennebula.org/listinfo.cgi/users-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/users-opennebula.org</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Dr. Ruben Santiago Montero<br>Associate Professor (Profesor Titular), Complutense University of Madrid<br><br>URL: <a href="http://dsa-research.org/doku.php?id=people:ruben" target="_blank">http://dsa-research.org/doku.php?id=people:ruben</a><br>

Weblog: <a href="http://blog.dsa-research.org/?author=7" target="_blank">http://blog.dsa-research.org/?author=7</a><br>
</div>