[med-svn] r23637 - trunk/community/edam

Steffen Möller moeller at moszumanska.debian.org
Wed Jan 18 10:39:38 UTC 2017


Author: moeller
Date: 2017-01-18 10:39:37 +0000 (Wed, 18 Jan 2017)
New Revision: 23637

Added:
   trunk/community/edam/packages.list.txt
   trunk/community/edam/packages.list.update.sh
Modified:
   trunk/community/edam/registry-tool-iterator.sh
Log:
Retrieval of packages list, improved iteration

Added: trunk/community/edam/packages.list.txt
===================================================================
--- trunk/community/edam/packages.list.txt	                        (rev 0)
+++ trunk/community/edam/packages.list.txt	2017-01-18 10:39:37 UTC (rev 23637)
@@ -0,0 +1,65 @@
+acedb
+adun.app
+aevol
+altree
+autodocksuite
+autodock-vina
+ball
+berkeley-express
+blimps
+cassiopee
+coils
+cufflinks
+dialign-t
+dindel
+discosnp
+dnaclust
+dssp
+edtsurf
+epcr
+fermi-lite
+freecontact
+ghemical
+htslib
+hyphy
+jellyfish
+kmer
+libfastahack
+libncl
+libsmithwaterman
+libssw
+libvcflib
+logol
+maffilter
+mapsembler2
+microbiomeutil
+minia
+mira
+mrbayes
+murasaki
+nanopolish
+ncbi-blast+
+ncbi-tools6
+openms
+paraclu
+pbsuite
+perm
+prime-phylo
+profnet
+progressivemauve
+python-cutadapt
+python-dendropy
+ray
+r-cran-genabel
+relion
+r-other-mott-happy
+salmon
+seqan2
+sra-sdk
+staden-io-lib
+swarm-cluster
+tophat
+tree-puzzle
+tvc
+velvet
+zalign

Added: trunk/community/edam/packages.list.update.sh
===================================================================
--- trunk/community/edam/packages.list.update.sh	                        (rev 0)
+++ trunk/community/edam/packages.list.update.sh	2017-01-18 10:39:37 UTC (rev 23637)
@@ -0,0 +1,25 @@
+#!/bin/bash
+set -e
+dest="$(dirname $0)/packages.list.txt"
+
+echo "Writing packages list to '$dest'"
+(
+wget -O - https://anonscm.debian.org/cgit/blends/projects/med.git/plain/tasks/bio | grep Depends | cut -f2 -d: | tr ", " "\n" | tr -d "|" | sort -u | while
+   read packagename
+do
+	a=$(apt-cache show $packagename | head -n 2)
+	p=""
+	q=""
+	if echo $a|grep -q "Source: "; then
+		q=$(echo $a | sed -e '/^.*Source:/s/^.*Source: *//' -e 's/ *Version:.*//' -e 's/ *(.*) *//')
+		echo $q
+	else
+		p=$(echo $a | sed -e '/Package/s/^Package: *//' -e 's/ *Version:.*//')
+		echo $q
+	fi
+	# for debugging
+	#echo "p='$p'"
+	#echo "q='$q'"
+	#echo 
+done
+) | grep -v "^E:" | sort -u | egrep -v "^ *$"> $dest


Property changes on: trunk/community/edam/packages.list.update.sh
___________________________________________________________________
Added: svn:executable
   + *

Modified: trunk/community/edam/registry-tool-iterator.sh
===================================================================
--- trunk/community/edam/registry-tool-iterator.sh	2017-01-18 10:23:22 UTC (rev 23636)
+++ trunk/community/edam/registry-tool-iterator.sh	2017-01-18 10:39:37 UTC (rev 23637)
@@ -6,8 +6,13 @@
 fi
 
 DONTUPDATE=true
+#DONTUPDATE=false
+
 DONTOVERWRITE=true
+
+# Set to true if no new repositories shall be downloaded
 DONTCLONE=true
+#DONTCLONE=false
 
 TOOLDIR=$(realpath $(dirname $0))
 
@@ -46,58 +51,83 @@
 	exit 1
 fi
 
-if ! $DONTCLONE; then
-	#for p in $EDAMPACKAGESINGIT
-	cat "$TOOLDIR/packages.list.txt" | while read p
-	do
-		cd "$GITDIR"  # We may have moved into a subdir
-		echo -n "I: Preparing package '$p'"
 
