diff --git a/man/ganeti-os-interface.sgml b/man/ganeti-os-interface.sgml index c61ea5ab5ae0f8b5c45f68d56d243215afcd640f..2c9af010504904e56cec1ce7c01553bb85a4554b 100644 --- a/man/ganeti-os-interface.sgml +++ b/man/ganeti-os-interface.sgml @@ -2,7 +2,7 @@ <!-- Fill in your name for FIRSTNAME and SURNAME. --> <!-- Please adjust the date whenever revising the manpage. --> - <!ENTITY dhdate "<date>February 02, 2009</date>"> + <!ENTITY dhdate "<date>October 02, 2009</date>"> <!-- SECTION should be 1-8, maybe w/ subsection other parameters are allowed: see man(7), man(1). --> <!ENTITY dhsection "<manvolnum>7</manvolnum>"> @@ -30,7 +30,7 @@ &dhucpackage; &dhsection; - <refmiscinfo>ganeti 2.0</refmiscinfo> + <refmiscinfo>ganeti 2.1</refmiscinfo> </refmeta> <refnamediv> <refname>ganeti-os-interface</refname> @@ -55,10 +55,11 @@ <title>REFERENCE</title> <para> - There are five required files: <filename>create</filename>, + There are six required files: <filename>create</filename>, <filename>import</filename>, <filename>export</filename>, - <filename>rename</filename> (executables) and - <filename>ganeti_api_version</filename> (text file). + <filename>rename</filename> (executables), + <filename>ganeti_api_version</filename> and + <filename>variants.list</filename> (text file). </para> <refsect2> @@ -91,6 +92,19 @@ it. This can simplify the OS scripts by providing the same scripts under multiple names, and then the scripts can use this name to alter their behaviour.</simpara> + <simpara>Under OS api 15 changing the script behavior based + on this variable is deprecated: OS_VARIANT should be used + instead (see below).</simpara> + </listitem> + </varlistentry> + <varlistentry> + <term>OS_VARIANT</term> + <listitem> + <simpara>The variant of the OS which should be installed. Each OS + must support all variants listed under its + <filename>variants.list</filename> file, and may support more. + Any more supported variants should be properly documented in the + per-os documentation.</simpara> </listitem> </varlistentry> <varlistentry> @@ -302,11 +316,20 @@ The <filename>ganeti_api_version</filename> file is a plain text file containing the version(s) of the guest OS api that this OS definition complies with, one per line. The version - documented by this man page is 10, so this file must contain - the number 10 followed by a newline if only this version is - supported. A script compatible with both Ganeti 1.2 and Ganeti - 2.0 should contain the most recent version first (i.e. 10), - followed by the old version(s) (in this case, 5). + documented by this man page is 15, so this file must contain + the number 15 followed by a newline if only this version is + supported. A script compatible more than one ganeti version + should contain the most recent version first (i.e. 15), + followed by the old version(s) (in this case 10 and/or 5). + </para> + </refsect2> + + <refsect2> + <title>variants.list</title> + <para> + <filename>variants.list</filename> is a plain text file + containing all the declared supported variants for this + OS, one per line. At least one variant must be supported. </para> </refsect2> @@ -315,6 +338,17 @@ <refsect1> <title>NOTES</title> + <refsect2> + <title>Retrocompatibility</title> + + <para> + Ganeti 2.1 is compatible with both api version 10, and 15. + In api version 10 the <filename>variants.list</filename> + file is ignored and no OS_VARIANT environment variable is + passed. + </para> + </refsect2> + <refsect2> <title>Common behaviour</title> @@ -328,6 +362,21 @@ <refsect2> <title>Upgrading from old versions</title> <refsect3> + + <title>Version 10 to 15</title> + + <para> + The <filename>variants.list</filename> file has been + added, so OSes should support at least one variant, + declaring it in that file and must be prepared to parse + the OS_VARIANT environment variable. OSes are free to + support more variants than just the declared ones. + </para> + + </refsect3> + + <refsect3> + <title>Version 5 to 10</title> <para>