|
2 | 2 |
|
3 | 3 | set -e |
4 | 4 |
|
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" |
10 | 8 |
|
11 | | -if [ ! -d bioconda ]; |
| 9 | +HUB_EXEC=${HUB_EXEC:-`which hub | echo ''`} |
| 10 | +if [ -z "$HUB_EXEC" ]; |
12 | 11 | then |
13 | | - git clone git@github.com:$BIOCONDA_PROJECT.git bioconda-recipes |
| 12 | + HUB_EXEC="./hub/hub" |
14 | 13 | 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" |
16 | 16 |
|
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 |
20 | 53 |
|
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