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