scaffolding multi-fcdistro yum config
[nodeimage.git] / nodeconfig / yum / stock.repo.php
1 <?php
2 //
3 // part of yum config on nodes
4 //
5 // Thierry Parmentelat 
6 // Copyright (C) 2008 INRIA
7 //
8 // $Id$
9 // $URL$
10 //
11
12 // For PLC_NAME and PLC_BOOT_HOST
13 include('plc_config.php');
14
15 $PLC_NAME = PLC_NAME;
16 $PLC_BOOT_HOST = PLC_BOOT_HOST;
17
18 // Get admin API handle
19 require_once 'plc_api.php';
20 global $adm;
21
22 if (isset($_REQUEST['gpgcheck'])) {
23   $gpgcheck = $_REQUEST['gpgcheck'];
24 } else {
25   $gpgcheck = 0;
26 }
27
28 echo "# Generated by stock.repo.php\n";
29 echo '# $Id$' . "\n";
30 echo '# $URL$' . "\n";
31 # we assume the node is not so old that it would not send node_id
32 # get node family
33 if ( ! isset($_REQUEST['node_id'])) {
34   echo "# node_id is needed\n";
35   echo "# looks like you're running a very old NodeManager...\n";
36   echo "# bailing out..\n";
37   exit;
38  }
39
40 $node_id = intval($_REQUEST['node_id']);
41 $nodeflavour=$adm->GetNodeFlavour($node_id);
42 $nodefcdistro=$nodeflavour['fcdistro'];
43
44 # try to open /var/www/html/yum/<fcdistro>/yum.myplc.d/stock.repo
45 # otherwise use the static version in 
46 # /var/www/html/yum.legacy/stock.repo
47 $fc_name="/var/www/html/yum/" . $fcdistro . "/yum.myplc.d/stock.repo";
48 $fb_name="/var/www/html/yum.legacy/stock.repo";
49
50 $fc_contents=file_get_contents($fc_name);
51 if ($fc_contents) {
52   echo "# retrieved " . $fc_name . "\n";
53   print $fc_contents;
54   exit;
55  }
56 $fb_contents=file_get_contents($fb_name);
57 if ($fb_contents) {
58   echo "# retrieved fallback (fcdistro " . $fcdistro " unknown) " . $fb_name . "\n";
59   print $fb_contents;
60   exit;
61  }
62 echo "# Could not find any of the following\n";
63 echo "# " . $fc_name . "\n";
64 echo "# " . $fb_name . "\n";
65 echo "# bailing out";
66
67
68
69