#!/bin/sh set -e HG_GIT_REVISION="$HEPTAPOD_CI_HG_GIT_REVISION" # may not be defined set -u # putting aside any hg-git checkout in a vendor/ subdirectory in # order to be really, really sure not to create side effects # on builds that really don't want an intermediate hg-git version to be in # their way. HG_GIT_LOCAL_REPO=vendor/hg-git HG_GIT_REMOTE_REPO=https://foss.heptapod.net/mercurial/hg-git if test -n "$HG_GIT_REVISION"; then if test -d "$HG_GIT_LOCAL_REPO"; then echo "Updating the hg-git clone found at $HG_GIT_LOCAL_REPO" hg -R $HG_GIT_LOCAL_REPO pull -r $HG_GIT_REVISION $HG_GIT_REMOTE_REPO hg -R $HG_GIT_LOCAL_REPO update -r $HG_GIT_REVISION else echo "Cloning hg-git to $HG_GIT_LOCAL_REPO" hg clone -r $HG_GIT_REVISION $HG_GIT_REMOTE_REPO $HG_GIT_LOCAL_REPO fi echo "pip-installing $HG_GIT_LOCAL_REPO" pip3 install --user -e $HG_GIT_LOCAL_REPO fi echo "pip-installing all missing requirements" grep -v Mercurial install-requirements.txt > ci-install.reqs # everything should already be in place for most builds but we can still # have some version changes between rebuilds of the base images pip3 install --user -r ci-install.reqs --upgrade # Note: installing the whole of test-requirements.txt # seems to create problems with # what's already preinstalled in the CI Docker images