[25795] in Source-Commits

home help back first fref pref prev next nref lref last post

/svn/athena r25235 - trunk/debathena/scripts/installer

daemon@ATHENA.MIT.EDU (andrew m. boardman)
Thu Jul 14 16:21:54 2011

Date: Thu, 14 Jul 2011 16:21:48 -0400
From: "andrew m. boardman" <amb@MIT.EDU>
Message-Id: <201107142021.p6EKLmVh003069@drugstore.mit.edu>
To: source-commits@mit.edu
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Author: amb
Date: 2011-07-14 16:21:48 -0400 (Thu, 14 Jul 2011)
New Revision: 25235

Modified:
   trunk/debathena/scripts/installer/install-debathena.beta.sh
Log:
Choose exactly the known repos listed in hesiod for apt sources.  In
particular "development" no longer will imply "proposed".


Modified: trunk/debathena/scripts/installer/install-debathena.beta.sh
===================================================================
--- trunk/debathena/scripts/installer/install-debathena.beta.sh	2011-07-14 19:32:17 UTC (rev 25234)
+++ trunk/debathena/scripts/installer/install-debathena.beta.sh	2011-07-14 20:21:48 UTC (rev 25235)
@@ -245,11 +245,6 @@
 clustersourceslist=/etc/apt/sources.list.d/debathena.clusterinfo.list
 if [ -z "$hostname" ] ; then hostname=`hostname` ; fi
 
-# Note that hesiod may contain multiple apt_release lines.  We want, in order
-# of priority, just one of "bleeding" (maybe), "development", or "proposed".
-hescluster=$(dig +short +bufsize=2048 ${hostname}.cluster.ns.athena.mit.edu TXT \
-    |sed -e 's/"$//' -ne 's/^"apt_release //p'|sort|head -1) || hescluster=""
-
 if [ ! -e "$sourceslist" ] || ! grep -q debathena "$sourceslist"; then
   if [ -e "$sourceslist" ]; then
     echo "" >> $sourceslist
@@ -258,23 +253,30 @@
   echo "deb-src http://debathena.mit.edu/apt $distro debathena debathena-config debathena-system$openafs_component" >> $sourceslist
 fi
 
-if [ development = "$hescluster" -o proposed = "$hescluster" ] ; then
-  echo "Adding $distro-proposed apt repository."
-  echo "# This file is automatically updated by debathena-auto-update" >> $clustersourceslist
-  echo "# based on your Hesiod cluster information. If you want to" >> $clustersourceslist
-  echo "# make changes, do so in another file." >> $clustersourceslist
-  echo "" >> $clustersourceslist
+# Note that hesiod may contain multiple apt_release tokens.  We want to
+# include known repositories but make no assumptions about wanting
+# others.  (For instances, "development" does @i{not} automatically
+# infer "proposed".)
+hescluster=$(dig +short +bufsize=2048 ${hostname}.cluster.ns.athena.mit.edu TXT \
+    |sed -e 's/"$//' -ne 's/^"apt_release //p') || hescluster=""
 
-  echo "deb http://debathena.mit.edu/apt $distro-proposed debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
-  echo "deb-src http://debathena.mit.edu/apt $distro-proposed debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
-fi
+aptexplained=false
+for hc in proposed development bleeding; do
+  if echo " $hesclusters " | grep -q " $hc "; then
+    echo "Adding $distro-$hc apt repository."
+    if [ "${aptexplained}" = false ] ; then
+      echo "" >> $clustersourceslist
+      echo "# This file is automatically updated by debathena-auto-update" >> $clustersourceslist
+      echo "# based on your Hesiod cluster information. If you want to" >> $clustersourceslist
+      echo "# make changes, do so in another file." >> $clustersourceslist
+      aptexplained=true
+    fi
+    echo "" >> $clustersourceslist
+    echo "deb http://debathena.mit.edu/apt $distro-${hc} debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
+    echo "deb-src http://debathena.mit.edu/apt $distro-${hc} debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
+  fi
+done
 
-if [ development = "$hescluster" ] ; then
-  echo "Adding $distro-development apt repository."
-  echo "deb http://debathena.mit.edu/apt $distro-development debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
-  echo "deb-src http://debathena.mit.edu/apt $distro-development debathena debathena-config debathena-system$openafs_component" >> $clustersourceslist
-fi
-
 if [ "$ubuntu" = "yes" ]; then
   output "Making sure the universe repository is enabled"
   sed -i 's,^# \(deb\(\-src\)* http://archive.ubuntu.com/ubuntu [[:alnum:]]* universe\)$,\1,' /etc/apt/sources.list


home help back first fref pref prev next nref lref last post