summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-09-04 11:52:59 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-09-04 11:52:59 -0500
commitabf97c95de37a4284cd279d91a43160c8a20bac3 (patch)
tree8badc3e2dfb598d4a4937f0368aa1ac7b3dd49a7
parent16a628874b86bf64d0ffcafc2e72627c17040914 (diff)
downloadhorizon-abf97c95de37a4284cd279d91a43160c8a20bac3.tar.gz
horizon-abf97c95de37a4284cd279d91a43160c8a20bac3.tar.bz2
horizon-abf97c95de37a4284cd279d91a43160c8a20bac3.tar.xz
horizon-abf97c95de37a4284cd279d91a43160c8a20bac3.zip
req: 3: Add Runner.Locate.*
-rw-r--r--devel/requirements/3_functional.xml47
1 files changed, 41 insertions, 6 deletions
diff --git a/devel/requirements/3_functional.xml b/devel/requirements/3_functional.xml
index 8e1f4b4..b94717f 100644
--- a/devel/requirements/3_functional.xml
+++ b/devel/requirements/3_functional.xml
@@ -816,7 +816,7 @@
<listitem><para>If the path to the HorizonScript begins with a single "/" followed by an alphanumeric character, the HorizonScript is local.</para></listitem>
<listitem><para>If the path to the HorizonScript begins with a recognised valid protocol for downloading a HorizonScript followed by the characters "://", the HorizonScript is remote.</para></listitem>
<listitem><para>If the path to the HorizonScript begins with an alphanumeric character, the HorizonScript is local and relative to the path <filename class="directory">/etc/horizon</filename>.</para></listitem>
- <listitem><para>If the path to the HorizonScript does not match any of the rules specified before this line, the path provided is invalid and the system shall return an error.</para></listitem>
+ <listitem><para>If the path to the HorizonScript does not match any of the rules specified before this line, the path provided is invalid and the system shall return an error describing the specified path and the fact it is invalid.</para></listitem>
</orderedlist>
</para>
</formalpara>
@@ -824,19 +824,54 @@
<title>Runner.Locate.Local</title>
<para>If the HorizonScript is local, the system shall ensure the HorizonScript specified exists at the specified path, is readable by the system, and is the correct format.</para>
</formalpara>
+ <formalpara id="Runner.Locate.Local.Failure">
+ <title>Runner.Locate.Local.Failure</title>
+ <para>If the HorizonScript fails the tests in Runner.Locate.Local, the system shall return an error describing the reason the HorizonScript could not be used.</para>
+ </formalpara>
<formalpara id="Runner.Locate.Remote">
<title>Runner.Locate.Remote</title>
- <para>If the HorizonScript is remote, the system shall </para>
+ <para>If the HorizonScript is remote, the system shall configure the network and then ensure the HorizonScript specified is accessible, as described in the following requirements sections.</para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.Configure">
+ <title>Runner.Locate.Remote.Configure</title>
+ <para>The system shall use the network settings configured by the Administrator on the command line, if they have been provided.</para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.Configure.Automatic">
+ <title>Runner.Locate.Remote.Configure.Automatic</title>
+ <para>If no network configuration was provided on the command line, the system shall initiate a DHCP request on each available network interface, waiting for a 15 second time out period before continuing to the next network interface. An "available network interface" is defined as a non-loopback network interface that currently has a carrier signal.</para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.Configure.AutoFailure">
+ <title>Runner.Locate.Remote.Configure.AutoFailure</title>
+ <para>If no network configuration can be found using DHCP, the system shall return an error describing the inability to configure a network connection.</para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.FullAuto">
+ <title>Runner.Locate.Remote.FullAuto</title>
+ <para>If no HorizonScript path was provided, the system shall download the HorizonScript from a TFTP server using the filename <filename>MACADDRESS.installfile</filename> where MACADDRESS is the MAC address of the active network adaptor with colons (:) replaced by dashes (-). The system shall use the following algorithm to determine the TFTP server, using the first match.
+ <orderedlist id="Runner.Locate.Remote.FullAuto.Algo">
+ <listitem><para>The TFTP server specified in the DHCP options, if the DHCP response provided one.</para></listitem>
+ <listitem><para>The DHCP server, if no TFTP server was specified in DHCP options and DHCP was used to configure the network.</para></listitem>
+ <listitem><para>The TFTP server specified on the command line, if one was provided.</para></listitem>
+ <listitem><para>The default gateway IP.</para></listitem>
+ </orderedlist>
+ </para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.Verify">
+ <title>Runner.Locate.Remote.Verify</title>
+ <para>The system shall ensure that the server where the HorizonScript is kept is reachable over the protocol specified and that the HorizonScript exists.</para>
+ </formalpara>
+ <formalpara id="Runner.Locate.Remote.Download">
+ <title>Runner.Locate.Remote.Download</title>
+ <para>The system shall download the HorizonScript from the remote server to <filename class="directory">/etc/horizon/</filename>.</para>
</formalpara>
</section>
</section>
- <section id="runner_net">
- <title>Network Configuration</title>
- <section id="runner_net_meta">
+ <section id="runner_verify">
+ <title>Verify HorizonScript</title>
+ <section id="runner_verify_meta">
<title>Description / Priority</title>
<para/>
</section>
- <section id="runner_net_req">
+ <section id="runner_verify_req">
<title>Functional Requirements</title>
<formalpara>
<title/>