</section>
-
<section>
<title>Organisation</title>
the script(s) run again with exactly the same
parameters.</para>
+ <para>
+ Note that if a node is unreachable at the time a hooks is run,
+ this will not be interpreted as a deny for the execution. In
+ other words, only an actual error returned from a script will
+ cause abort, and not an unreachable node.
+ </para>
+
+ <para>
+ Therefore, if you want to guarantee that a hook script is run
+ and denies an action, it's best to put it on the master node.
+ </para>
+
</section>
<section>
<para>The scripts will be run as follows:
<itemizedlist>
- <listitem>
- <simpara>no command line arguments</simpara>
- </listitem>
+ <listitem>
+ <simpara>no command line arguments</simpara>
+ </listitem>
<listitem>
<simpara>no controlling <acronym>tty</acronym></simpara>
</listitem>
<listitem>
<simpara><varname>stdin</varname> is
- actually <filename>/dev/null</filename></simpara>
+ actually <filename>/dev/null</filename></simpara>
</listitem>
<listitem>
<simpara><varname>stdout</varname> and
- <varname>stderr</varname> are directed to
- files</simpara>
+ <varname>stderr</varname> are directed to
+ files</simpara>
+ </listitem>
+ <listitem>
+ <simpara>the <varname>PATH</varname> is reset to
+ <literal>/sbin:/bin:/usr/sbin:/usr/bin</literal></simpara>
+ </listitem>
+ <listitem>
+ <simpara>the environment is cleared, and only
+ ganeti-specific variables will be left</simpara>
</listitem>
- <listitem>
- <simpara>the <varname>PATH</varname> is reset to
- <literal>/sbin:/bin:/usr/sbin:/usr/bin</literal></simpara>
- </listitem>
- <listitem>
- <simpara>the environment is cleared, and only
- ganeti-specific variables will be left</simpara>
- </listitem>
</itemizedlist>
</para>