rename nodes to slivers
[raven.git] / apps / gacksadmin / wizard.php
1 <?php
2
3 // this must occur before linetabs.php, or linetabs won't work. I have no idea why.
4 drupal_add_js("misc/popup.js");
5
6 // Require login
7 require_once 'plc_login.php';
8
9 // Get session and API handles
10 require_once 'plc_session.php';
11 global $plc, $api, $adm;
12
13 // Common functions
14 require_once 'plc_functions.php';
15 require_once 'plc_peers.php';
16 require_once 'gacks_functions.php';
17 require_once 'gacksclient.php';
18 require_once 'linetabs.php';
19 require_once 'table.php';
20 require_once 'details.php';
21 require_once 'toggle.php';
22 require_once 'form.php';
23 require_once 'nifty.php';
24
25 // find person roles
26 $_person= $plc->person;
27 $_person_id = $plc->person['person_id'];
28 $_roles= $_person['role_ids'];
29
30 // Print header
31 require_once 'plc_drupal.php';
32 drupal_set_title('Manage Slivers: Add Slivers');
33 include 'plc_header.php';
34
35 $tabs = manage_slivers_tabs();
36 $_GET['active_line_tab'] = "Add Slivers";
37 plekit_linetabs($tabs);
38
39 $nifty=new PlekitNifty ('nodewizard','objects-list','big');
40 $nifty->start();
41 print '<div style="width: 640px; margin-left: auto; margin-right: auto;">';
42
43 //print "<br>";
44 $account_name = get_account_name($api, $_person_id);
45
46 if ($account_name != NULL) {
47     $gacksapi = new GACKSAPI();
48
49     // get the subgroup names to populate the combobox
50     $resources = $gacksapi->get_resources(NULL, "json");
51     $resources = json_decode($resources[2], true);
52     $subgroup_selectors = array();
53     foreach ($resources["resources"]["plc.vicci.cores"]["subgroups"] as $subgroup) {
54         $subgroup_selectors[]= array("display"=>$subgroup[0], "value"=>$subgroup[0]);
55     }
56
57     $form = new PlekitForm(l_gacks_actions(), array("action"=>"node-wizard",
58                                                     "account_name"=> $account_name,
59                                                     "resource_name"=>"plc.vicci.cores"));
60
61     $image_selectors = array();
62     $image_selectors []= array("display"=>"No Change", "value"=>"");
63     $image_selectors []= array("display"=>"Default PlanetLab image", "value"=>"default");
64     $image_selectors []= array("display"=>"Hadoop", "value"=>"hadoop");
65     $image_selectors []= array("display"=>"MPI", "value"=>"mpi");
66
67     $image = get_slice_image($api, $account_name);
68     $headNode = get_slice_headnode($api, $account_name);
69
70     $form->start();
71     print <<< EOF
72 <br><br>
73 The node selection wizard may be used to automatically add a set of nodes (VMs)
74 to your slice.
75 <br><br>
76 EOF;
77
78     if ($image != NULL) {
79         print "This slice is currently using the image '" . $image . "'. ";
80     }
81     if ($headNode != NULL) {
82         print "The head node when using the MPI or Hadoop images is '" . $headNode . "'. ";
83     }
84     if (($image != NULL) or ($headNode !=NULL)) {
85         print "<br><br>";
86     }
87
88     print "Select which cluster you would like to allocate slivers from: <br>";
89     print $form->select_html("resource_group", $subgroup_selectors);
90     print "<br><br>Enter the number of slivers you would like to allocate: <br>";
91     print $form->input_html("int", "amount", "0");
92     print "<br><br>Choose what to do with your existing slivers: <br>";
93     print " " . $form->radio_html("expand", "0") . " replace current slivers<br>";
94     print " " . $form->radio_html("expand", "1", array("checked" => TRUE)) . " keep current slivers and add these slivers<br>";
95     print "<br><br>";
96     print $form->submit_html("submit", "submit");
97     print "<br><br>";
98     print <<< EOF
99 A 'sliver' is an instance of a virtual machine on a Vicci node.
100 The term 'sliver' is synonymous with 'VM' in OpenStack, or 'instance' in EC2.
101 Currently, each sliver is instantiated on a distinct node, and therefore,
102 the total number of VMs is bounded by either the number of nodes
103 as a given site (currently 70) or overall (currently 350).
104 EOF;
105     $form->end();
106 }
107
108 print "</div>";
109 $nifty->end();
110
111 include 'plc_footer.php';
112
113 ?>
114
115