+// Requesting a mirror list. Yum bombs out completely if a repository
+// is (even temporarily) unavailable, so if CoBlitz is down, provide a
+// few more options. Make sure that gpgcheck remains enabled. Last
+// chance option is ourselves so that yum never fails.
+if (isset($_REQUEST['mirrorlist']) &&
+ isset($_REQUEST['repo']) &&
+ isset($_REQUEST['releasever'])) {
+ $mirrors = array("http://coblitz.planet-lab.org/pub/fedora/linux",
+ "http://fedora.gtlib.cc.gatech.edu/pub/fedora.redhat/linux",
+ "http://download.fedoraproject.org/pub/fedora/linux",
+ "ftp://rpmfind.net/linux/fedora",
+ "http://mirrors.kernel.org/fedora");
+ $releasever = $_REQUEST['releasever'];
+ switch ($_REQUEST['repo']) {
+ case "base":
+ foreach ($mirrors as $mirror) {
+ echo "$mirror/core/$releasever/\$ARCH/os/\n";
+ }
+ break;
+ case "updates":
+ foreach ($mirrors as $mirror) {
+ echo "$mirror/core/updates/$releasever/\$ARCH/\n";
+ }
+ break;
+ case "extras":
+ foreach ($mirrors as $mirror) {
+ echo "$mirror/extras/$releasever/\$ARCH/\n";
+ }
+ break;
+ }
+
+ // Always list ourselves last
+ echo "http://$PLC_BOOT_HOST/install-rpms/planetlab/\n";
+ exit;
+}
+
+// Requesting yum.conf. See above for the mirrorlist definition.