summaryrefslogtreecommitdiffstats
path: root/st_web/templates/st_web
diff options
context:
space:
mode:
authorNathan Straz <nstraz@redhat.com>2009-02-02 18:36:40 -0500
committerNathan Straz <nstraz@redhat.com>2009-02-02 18:36:40 -0500
commit7e1247b426ae86d7c660a9ca87f76d43773670f6 (patch)
treeb91f593102a185a998bec50255e52ef0022de948 /st_web/templates/st_web
downloadsteeltoe-7e1247b426ae86d7c660a9ca87f76d43773670f6.tar.gz
steeltoe-7e1247b426ae86d7c660a9ca87f76d43773670f6.tar.xz
steeltoe-7e1247b426ae86d7c660a9ca87f76d43773670f6.zip
Import a sanitized version of Steel Toe, the provisioning system.
Diffstat (limited to 'st_web/templates/st_web')
-rw-r--r--st_web/templates/st_web/confirm.html23
-rw-r--r--st_web/templates/st_web/index.html14
-rw-r--r--st_web/templates/st_web/install.html129
-rw-r--r--st_web/templates/st_web/perform.html15
-rw-r--r--st_web/templates/st_web/virtconfirm.html39
-rw-r--r--st_web/templates/st_web/virthosts.html170
-rw-r--r--st_web/templates/st_web/virtperform.html15
-rw-r--r--st_web/templates/st_web/virtvolumes.html65
8 files changed, 470 insertions, 0 deletions
diff --git a/st_web/templates/st_web/confirm.html b/st_web/templates/st_web/confirm.html
new file mode 100644
index 0000000..a780a75
--- /dev/null
+++ b/st_web/templates/st_web/confirm.html
@@ -0,0 +1,23 @@
+<html>
+<head>
+<title>Steel Toe Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+</head>
+<body>
+<h1>Steel Toe Install Confirmation</h1>
+<h2>Please verify that you want to install:</h2>
+<ul><li>{{ tree }}</li></ul>
+<h2>on the following hosts:</h2>
+<ul>
+{% for host in hosts %}
+<li>{{ host }}</li>
+{% endfor %}
+</ul>
+<form action="." method="post">
+{{ form.tree.as_hidden }}
+{{ form.hosts.as_hidden }}
+<input type="submit" name="install" value="Confirm"/>
+<input type="submit" name="install" value="Cancel"/>
+</form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/index.html b/st_web/templates/st_web/index.html
new file mode 100644
index 0000000..cb2ef9f
--- /dev/null
+++ b/st_web/templates/st_web/index.html
@@ -0,0 +1,14 @@
+<html>
+<head>
+<title>Steel Toe</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+</head>
+<body>
+<h1>Steel Toe</h1>
+<h2>Available Actions</h2>
+<ul>
+<li><a href="{% url st_web.views.install %}">Install</a></li>
+<li><a href="{% url st_web.views.virtinstall %}">Virtual Machine Install</a></li>
+</ul>
+</body>
+</html>
diff --git a/st_web/templates/st_web/install.html b/st_web/templates/st_web/install.html
new file mode 100644
index 0000000..e5870b0
--- /dev/null
+++ b/st_web/templates/st_web/install.html
@@ -0,0 +1,129 @@
+{% load ifin %}
+<html>
+<head>
+<title>Steel Toe Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}yui/tabview/assets/skins/sam/tabview.css" />
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/yahoo-dom-event/yahoo-dom-event.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/element/element-beta-min.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/tabview/tabview-min.js"></script>
+</head>
+<body>
+<h1>Steel Toe Install</h1>
+<form action="{% url st_web.views.install %}" method="post">
+
+{% if form.errors %}
+{{ form.non_field_errors }}
+{% endif %}
+
+<h2>Select Tree to install</h2>
+{{ form.tree.errors }}
+<div id="treeselect" class="yui-navset">
+ <ul class="yui-nav">
+ <li class="selected"><a href="#tall">All</a></li>
+ <li><a href="#trecent">Recently Used</a></li>
+ <li><a href="#tinstalled">Installed</a></li>
+ </ul>
+ <div class="yui-content">
+ <div id="tall">
+ {% regroup steeltoe.trees|dictsort:"name" by name as trees %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Tree Name</th><th>Kernel</th><th>Links</th></tr>
+ {% for tree in trees %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="tree" value="{{ tree.grouper }}" {% ifequal tree.grouper form.tree.data %}checked="checked"{% endifequal %}></td>
+ <td>{{ tree.grouper }}</td>
+ <td>{{ tree.list.0.meta.kernel }}</td>
+ <td>{% for limb in tree.list %}
+ <a href="http://{{ steeltoe.config.treeserver }}{{ limb.path }}">{{ limb.meta.arch }}</a>
+ {% endfor %}
+ </td>
+ </tr>
+ {% endfor %}
+ </table>
+
+ </div>
+ <div id="trecent">
+ {% if request.session.trees %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Tree Name</th><th>Times installed</th></tr>
+ {% for tree in request.session.trees %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="tree" value="{{ tree.name }}" {% ifequal tree.name form.tree.data %}checked="checked"{% endifequal %}></td>
+ <td>{{ tree.name }}</td>
+ <td>{{ tree.count }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ <p>A list of recently installed trees</p>
+ {% endif %}
+ </div>
+ <div id="tinstalled">
+ <p>A list of all trees installed and where</p>
+ </div>
+ </div>
+</div>
+
+<h2>Select Hosts on which to install</h2>
+{{ form.hosts.errors }}
+<div id="hostselect">
+ <ul class="yui-nav">
+ <li class="selected"><a href="#hall">All</a></li>
+ <li><a href="#hgroups">Groups</a></li>
+ <li><a href="#hrecent">Your Systems</a></li>
+ </ul>
+ <div class="yui-content">
+ <div id="hall">
+ <table>
+ <tr class="heading"><th>Select</th><th>Host name</th><th>Arch</th></tr>
+ {% for host in steeltoe.hosts|dictsort:"name" %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ host.name }}" {% ifin host.name form.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.arch }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+ <div id="hgroups">
+ <table>
+ <tr class="heading"><th>Select</th><th>Group name</th><th>Group Members</th></tr>
+ {% for group in steeltoe.groups|dictsort:"name" %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ group.name }}" {% ifin group.name form.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ group.name }}</td>
+ <td>{% for m in group.members %} {{ m }} {% endfor %}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+ <div id="hrecent">
+ {% if request.session.hosts %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Host Name</th><th>Times installed</th></tr>
+ {% for host in request.session.hosts %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ host.name }}" {% ifin host.name form.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.count }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ <p>A list of hosts which you have installed on</p>
+ {% endif %}
+ </div>
+ </div>
+</div>
+
+<script>
+var tv = new YAHOO.widget.TabView('treeselect');
+var hv = new YAHOO.widget.TabView('hostselect');
+</script>
+
+<input type="reset" value="Clear Selections">
+<input type="submit" name="install" value="Install">
+</form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/perform.html b/st_web/templates/st_web/perform.html
new file mode 100644
index 0000000..2d1b195
--- /dev/null
+++ b/st_web/templates/st_web/perform.html
@@ -0,0 +1,15 @@
+<html>
+<head>
+<title>Steel Toe Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+</head>
+<body>
+<h1>Steel Toe Install Output</h1>
+<h2>Output from Steel Toe install command.</h2>
+<pre>
+{{ output }}
+</pre>
+
+<form action="." method="get"><input type="submit" value="Do Another Install"/></form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/virtconfirm.html b/st_web/templates/st_web/virtconfirm.html
new file mode 100644
index 0000000..c03dedc
--- /dev/null
+++ b/st_web/templates/st_web/virtconfirm.html
@@ -0,0 +1,39 @@
+<html>
+<head>
+<title>Steel Toe Virtual Machine Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+</head>
+<body>
+<h1>Steel Toe Virtual Machine Install Confirmation</h1>
+
+<h2>Please verify the following operation:</h2>
+<p>You want to install <b>{{ tree }}</b>, using <b>{{ dom0 }}</b> as the installation host, on:</p>
+
+<ul>
+{% for host in hosts %}
+<li>{{ host.name }} with root device /dev/{{ host.vg }}/{{ host.lv }} ({{ host.size }}),</li>
+{% endfor %}
+</ul>
+{% if shared %}
+<p>and shared device{{ shared|length|pluralize }}</p>
+<ul>
+{% for v in shared %}
+<li>/dev/{{ v.vg }}/{{ v.lv }} ({{ v.size }})</li>
+{% endfor %}
+</ul>
+{% else %}
+<p>and no shared devices.</p>
+{% endif %}
+<form action="." method="post">
+{% for f in hostform %}
+{{ f.as_hidden }}
+{% endfor %}
+{% for f in volform %}
+{{ f.as_hidden }}
+{% endfor %}
+<input type="hidden" name="step" value="confirm"/>
+<input type="submit" name="install" value="Confirm"/>
+<input type="submit" name="install" value="Cancel"/>
+</form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/virthosts.html b/st_web/templates/st_web/virthosts.html
new file mode 100644
index 0000000..27f844c
--- /dev/null
+++ b/st_web/templates/st_web/virthosts.html
@@ -0,0 +1,170 @@
+{% load ifin %}
+<html>
+<head>
+<title>Steel Toe Virtual Machine Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}yui/tabview/assets/skins/sam/tabview.css" />
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/yahoo-dom-event/yahoo-dom-event.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/element/element-beta-min.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/tabview/tabview-min.js"></script>
+</head>
+<body>
+<h1>Steel Toe Virtual Machine Install</h1>
+<form action="{% url st_web.views.virtinstall %}" method="post">
+
+{% if hostform.errors %}
+{{ hostform.non_field_errors }}
+{% endif %}
+
+<h2>Select Tree to install</h2>
+{{ hostform.tree.errors }}
+<div id="treeselect" class="yui-navset">
+ <ul class="yui-nav">
+ <li class="selected"><a href="#tall">All</a></li>
+ <li><a href="#trecent">Recently Used</a></li>
+ <li><a href="#tinstalled">Installed</a></li>
+ </ul>
+ <div class="yui-content">
+ <div id="tall">
+ {% regroup steeltoe.trees|dictsort:"name" by name as trees %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Tree Name</th><th>Kernel</th><th>Links</th></tr>
+ {% for tree in trees %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="tree" value="{{ tree.grouper }}" {% ifequal tree.grouper hostform.tree.data %}checked="checked"{% endifequal %}></td>
+ <td>{{ tree.grouper }}</td>
+ <td>{{ tree.list.0.meta.kernel }}</td>
+ <td>{% for limb in tree.list %}
+ <a href="http://{{ steeltoe.config.treeserver }}{{ limb.path }}">{{ limb.meta.arch }}</a>
+ {% endfor %}
+ </td>
+ </tr>
+ {% endfor %}
+ </table>
+
+ </div>
+ <div id="trecent">
+ {% if request.session.trees %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Tree Name</th><th>Times installed</th></tr>
+ {% for tree in request.session.trees %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="tree" value="{{ tree.name }}" {% ifequal tree.name hostform.tree.data %}checked="checked"{% endifequal %}></td>
+ <td>{{ tree.name }}</td>
+ <td>{{ tree.count }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ <p>A list of recently installed trees</p>
+ {% endif %}
+ </div>
+ <div id="tinstalled">
+ <p>A list of all trees installed and where</p>
+ </div>
+ </div>
+</div>
+
+<h2>Select a Physical Host on which to install</h2>
+{{ hostform.dom0.errors }}
+<div id="dom0select">
+ <ul class="yui-nav">
+ <li class="selected"><a href="#hall">All</a></li>
+ <li><a href="#hrecent">Your Systems</a></li>
+ </ul>
+ <div class="yui-content">
+ <div id="hall">
+ <table>
+ <tr class="heading"><th>Select</th><th>Host name</th><th>Arch</th></tr>
+ {% for host in steeltoe.hosts|dictsort:"name" %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="dom0" value="{{ host.name }}" {% ifin host.name hostform.dom0.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.arch }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+ <div id="hrecent">
+ {% if request.session.hosts %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Host Name</th><th>Times installed</th></tr>
+ {% for host in request.session.hosts %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="radio" name="dom0" value="{{ host.name }}" {% ifin host.name hostform.dom0.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.count }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ <p>A list of hosts which you have installed on</p>
+ {% endif %}
+ </div>
+ </div>
+</div>
+
+<h2>Select Virtual Hosts on which to install</h2>
+{{ hostform.hosts.errors }}
+<div id="hostselect">
+ <ul class="yui-nav">
+ <li class="selected"><a href="#hall">All</a></li>
+ <li><a href="#hgroups">Groups</a></li>
+ <li><a href="#hrecent">Your Systems</a></li>
+ </ul>
+ <div class="yui-content">
+ <div id="hall">
+ <table>
+ <tr class="heading"><th>Select</th><th>Host name</th><th>Arch</th></tr>
+ {% for host in steeltoe.hosts|dictsort:"name" %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ host.name }}" {% ifin host.name hostform.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.arch }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+ <div id="hgroups">
+ <table>
+ <tr class="heading"><th>Select</th><th>Group name</th><th>Group Members</th></tr>
+ {% for group in steeltoe.groups|dictsort:"name" %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ group.name }}" {% ifin group.name hostform.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ group.name }}</td>
+ <td>{% for m in group.members %} {{ m }} {% endfor %}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ </div>
+ <div id="hrecent">
+ {% if request.session.hosts %}
+ <table>
+ <tr class="heading"><th>Select</th><th>Host Name</th><th>Times installed</th></tr>
+ {% for host in request.session.hosts %}
+ <tr class="{% cycle odd,even %}">
+ <td class="input"><input type="checkbox" name="hosts" value="{{ host.name }}" {% ifin host.name hostform.hosts.data %}checked="checked"{% endifin %}></td>
+ <td>{{ host.name }}</td>
+ <td>{{ host.count }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ <p>A list of hosts which you have installed on</p>
+ {% endif %}
+ </div>
+ </div>
+</div>
+
+<script>
+var tv = new YAHOO.widget.TabView('treeselect');
+var dv = new YAHOO.widget.TabView('dom0select');
+var hv = new YAHOO.widget.TabView('hostselect');
+</script>
+
+<input type="hidden" name="step" value="hosts"/>
+<input type="reset" value="Clear Selections">
+<input type="submit" name="install" value="Next">
+</form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/virtperform.html b/st_web/templates/st_web/virtperform.html
new file mode 100644
index 0000000..5de5d60
--- /dev/null
+++ b/st_web/templates/st_web/virtperform.html
@@ -0,0 +1,15 @@
+<html>
+<head>
+<title>Steel Toe Virtual Machine Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+</head>
+<body>
+<h1>Steel Toe Virtual Machine Install Output</h1>
+<h2>Output from Steel Toe virtinstall command.</h2>
+<pre>
+{{ output }}
+</pre>
+
+<form action="." method="get"><input type="submit" value="Do Another Install"/></form>
+</body>
+</html>
diff --git a/st_web/templates/st_web/virtvolumes.html b/st_web/templates/st_web/virtvolumes.html
new file mode 100644
index 0000000..3bf3571
--- /dev/null
+++ b/st_web/templates/st_web/virtvolumes.html
@@ -0,0 +1,65 @@
+{% load ifin %}
+<html>
+<head>
+<title>Steel Toe Install</title>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}st_web/st_web.css"/>
+<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}yui/tabview/assets/skins/sam/tabview.css" />
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/yahoo-dom-event/yahoo-dom-event.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/element/element-beta-min.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}yui/tabview/tabview-min.js"></script>
+</head>
+<body>
+<h1>Steel Toe Virtual Machine Install</h1>
+<form action="{% url st_web.views.virtinstall %}" method="post">
+
+{% if volform.fields %}
+
+<h2>Match volumes with virtual machines</h2>
+
+{% if volform.errors %}
+{{ volform.non_field_errors }}
+{% endif %}
+
+<div class="yui-navset">
+<div class="yui-content">
+<table>
+<tr class="heading">
+<th>Logical Volume</th><th>Volume Group</th><th>Size</th>
+{% for choice in volform.fields.values.0.choices %}<th>{{ choice.1 }}</th>{% endfor %}
+</tr>
+{% for bf in volform %}
+<tr class="{% cycle odd,even %}"><td>{{ bf.field.lv }}</td><td>{{ bf.field.vg }}</td><td>{{ bf.field.size }}</td>
+ {{ bf }}
+{% if bf.errors %}<td>{{ bf.errors }}</td>{% endif %}
+</tr>
+{% endfor %}
+</table>
+</div>
+</div>
+
+{% for f in hostform %}
+{{ f.as_hidden }}
+{% endfor %}
+
+<input type="hidden" name="step" value="vols"/>
+<input type="submit" name="install" value="Cancel">
+<input type="reset" value="Clear Selections">
+<input type="submit" name="install" value="Install">
+{% else %}
+<h2>No volumes found</h2>
+There are many reasons we couldn't find volumes to use.
+<ul>
+<li>The remote shell could not connect to the dom0.</li>
+<li>All logical volumes are currently in use.</li>
+</ul>
+{% for f in hostform %}
+{{ f.as_hidden }}
+{% endfor %}
+
+<input type="hidden" name="step" value="vols"/>
+<input type="submit" name="install" value="Cancel">
+
+{% endif %}
+</form>
+</body>
+</html>