81666892961b5efc9908c143299e70facb261ca0
chmalee
  Fri Sep 11 14:00:56 2020 -0700
buildRelatedTracks should not fail when a database does not exist in the relatedTracks file, email from Hiram

diff --git src/hg/makeDb/trackDb/buildRelatedTracks src/hg/makeDb/trackDb/buildRelatedTracks
index 5dbbf68..783f9d8 100755
--- src/hg/makeDb/trackDb/buildRelatedTracks
+++ src/hg/makeDb/trackDb/buildRelatedTracks
@@ -1,25 +1,31 @@
 #!/bin/bash
 # Build the relatedTracks table for each assembly
 set -beEu -o pipefail
 
 function usage() {
     printf "Usage: %s relatedTrack_name db1 db2 ...\n" "`basename $0`"
     printf "Build the relatedTrack tables for each assembly listed in relatedTracks.ra\n"
     printf "The first argument must be the name of the table to build, followed by all\nthe"
     printf "assemblies to update (similar to trackDb update process)\n"
 }
 
 if [ $# -lt 2 ] ; then
     echo "wrong # args" >&2
     usage >&2
     exit 1
 fi
 
 tbl="$1"; shift;
 
 for db in $*; do
+    set +e
+    grep -q "^$db" relatedTracks.ra &> /dev/null
+    if [ $? -eq 0 ]
+    then
+        set -e
         grep "^$db" relatedTracks.ra | cut -d' ' -f2- \
             | sed -e 's/ /\t/' -e 's/ /\t/' | sort -k1 -k2 \
             | hgLoadSqlTab "$db" "$tbl" ~/kent/src/hg/lib/relatedTrack.sql stdin
         printf "done building relatedTrack table for %s\n" "$db"
+    fi
 done