-		if $DONTOVERWRITE && [ -r "$JSONBUFFERDIR"/"$JSONBUFFERSUBDIR"/"$p".json ] ; then
-			echo " not overwriting exiting '$JSONBUFFERDIR/$JSONBUFFERSUBDIR/$p.json'"
-			continue
-		fi
+echo
+echo "I: *** Retrieving package source tree from Debian Med git repository ***"
+echo
 
-		origin="https://anonscm.debian.org/git/debian-med/$p.git"
-		#origin="ssh://anonscm.debian.org/git/debian-med/$p.git"
-		if [ -d "$GITDIR"/"$p" ]; then
-			if $DONTUPDATE; then
-				echo " is existing, will not check for any later version"
-			else
-				echo " is existing, will pull latest version from Debian Med git repository '$origin'"
-				cd "$GITDIR"/"$p"
-				if ! git pull; then
-					echo
-					echo "E: Could not pull latest revision for '$p' from $origin - skipped"
-					continue
-				fi
+#for p in $EDAMPACKAGESINGIT
+cat "$TOOLDIR/packages.list.txt" | while read p
+do
+	cd "$GITDIR"  # We may have moved into a subdir
+	echo -n "I: Preparing package '$p'"
+
+	if $DONTOVERWRITE && [ -r "$JSONBUFFERDIR"/"$JSONBUFFERSUBDIR"/"$p".json ] ; then
+		echo " not overwriting exiting '$JSONBUFFERDIR/$JSONBUFFERSUBDIR/$p.json'"
+		continue
+	fi
+
+	origin="https://anonscm.debian.org/git/debian-med/$p.git"
+	#origin="ssh://anonscm.debian.org/git/debian-med/$p.git"
+	if [ -d "$GITDIR"/"$p" ]; then
+		if $DONTUPDATE; then
+			echo " is existing, will not check for any later version"
+		else
+			echo " is existing, will pull latest version from Debian Med git repository '$origin'"
+			cd "$GITDIR"/"$p"
+			if ! git pull; then
+				echo
+				echo "W: Could not pull latest revision for '$p' from $origin - skipped, git status shown below"
+				git status
+				continue
 			fi
+			if ! git gc; then
+				echo
+				echo "E: Could not garbage-collect package '$p' - fix this"
+				exit 1
+			fi
+		fi
+	else
+		echo -n " is not existing "
+		if $DONTCLONE; then
+			echo " [skipped]"
+			continue
 		else
-			echo " is not existing, will clone from Debian Med git repository '$origin'"
+			echo -n ", will clone from Debian Med git repository '$origin'"
 			if ! git clone --quiet --branch=master --single-branch $origin; then
 				echo
 				echo "E: Could not clone package '$p' from $origin - skipped"
 				continue
 			fi
+			cd $p
+			if ! git gc; then
+				echo
+				echo "E: Could not garbage-collect freshly cloned package '$p' - fix this"
+				exit 1
+			fi
 		fi
+	fi
 
-		cd "$GITDIR"/"$p"
-		git checkout master
+	cd "$GITDIR"/"$p"
+	git checkout master
 
-		if [ ! -r debian/upstream/edam ]; then
-			echo "W: The package '$p' suprisingly does not feature an EDAM annotation file"
-			continue
-		fi
+	if [ ! -r debian/upstream/edam ]; then
+		echo "W: The package '$p' suprisingly does not feature an EDAM annotation file"
+		continue
+	fi
 
-		if ! yamllint debian/upstream/edam; then
-			echo
-			echo "E: The package '$p' has a problem with its EDAM annotation. Please fix."
-			exit 1
-		fi
-	done
-fi
+	if ! yamllint debian/upstream/edam; then
+		echo
+		echo "E: The package '$p' has a syntactic problem with its EDAM annotation. Please fix."
+		exit 1
+	fi
+done
 
+echo
+echo "I: *** Repository of Debian Med packages is in shape, now transcribing for bio.tools  ***"
+echo
 
+
 #for p in $EDAMPACKAGESINGIT
 cat "$TOOLDIR/packages.list.txt" | grep -v ^# | while read p
 do




More information about the debian-med-commit mailing list