Skip to content

Commit f0da66f

Browse files
committed
Fixup script to auto-build planemo bioconda recipe.
1 parent c0c66c7 commit f0da66f

File tree

1 file changed

+49
-16
lines changed

1 file changed

+49
-16
lines changed

scripts/update_bioconda.bash

Lines changed: 49 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,57 @@
22

33
set -e
44

5-
BIOCONDA_PROJECT="jmchilton/bioconda-recipes"
6-
RECIPE="recipes/planemo"
7-
VERSION=`python -c "import xmlrpclib; print xmlrpclib.ServerProxy('https://pypi.python.org/pypi').package_releases('planemo')[0]"`
8-
URL=`python -c "import xmlrpclib; import re; print re.escape([s for s in xmlrpclib.ServerProxy('https://pypi.python.org/pypi').release_urls('planemo', '$VERSION') if s['filename'].endswith('.tar.gz')][0]['url'])"`
9-
MD5SUM=`md5sum dist/planemo-$VERSION.tar.gz | cut -d' ' -f1`
5+
PACKAGE="planemo"
6+
CONDA_RECIPES="bioconda-recipes"
7+
UPSTREAM="bioconda"
108

11-
if [ ! -d bioconda ];
9+
HUB_EXEC=${HUB_EXEC:-`which hub | echo ''`}
10+
if [ -z "$HUB_EXEC" ];
1211
then
13-
git clone git@github.com:$BIOCONDA_PROJECT.git bioconda-recipes
12+
HUB_EXEC="./hub/hub"
1413
fi
15-
cd bioconda-recipes
14+
HUB_EXEC=`python2 -c "import os; print os.path.abspath('$HUB_EXEC')"`
15+
echo "Using hub executable $HUB_EXEC"
1616

17-
sed -E -i "s/^ version: .*$/ version: \"$VERION\"" $RECIPE/meta.yaml
18-
sed -E -i "s/^ url: .*$/ url: $URL/" $RECIPE/meta.yaml
19-
sed -E -i "s/^ md5: .*$/ md5: $MD5SUM/" $RECIPE/meta.yaml
17+
CONDA_EXEC=${CONDA_EXEC:-`which conda | echo ''`}
18+
if [ -z "$CONDA_EXEC" ];
19+
then
20+
CONDA_EXEC=~/miniconda2/bin/conda
21+
fi
22+
CONDA_EXEC=`python2 -c "import os; print os.path.abspath('$CONDA_EXEC')"`
23+
24+
RECIPE="recipes/$PACKAGE"
25+
VERSION=`python2 -c "import xmlrpclib; print xmlrpclib.ServerProxy('https://pypi.python.org/pypi').package_releases('$PACKAGE')[0]"`
26+
URL=`python2 -c "import xmlrpclib; import re; print re.escape([s for s in xmlrpclib.ServerProxy('https://pypi.python.org/pypi').release_urls('$PACKAGE', '$VERSION') if s['filename'].endswith('.tar.gz')][0]['url'])"`
27+
MD5SUM=`md5sum dist/$PACKAGE-$VERSION.tar.gz | cut -d' ' -f1`
28+
GITHUB_USER=`python2 -c "import json; import os.path; print json.loads(open(os.path.expanduser('~/.github.json'), 'r').read())['login']"`
29+
BRANCH="$PACKAGE-$VERSION"
30+
31+
if [ ! -d $CONDA_RECIPES ];
32+
then
33+
$HUB_EXEC clone $UPSTREAM/$CONDA_RECIPES
34+
fi
35+
cd $CONDA_RECIPES
36+
$HUB_EXEC fork | true
37+
38+
git checkout master
39+
git merge --ff-only origin/master
40+
41+
METADATA="$RECIPE/meta.yaml"
42+
OLD_VERSION=`python2 -c "import yaml; print yaml.load(open('$METADATA', 'r').read())['package']['version']"`
43+
44+
OLD_RECIPE="$RECIPE/$OLD_VERSION"
45+
mkdir "$OLD_RECIPE"
46+
find "$RECIPE" -maxdepth 1 -type f | xargs -I {} cp {} "$OLD_RECIPE"
47+
48+
git checkout -b "$BRANCH"
49+
50+
sed -E -i "s/^ version: .*$/ version: \"$VERSION\"/" $METADATA
51+
sed -E -i "s/^ url: .*$/ url: $URL/" $METADATA
52+
sed -E -i "s/^ md5: .*$/ md5: $MD5SUM/" $METADATA
2053

21-
conda build $RECIPE --channel bioconda --channel r
22-
git add
23-
git add $RECIPE/meta.yaml
24-
git commit -m "Rev planemo to version $VERSION"
25-
git push origin master
54+
"$CONDA_EXEC" build "$RECIPE" --channel bioconda --channel r
55+
git add "$RECIPE/meta.yaml"
56+
git add "$OLD_RECIPE"
57+
git commit -m "Update $PACKAGE to version $VERSION"
58+
git push "$GITHUB_USER" "$BRANCH"

0 commit comments

Comments
 (0)