[26933] in Source-Commits
/svn/athena r25838 - trunk/debathena/scripts/installer
daemon@ATHENA.MIT.EDU (Jonathan D Reed)
Wed Mar 6 13:03:06 2013
Date: Wed, 6 Mar 2013 13:02:58 -0500
From: Jonathan D Reed <jdreed@MIT.EDU>
Message-Id: <201303061802.r26I2wC6025578@drugstore.mit.edu>
To: source-commits@MIT.EDU
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Author: jdreed
Date: 2013-03-06 13:02:58 -0500 (Wed, 06 Mar 2013)
New Revision: 25838
Modified:
trunk/debathena/scripts/installer/install-debathena.beta.sh
Log:
Fix Hesiod clusterinfo code so that our workflow is represented
without needing multiple apt_release tags (Trac :#1036)
Modified: trunk/debathena/scripts/installer/install-debathena.beta.sh
===================================================================
--- trunk/debathena/scripts/installer/install-debathena.beta.sh 2013-03-06 01:15:38 UTC (rev 25837)
+++ trunk/debathena/scripts/installer/install-debathena.beta.sh 2013-03-06 18:02:58 UTC (rev 25838)
@@ -411,15 +411,27 @@
echo "deb-src http://debathena.mit.edu/apt $distro debathena debathena-config debathena-system$openafs_component" >> $sourceslist
fi
-# 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) || hescluster=""
+# As of 6 March 2013, Hesiod no longer contains multiple unversioned
+# apt_release tokens (Trac: #1036). development implies proposed.
+# bleeding implies development, and the transitive property applies.
+# It's possible we should have this be configurable via a URL
+# rather than hardcoded.
+apt_release=$(dig +short +bufsize=2048 ${hostname}.cluster.ns.athena.mit.edu TXT | tr -d '"' | awk '$1=="apt_release" { print $2 }')
-aptexplained=false
-for hc in proposed development bleeding; do
- if echo "$hescluster" | grep -Fxq "\"apt_release $hc\""; then
+if [ -n "$apt_release" ]; then
+ extra_repos=
+ case "$apt_release" in
+ development)
+ extra_repos="development proposed" ;;
+ proposed)
+ extra_repos="proposed" ;;
+ bleeding)
+ extra_repos="bleeding development proposed" ;;
+ *)
+ output "NOTE: Ignoring unknown apt_release value: \"$apt_release\"" ;;
+ esac
+ aptexplained=false
+ for hc in $extra_repos; do
echo "Adding $distro-$hc apt repository."
if [ "${aptexplained}" = false ] ; then
echo "" >> $clustersourceslist
@@ -431,8 +443,8 @@
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
+ done
+fi
if [ "$ubuntu" = "yes" ]; then
output "Making sure the universe repository is enabled"