Added tooltips. Fixed add/remove VLAN/vSwitch. Updated networks table.
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/branches/2.8@15132 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
parent
40a9d41e0b
commit
ba121aef4a
@ -60,7 +60,7 @@ function loadServicePage(tabId) {
|
||||
title = 'z/VM';
|
||||
|
||||
// Get zVM host names
|
||||
if (!$.cookie('srv_zvm')){
|
||||
if (!$.cookie('zvms')){
|
||||
$.ajax( {
|
||||
url : 'lib/srv_cmd.php',
|
||||
dataType : 'json',
|
||||
@ -349,24 +349,45 @@ function imageDialog() {
|
||||
var info = createInfoBar('Provide the following attributes for the image. The image name will be generated based on the attributes you will give.');
|
||||
imageForm.append(info);
|
||||
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype" value="linux"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch"/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname" value="Linux"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers"/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile"/></div>');
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled" title="The name of the image"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable" title="Select if you want this image to appear on the self service portal"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype" value="linux" title="The type of operating system image this definition represents"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch" title="The hardware architecture of this node. Valid values: x86_64, ppc64, x86, ia64, and s390x."/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname" value="Linux" title="Operating system name"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers" title="The Linux operating system deployed on this node. Valid values: rhel*, centos*, fedora*, and sles* (where * is the version #)."/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile" title="The node usage category"/></div>');
|
||||
var provisionMethod = $('<div><label>Provision method:</label></div>');
|
||||
var provisionSelect = $('<select name="provmethod">'
|
||||
var provisionSelect = $('<select name="provmethod" title="The provisioning method for node deployment">'
|
||||
+ '<option value=""></option>'
|
||||
+ '<option value="install">install</option>'
|
||||
+ '<option value="netboot">netboot</option>'
|
||||
+ '<option value="statelite">statelite</option>'
|
||||
+ '</select>');
|
||||
provisionMethod.append(provisionSelect);
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments" title="Any user-written notes"/></div>');
|
||||
imageForm.append(imageName, selectable, imageType, architecture, osName, osVersion, profile, provisionMethod, comments);
|
||||
|
||||
// Generate tooltips
|
||||
imageForm.find('div input[title],textarea[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add image
|
||||
imageForm.dialog({
|
||||
title:'Create image',
|
||||
@ -474,22 +495,22 @@ function editImageDialog(iName, iSelectable, iOsVersion, iOsArch, iOsName, iType
|
||||
var info = createInfoBar('Provide the following attributes for the image. The image name will be generated based on the attributes you will give.');
|
||||
imageForm.append(info);
|
||||
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype" value="linux"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch"/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers"/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile"/></div>');
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled" title="The name of the image"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable" title="Select if you want this image to appear on the self service portal"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype" value="linux" title="The type of operating system image this definition represents"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch" title="The hardware architecture of this node. Valid values: x86_64, ppc64, x86, ia64, and s390x."/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname" value="Linux" title="Operating system name"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers" title="The Linux operating system deployed on this node. Valid values: rhel*, centos*, fedora*, and sles* (where * is the version #)."/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile" title="The node usage category"/></div>');
|
||||
var provisionMethod = $('<div><label>Provision method:</label></div>');
|
||||
var provisionSelect = $('<select name="provmethod">'
|
||||
var provisionSelect = $('<select name="provmethod" title="The provisioning method for node deployment">'
|
||||
+ '<option value=""></option>'
|
||||
+ '<option value="install">install</option>'
|
||||
+ '<option value="netboot">netboot</option>'
|
||||
+ '<option value="statelite">statelite</option>'
|
||||
+ '</select>');
|
||||
provisionMethod.append(provisionSelect);
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments" title="Any user-written notes"/></div>');
|
||||
imageForm.append(imageName, selectable, imageType, architecture, osName, osVersion, profile, provisionMethod, comments);
|
||||
|
||||
// Fill in image attributes
|
||||
@ -504,6 +525,27 @@ function editImageDialog(iName, iSelectable, iOsVersion, iOsArch, iOsName, iType
|
||||
if (iSelectable == "yes")
|
||||
imageForm.find('input[name="selectable"]').attr('checked', 'checked');
|
||||
|
||||
// Generate tooltips
|
||||
imageForm.find('div input[title],textarea[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add image
|
||||
imageForm.dialog({
|
||||
title:'Edit image',
|
||||
@ -860,14 +902,35 @@ function groupDialog() {
|
||||
var info = createInfoBar('Provide the following attributes for the group.');
|
||||
groupForm.append(info);
|
||||
|
||||
var group = $('<div><label>Group:</label><input type="text" name="group"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable"/></div>');
|
||||
var ip = $('<div><label>IP:</label><input type="text" name="ip"/></div>');
|
||||
var hostnames = $('<div><label>Hostnames:</label><input type="text" name="hostnames"/></div>');
|
||||
var network = $('<div><label>Network:</label><input type="text" name="network"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments"/></div>');
|
||||
var group = $('<div><label>Group:</label><input type="text" name="group" title="The group name"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable" title="Select if you want this group to appear on the self service portal"/></div>');
|
||||
var ip = $('<div><label>IP:</label><input type="text" name="ip" title="The IP address of the nodes, usually given as a regular expression, e.g. |ihost(\d+)|10.1.1.($1+0)|"/></div>');
|
||||
var hostnames = $('<div><label>Hostnames:</label><input type="text" name="hostnames" title="The hostname of the nodes, usually given as a regular expression, e.g. |(.*)|($1).sourceforge.net|"/></div>');
|
||||
var network = $('<div><label>Network:</label><input type="text" name="network" title="The groups network and its subnet mask, e.g. 10.1.1.0/24"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments" title="A description of the group"/></div>');
|
||||
groupForm.append(group, selectable, ip, hostnames, network, comments);
|
||||
|
||||
// Generate tooltips
|
||||
groupForm.find('div input[title],textarea[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add image
|
||||
groupForm.dialog({
|
||||
title:'Create group',
|
||||
@ -963,12 +1026,12 @@ function editGroupDialog(iGroup, iSelectable, iIp, iHostnames, iNetwork, iCommen
|
||||
var info = createInfoBar('Provide the following attributes for the group.');
|
||||
groupForm.append(info);
|
||||
|
||||
var group = $('<div><label>Group:</label><input type="text" name="group"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable"/></div>');
|
||||
var ip = $('<div><label>IP:</label><input type="text" name="ip"/></div>');
|
||||
var hostnames = $('<div><label>Hostnames:</label><input type="text" name="hostnames"/></div>');
|
||||
var network = $('<div><label>Network:</label><input type="text" name="network"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments"/></div>');
|
||||
var group = $('<div><label>Group:</label><input type="text" name="group" title="The group name"/></div>');
|
||||
var selectable = $('<div><label>Selectable:</label><input type="checkbox" name="selectable" title="Select if you want this group to appear on the self service portal"/></div>');
|
||||
var ip = $('<div><label>IP:</label><input type="text" name="ip" title="The IP address for the group, usually given as a regular expression, e.g. |ihost(\d+)|10.1.1.($1+0)|"/></div>');
|
||||
var hostnames = $('<div><label>Hostnames:</label><input type="text" name="hostnames" title="The hostname for the group, usually given as a regular expression, e.g. |(.*)|($1).sourceforge.net|"/></div>');
|
||||
var network = $('<div><label>Network:</label><input type="text" name="network" title="The groups network and its subnet mask, e.g. 10.1.1.0/24"/></div>');
|
||||
var comments = $('<div><label>Description:</label><input type="text" name="comments" title="A description of the group"/></div>');
|
||||
groupForm.append(group, selectable, ip, hostnames, network, comments);
|
||||
|
||||
// Fill in group attributes
|
||||
@ -980,6 +1043,27 @@ function editGroupDialog(iGroup, iSelectable, iIp, iHostnames, iNetwork, iCommen
|
||||
if (iSelectable == "yes")
|
||||
groupForm.find('input[name="selectable"]').attr('checked', 'checked');
|
||||
|
||||
// Generate tooltips
|
||||
groupForm.find('div input[title],textarea[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add image
|
||||
groupForm.dialog({
|
||||
title:'Edit group',
|
||||
|
@ -224,15 +224,15 @@ function openCreateUserDialog(data) {
|
||||
|
||||
createUserForm.append(info, userFS, optionFS);
|
||||
|
||||
userAttr.append($('<div><label>Priority:</label><input type="text" name="priority" disabled="disabled" value="' + priority + '"/></div>'));
|
||||
userAttr.append($('<div><label>User name:</label><input type="text" name="name"/></div>'));
|
||||
userAttr.append($('<div><label>Password:</label><input name="password" type="password"></div>'));
|
||||
userAttr.append($('<div><label>Confirm password:</label><input name="confirm_password" type="password"></div>'));
|
||||
optionAttr.append($('<div><label>Host:</label><input type="text" name="host"/></div>'));
|
||||
optionAttr.append($('<div><label>Commands:</label><input type="text" name="commands"/></div>'));
|
||||
optionAttr.append($('<div><label>Parameters:</label><input type="text" name="parameters"/></div>'));
|
||||
optionAttr.append($('<div><label>Node Range:</label><input type="text" name="nodeRange"/></div>'));
|
||||
optionAttr.append($('<div><label>Rule:</label><select name="rule">' +
|
||||
userAttr.append($('<div><label>Priority:</label><input type="text" name="priority" disabled="disabled" value="' + priority + '" title="The priority value for this user"/></div>'));
|
||||
userAttr.append($('<div><label>User name:</label><input type="text" name="name" title="The user name to log into xCAT with"/></div>'));
|
||||
userAttr.append($('<div><label>Password:</label><input name="password" type="password" title="The user password that will be used to log into xCAT"></div>'));
|
||||
userAttr.append($('<div><label>Confirm password:</label><input name="confirm_password" type="password" title="The user password that will be used to log into xCAT"></div>'));
|
||||
optionAttr.append($('<div><label>Host:</label><input type="text" name="host" title="The host from which users may issue the commands specified by this rule. By default, it is all hosts."/></div>'));
|
||||
optionAttr.append($('<div><label>Commands:</label><input type="text" name="commands" title="The list of commands that this rule applies to. By default, it is all commands."/></div>'));
|
||||
optionAttr.append($('<div><label>Parameters:</label><input type="text" name="parameters" title="A regular expression that matches the command parameters (everything except the noderange) that this rule applies to. By default, it is all parameters."/></div>'));
|
||||
optionAttr.append($('<div><label>Node Range:</label><input type="text" name="nodeRange" title="The node range that this rule applies to. By default, it is all nodes."/></div>'));
|
||||
optionAttr.append($('<div><label>Rule:</label><select name="rule" title="Specifies how this rule should be applied. Valid values are: allow, accept, trusted, and deny.">' +
|
||||
'<option value="allow">Allow</option>' +
|
||||
'<option value="accept">Accept</option>' +
|
||||
'<option value="trusted">Trusted</option>' +
|
||||
@ -243,12 +243,33 @@ function openCreateUserDialog(data) {
|
||||
optionAttr.append(rootPrivilege);
|
||||
rootPrivilege.append(accessCheckbox);
|
||||
|
||||
optionAttr.append($('<div><label>Comments:</label><input type="text" name="comments" style="width: 250px;"/></div>'));
|
||||
optionAttr.append($('<div><label>Disable:</label><select name="disable">' +
|
||||
optionAttr.append($('<div><label>Comments:</label><input type="text" name="comments" style="width: 250px;" title="Any user written notes"/></div>'));
|
||||
optionAttr.append($('<div><label>Disable:</label><select name="disable" title="Set to yes to disable the user">' +
|
||||
'<option value="">No</option>' +
|
||||
'<option value="yes">Yes</option>' +
|
||||
'</select></div>'));
|
||||
|
||||
// Generate tooltips
|
||||
createUserForm.find('div input[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add disk
|
||||
createUserForm.dialog({
|
||||
title:'Configure user',
|
||||
|
@ -149,7 +149,7 @@ zvmPlugin.prototype.loadServiceProvisionPage = function(tabId) {
|
||||
loadOSImages(imageCol);
|
||||
|
||||
// Get zVM host names
|
||||
if (!$.cookie('zvm')){
|
||||
if (!$.cookie('zvms')){
|
||||
$.ajax( {
|
||||
url : 'lib/srv_cmd.php',
|
||||
dataType : 'json',
|
||||
@ -1866,20 +1866,20 @@ zvmPlugin.prototype.addNode = function() {
|
||||
// Create provision type drop down
|
||||
var type = $('<div></div>');
|
||||
var typeLabel = $('<label>Type:</label>');
|
||||
var typeSelect = $('<select type="text" name="type"></select>');
|
||||
var typeSelect = $('<select type="text" name="type" title="The type of node"></select>');
|
||||
typeSelect.append('<option value="vm" selected="selected">VM</option>');
|
||||
typeSelect.append('<option value="host">Host</option>');
|
||||
type.append(typeLabel);
|
||||
type.append(typeSelect);
|
||||
addNodeForm.append(type);
|
||||
|
||||
addNodeForm.append('<div><label>Node range *:</label><input type="text" name="node"/></div>');
|
||||
addNodeForm.append('<div><label>User ID range *:</label><input type="text" name="userId"/></div>');
|
||||
addNodeForm.append('<div><label>zHCP *:</label><input type="text" name="hcp"/></div>');
|
||||
addNodeForm.append('<div><label>Groups *:</label><input type="text" name="groups"/></div>');
|
||||
addNodeForm.append('<div><label>Operating system *:</label><input type="text" name="os"/></div>');
|
||||
addNodeForm.append('<div><label>IP address range:</label><input name="ip" type="text"></div>');
|
||||
addNodeForm.append('<div><label>Hostname range:</label><input name="hostname" type="text"></div>');
|
||||
addNodeForm.append('<div><label>Node range *:</label><input type="text" name="node" title="The node or node range to add into xCAT. A node range must be given as: node1-node9 or node[1-9]."/></div>');
|
||||
addNodeForm.append('<div><label>User ID range *:</label><input type="text" name="userId" title="The user ID or a user ID range. A user ID range must be given as: user1-user9 or user[1-9]."/></div>');
|
||||
addNodeForm.append('<div><label>zHCP *:</label><input type="text" name="hcp" title="The System z hardware control point (zHCP) responsible for managing the node(s)"/></div>');
|
||||
addNodeForm.append('<div><label>Groups *:</label><input type="text" name="groups" title="The group where the new node(s) will be placed under"/></div>');
|
||||
addNodeForm.append('<div><label>Operating system *:</label><input type="text" name="os" title="The z/VM operating system version, e.g. zvm6.1."/></div>');
|
||||
addNodeForm.append('<div><label>IP address range:</label><input name="ip" type="text" title="The IP address range for the node(s). An IP address range must be given in the following format: 192.168.0.1-192.168.9."></div>');
|
||||
addNodeForm.append('<div><label>Hostname range:</label><input name="hostname" type="text" title="The hostname range for the node(s). A hostname range must be given in the following format: ihost1.sourceforge.net-ihost9.sourceforge.net."></div>');
|
||||
addNodeForm.append('<div><label>* required</label></div>');
|
||||
|
||||
// OS field only required for hosts
|
||||
@ -1897,6 +1897,27 @@ zvmPlugin.prototype.addNode = function() {
|
||||
}
|
||||
});
|
||||
|
||||
// Generate tooltips
|
||||
addNodeForm.find('div input[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open form as a dialog
|
||||
addNodeForm.dialog({
|
||||
title: 'Add node',
|
||||
@ -2213,7 +2234,7 @@ zvmPlugin.prototype.loadMigratePage = function(tgtNode) {
|
||||
var hcp = new Object();
|
||||
|
||||
// Create a drop-down for z/VM destinations
|
||||
var destSelect = $('<select name="dest"></select>')
|
||||
var destSelect = $('<select name="dest" title="The z/VM SSI cluster name of the destination system to which the specified virtual machine will be relocated."></select>')
|
||||
destSelect.append($('<option></option>'));
|
||||
for (var i in hosts) {
|
||||
args = hosts[i].split(':');
|
||||
@ -2281,7 +2302,12 @@ zvmPlugin.prototype.loadMigratePage = function(tgtNode) {
|
||||
vmAttr.append(dest);
|
||||
|
||||
// Action Parameter
|
||||
var actionparam = $('<div><label>Action:</label><select name="action"><option value=""></option><option value="MOVE">Move</option><option value="TEST">Test</option><option value="CANCEL">Cancel</option></select></div>');
|
||||
var actionparam = $('<div><label>Action:</label><select name="action" title="Initiate a VMRELOCATE of the virtual machine. Test the specified virtual machine and determine if it is eligible to be relocated. Stop the relocation of the specified virtual machine.">' +
|
||||
'<option value=""></option>' +
|
||||
'<option value="MOVE">Move</option>' +
|
||||
'<option value="TEST">Test</option>' +
|
||||
'<option value="CANCEL">Cancel</option>' +
|
||||
'</select></div>');
|
||||
vmAttr.append(actionparam);
|
||||
|
||||
// Parameters label
|
||||
@ -2293,7 +2319,10 @@ zvmPlugin.prototype.loadMigratePage = function(tgtNode) {
|
||||
optionalFS.append(optAttr);
|
||||
|
||||
// Immediate Parameter
|
||||
var immediateparam = $('<div><label>Immediate:</label><select name="immediate"><option value="NO">No (default)</option><option value="YES">Yes</option></select></div>');
|
||||
var immediateparam = $('<div><label>Immediate:</label><select name="immediate" title="Select No to specify immediate processing (default). Select Yes to specify the VMRELOCATE command will do one early pass through virtual machine storage and then go directly to the quiesce stage. The defaults for both max_total and max_quiesce are NOLIMIT when immediate=YES is specified.">' +
|
||||
'<option value="NO">No (default)</option>' +
|
||||
'<option value="YES">Yes</option>' +
|
||||
'</select></div>');
|
||||
optAttr.append(immediateparam);
|
||||
immediateparam.change(function() {
|
||||
if ($('#' + newTabId + ' select[name=immediate]').val() == 'yes') {
|
||||
@ -2316,7 +2345,7 @@ zvmPlugin.prototype.loadMigratePage = function(tgtNode) {
|
||||
optAttr.append(forceParam);
|
||||
|
||||
// Generate tooltips
|
||||
migrateForm.find('div input[title]').tooltip({
|
||||
migrateForm.find('div input[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1856,8 +1856,12 @@ function loadScriptPage(tgtNodes) {
|
||||
upload.append(label, file, subBtn);
|
||||
scriptAttr.append(upload);
|
||||
|
||||
// Script
|
||||
var script = $('<div><label>Script:</label><textarea title="The code to run against the node range"/>');
|
||||
scriptAttr.append(script);
|
||||
|
||||
// Generate tooltips
|
||||
scriptForm.find('div input[title]').tooltip({
|
||||
scriptForm.find('div input[title],textarea').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
@ -1871,10 +1875,6 @@ function loadScriptPage(tgtNodes) {
|
||||
}
|
||||
});
|
||||
|
||||
// Script
|
||||
var script = $('<div><label>Script:</label><textarea/>');
|
||||
scriptAttr.append(script);
|
||||
|
||||
// Ajax form options
|
||||
var options = {
|
||||
// Output to text area
|
||||
@ -2950,7 +2950,7 @@ function openSetAttrsDialog() {
|
||||
$(this).remove();
|
||||
},
|
||||
height: 400,
|
||||
width: 700,
|
||||
width: 800,
|
||||
buttons: {
|
||||
"Save": function() {
|
||||
// Remove any warning messages
|
||||
|
@ -72,7 +72,7 @@ function loadNodesetPage(tgtNodes) {
|
||||
// Create boot method drop down
|
||||
var method = $('<div></div>');
|
||||
var methodLabel = $('<label>Boot method:</label>');
|
||||
var methodSelect = $('<select id="bootMethod" name="bootMethod"></select>');
|
||||
var methodSelect = $('<select id="bootMethod" name="bootMethod" title="The method for node deployment"></select>');
|
||||
methodSelect.append('<option value="boot">boot</option>'
|
||||
+ '<option value="install">install</option>'
|
||||
+ '<option value="iscsiboot">iscsiboot</option>'
|
||||
@ -86,7 +86,7 @@ function loadNodesetPage(tgtNodes) {
|
||||
// Create boot type drop down
|
||||
var type = $('<div></div>');
|
||||
var typeLabel = $('<label>Boot type:</label>');
|
||||
var typeSelect = $('<select id="bootType" name="bootType"></select>');
|
||||
var typeSelect = $('<select id="bootType" name="bootType" title="The type of network booting to use for this node"></select>');
|
||||
typeSelect.append('<option value="zvm">zvm</option>'
|
||||
+ '<option value="install">pxe</option>'
|
||||
+ '<option value="iscsiboot">yaboot</option>'
|
||||
@ -147,7 +147,7 @@ function loadNodesetPage(tgtNodes) {
|
||||
imageAttr.append(profile);
|
||||
|
||||
// Generate tooltips
|
||||
nodesetForm.find('div input[title]').tooltip({
|
||||
nodesetForm.find('div input[title],select').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
|
@ -364,17 +364,32 @@ function openAddImageDialog() {
|
||||
|
||||
// Create info bar
|
||||
var info = createInfoBar('Provide the following attributes for the image. The image name will be generated based on the attributes you will give.');
|
||||
addImageForm.append(info);
|
||||
|
||||
var imageFS = $('<fieldset></fieldset>');
|
||||
var imageLegend = $('<legend>Image</legend>');
|
||||
imageFS.append(imageLegend);
|
||||
var imageAttr = $('<div style="display: inline-table; vertical-align: middle;"></div>');
|
||||
imageFS.append($('<div style="display: inline-table; vertical-align: middle;"><img src="images/provision/operating_system.png"></img></div>'));
|
||||
imageFS.append(imageAttr);
|
||||
|
||||
var optionFS = $('<fieldset></fieldset>');
|
||||
var optionLegend = $('<legend>Options</legend>');
|
||||
optionFS.append(optionLegend);
|
||||
var optionAttr = $('<div style="display: inline-table; vertical-align: middle;"></div>');
|
||||
optionFS.append($('<div style="display: inline-table; vertical-align: middle;"><img src="images/provision/setting.png" style="width: 70px;"></img></div>'));
|
||||
optionFS.append(optionAttr);
|
||||
|
||||
addImageForm.append(info, imageFS, optionFS);
|
||||
|
||||
// Create inputs for image attributes
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch"/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers"/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile"/></div>');
|
||||
var imageName = $('<div><label>Image name:</label><input type="text" name="imagename" disabled="disabled" title="The name of this xCAT OS image definition"/></div>');
|
||||
var imageType = $('<div><label>Image type:</label><input type="text" name="imagetype" value="linux" title="The type of operating system image this definition represents"/></div>');
|
||||
var architecture = $('<div><label>OS architecture:</label><input type="text" name="osarch" title="The hardware architecture of this image. Valid values: x86_64, x86, ia64, ppc64, and s390x."/></div>');
|
||||
var osName = $('<div><label>OS name:</label><input type="text" name="osname" value="Linux" title="Operating system name"/></div>');
|
||||
var osVersion = $('<div><label>OS version:</label><input type="text" name="osvers" title="The operating system deployed on this node. Valid values: rhel*, centos*, fedora*, sles* (where * is the version #)."/></div>');
|
||||
var profile = $('<div><label>Profile:</label><input type="text" name="profile" title="The node usage category"/></div>');
|
||||
var provisionMethod = $('<div><label>Provision method:</label></div>');
|
||||
var provisionSelect = $('<select name="provmethod">'
|
||||
var provisionSelect = $('<select name="provmethod" title="The provisioning method for node deployment">'
|
||||
+ '<option value=""></option>'
|
||||
+ '<option value="install">install</option>'
|
||||
+ '<option value="netboot">netboot</option>'
|
||||
@ -383,32 +398,8 @@ function openAddImageDialog() {
|
||||
provisionMethod.append(provisionSelect);
|
||||
|
||||
// Create inputs for optional attributes
|
||||
var exList = $('<div><label>Exclusion list:</label></div>');
|
||||
var exListInput = $('<input type="text" name="exlist"/>');
|
||||
exList.append(exListInput);
|
||||
exListInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
$('#addImage input[name="exlist"]').val(path);
|
||||
},
|
||||
onLoad : function() {
|
||||
return $('#addImage input[name="exlist"]').val();
|
||||
},
|
||||
knownPaths : [{
|
||||
text : 'Install',
|
||||
image : 'desktop.png',
|
||||
path : '/install'
|
||||
}],
|
||||
imageUrl : 'images/serverbrowser/',
|
||||
systemImageUrl : 'images/serverbrowser/',
|
||||
handlerUrl : 'lib/getpath.php',
|
||||
title : 'Browse',
|
||||
requestMethod : 'POST',
|
||||
width : '500',
|
||||
height : '300',
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
var otherpkgDirectory = $('<div><label>Other package directory:</label></div>');
|
||||
var otherpkgDirectoryInput = $('<input type="text" name="otherpkgdir"/>');
|
||||
var otherpkgDirectoryInput = $('<input type="text" name="otherpkgdir" title="The base directory where the non-distro packages are stored"/>');
|
||||
otherpkgDirectory.append(otherpkgDirectoryInput);
|
||||
otherpkgDirectoryInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
@ -432,7 +423,7 @@ function openAddImageDialog() {
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
var packageDirectory = $('<div><label>Package directory:</label></div>');
|
||||
var packageDirectoryInput = $('<input type="text" name="pkgdir"/>');
|
||||
var packageDirectoryInput = $('<input type="text" name="pkgdir" title="The name of the directory where the distro packages are stored"/>');
|
||||
packageDirectory.append(packageDirectoryInput);
|
||||
packageDirectoryInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
@ -456,7 +447,7 @@ function openAddImageDialog() {
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
var packageList = $('<div><label>Package list:</label></div>');
|
||||
var packageListInput = $('<input type="text" name="pkglist"/>');
|
||||
var packageListInput = $('<input type="text" name="pkglist" title="The fully qualified name of the file that stores the distro packages list that will be included in the image"/>');
|
||||
packageList.append(packageListInput);
|
||||
packageListInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
@ -479,32 +470,8 @@ function openAddImageDialog() {
|
||||
height : '300',
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
var postInstall = $('<div><label>Post install script:</label></div>');
|
||||
var postInstallInput = $('<input type="text" name="postinstall"/>');
|
||||
postInstall.append(postInstallInput);
|
||||
postInstallInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
$('#addImage input[name="postinstall"]').val(path);
|
||||
},
|
||||
onLoad : function() {
|
||||
return $('#addImage input[name="postinstall"]').val();
|
||||
},
|
||||
knownPaths : [{
|
||||
text : 'Install',
|
||||
image : 'desktop.png',
|
||||
path : '/install'
|
||||
}],
|
||||
imageUrl : 'images/serverbrowser/',
|
||||
systemImageUrl : 'images/serverbrowser/',
|
||||
handlerUrl : 'lib/getpath.php',
|
||||
title : 'Browse',
|
||||
requestMethod : 'POST',
|
||||
width : '500',
|
||||
height : '300',
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
var template = $('<div><label>Template:</label></div>');
|
||||
var templateInput = $('<input type="text" name="template"/>');
|
||||
var templateInput = $('<input type="text" name="template" title="The fully qualified name of the template file that is used to create the kickstart or autoyast file for diskful installation"/>');
|
||||
template.append(templateInput);
|
||||
templateInput.serverBrowser({
|
||||
onSelect : function(path) {
|
||||
@ -528,9 +495,30 @@ function openAddImageDialog() {
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
|
||||
addImageForm.append(imageName, imageType, architecture, osName, osVersion, profile, provisionMethod,
|
||||
exList, otherpkgDirectory, packageDirectory, packageList, postInstall, template);
|
||||
imageAttr.append(imageName, imageType, architecture, osName, osVersion, profile, provisionMethod);
|
||||
optionAttr.append(otherpkgDirectory, packageDirectory, packageList, template);
|
||||
|
||||
// Generate tooltips
|
||||
addImageForm.find('div input[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to add image
|
||||
addImageForm.dialog({
|
||||
title:'Add image',
|
||||
@ -538,7 +526,8 @@ function openAddImageDialog() {
|
||||
close: function(){
|
||||
$(this).remove();
|
||||
},
|
||||
width: 400,
|
||||
beight: 400,
|
||||
width: 600,
|
||||
buttons: {
|
||||
"Ok": function(){
|
||||
// Remove any warning messages
|
||||
@ -553,11 +542,9 @@ function openAddImageDialog() {
|
||||
var provisionMethod = $(this).find('select[name="provmethod"]');
|
||||
|
||||
// Get optional image attributes
|
||||
var exList = $(this).find('input[name="exlist"]');
|
||||
var otherpkgDirectory = $(this).find('input[name="otherpkgdir"]');
|
||||
var pkgDirectory = $(this).find('input[name="pkgdir"]');
|
||||
var pkgList = $(this).find('input[name="pkglist"]');
|
||||
var postInstall = $(this).find('input[name="postinstall"]');
|
||||
var template = $(this).find('input[name="template"]');
|
||||
|
||||
// Check that image attributes are provided before continuing
|
||||
@ -595,16 +582,12 @@ function openAddImageDialog() {
|
||||
'provmethod=' + provisionMethod.val();
|
||||
|
||||
// Get optional attributes
|
||||
if (exList.val())
|
||||
args += ';exlist=' + exList.val();
|
||||
if (otherpkgDirectory.val())
|
||||
args += ';otherpkgdir=' + otherpkgDirectory.val();
|
||||
if (pkgDirectory.val())
|
||||
args += ';pkgdir=' + pkgDirectory.val();
|
||||
if (pkgList.val())
|
||||
args += ';pkglist=' + pkgList.val();
|
||||
if (postInstall.val())
|
||||
args += ';postinstall=' + postInstall.val();
|
||||
if (template.val())
|
||||
args += ';template=' + template.val();
|
||||
|
||||
@ -1059,8 +1042,8 @@ function openEditImagePage(tgtImage) {
|
||||
// There is an element called groups that will override the defaults for the groups attribute.
|
||||
// Hence, the input must have use CSS to override the float and width.
|
||||
|
||||
// Split attributes into 3 per row
|
||||
if (attrIndex > 0 && !(attrIndex % 3)) {
|
||||
// Split attributes into 2 per row
|
||||
if (attrIndex > 0 && !(attrIndex % 2)) {
|
||||
div.css('display', 'inline-block');
|
||||
}
|
||||
|
||||
@ -1303,15 +1286,15 @@ function openCopyCdDialog() {
|
||||
// Create Linux ISO input
|
||||
var iso = $('<div></div>');
|
||||
var isoLabel = $('<label> Linux ISO/DVD:</label>').css('vertical-align', 'middle');
|
||||
var isoInput = $('<input type="text" id="iso" name="iso"/>').css('width', '300px');
|
||||
var isoInput = $('<input type="text" id="iso" name="iso" title="The fully qualified name of the disk image file"/>').css('width', '300px');
|
||||
iso.append(isoLabel);
|
||||
iso.append(isoInput);
|
||||
copyLinuxForm.append(iso);
|
||||
|
||||
// Create architecture input
|
||||
copyLinuxForm.append('<div><label>Architecture:</label><input type="text" id="arch" name="arch"/></div>');
|
||||
copyLinuxForm.append('<div><label>Architecture:</label><input type="text" id="arch" name="arch" title="The hardware architecture of this node. Valid values: x86_64, x86, ia64, ppc64, and s390x."/></div>');
|
||||
// Create distribution input
|
||||
copyLinuxForm.append('<div><label>Distribution:</label><input type="text" id="distro" name="distro"/></div>');
|
||||
copyLinuxForm.append('<div><label>Distribution:</label><input type="text" id="distro" name="distro" title="The operating system name. Valid values: rhel*, centos*, fedora*, sles* (where * is the version #)."/></div>');
|
||||
|
||||
/**
|
||||
* Browse
|
||||
@ -1342,6 +1325,27 @@ function openCopyCdDialog() {
|
||||
basePath : '/install' // Limit user to only install directory
|
||||
});
|
||||
|
||||
// Generate tooltips
|
||||
copyLinuxForm.find('div input[title],select[title]').tooltip({
|
||||
position: "center right",
|
||||
offset: [-2, 10],
|
||||
effect: "fade",
|
||||
opacity: 0.8,
|
||||
delay: 0,
|
||||
predelay: 800,
|
||||
events: {
|
||||
def: "mouseover,mouseout",
|
||||
input: "mouseover,mouseout",
|
||||
widget: "focus mouseover,blur mouseout",
|
||||
tooltip: "mouseover,mouseout"
|
||||
},
|
||||
|
||||
// Change z index to show tooltip in front
|
||||
onBeforeShow: function() {
|
||||
this.getTip().css('z-index', $.topZIndex());
|
||||
}
|
||||
});
|
||||
|
||||
// Open dialog to copy CD
|
||||
copyLinuxForm.dialog({
|
||||
title:'Copy CD',
|
||||
|
@ -241,7 +241,7 @@ function loadServiceProvisionPage(tabId) {
|
||||
title = 'z/VM';
|
||||
|
||||
// Get zVM host names
|
||||
if (!$.cookie('srv_zvm')){
|
||||
if (!$.cookie('zvms')){
|
||||
$.ajax( {
|
||||
url : 'lib/srv_cmd.php',
|
||||
dataType : 'json',
|
||||
|
@ -490,6 +490,7 @@ function initPage() {
|
||||
includeJs("js/jquery/jquery.jqplot.min.js");
|
||||
includeJs("js/jquery/jqplot.pieRenderer.min.js");
|
||||
includeJs("js/jquery/jqplot.dateAxisRenderer.min.js");
|
||||
includeJs("js/jquery/jquery.topzindex.min.js");
|
||||
|
||||
// Page plugins
|
||||
includeJs("js/configure/configure.js");
|
||||
@ -586,7 +587,6 @@ function initPage() {
|
||||
loadHelpPage();
|
||||
} else {
|
||||
// Load nodes page by default
|
||||
includeJs("js/jquery/jquery.topzindex.min.js");
|
||||
includeJs("js/nodes/nodeset.js");
|
||||
includeJs("js/nodes/rnetboot.js");
|
||||
includeJs("js/nodes/updatenode.js");
|
||||
|
@ -28,9 +28,9 @@ B<mkvm> I<noderange> [B<-s>|B<--size> I<disksize>] [B<--mem> I<memsize>] [B<--cp
|
||||
|
||||
=head2 For zVM:
|
||||
|
||||
B<mkvm> I<noderange> I<directory_entry_file_path>
|
||||
B<mkvm> I<noderange> [I<directory_entry_file_path>]
|
||||
|
||||
B<mkvm> I<noderange> I<source_virtual_machine> B<pool=> I<disk_pool>
|
||||
B<mkvm> I<noderange> [I<source_virtual_machine>] [B<pool=> I<disk_pool>]
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user