You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.5 KiB

# Fetches the js-sdk and matrix-react-sdk dependencies for development
# or testing purposes
# If there exists a branch of that dependency with the same name as
# the branch the current checkout is on, use that branch. Otherwise,
# use develop.
set -e
# Look in the many different CI env vars for which branch we're
# building
if [[ "$TRAVIS" == true ]]; then
# ghprbSourceBranch for jenkins github pull request builder
# GIT_BRANCH for other jenkins builds
# Otherwise look at the actual branch we're on
if [ -z "$curbranch" ]
curbranch=`git rev-parse --abbrev-ref HEAD`
# Chop 'origin' off the start as jenkins ends up using
# branches on the origin, but this doesn't work if we
# specify the branch when cloning.
curbranch=`echo "$curbranch" | sed -e 's/^origin\///'`
echo "Determined branch to be $curbranch"
# clone a specific branch of a github repo
function clone() {
git clone$org/$repo.git $repo --branch $branch \
function dodep() {
rm -rf $repo
clone $org $repo $curbranch || {
[ "$curbranch" != 'develop' ] && clone $org $repo develop
} || return $?
cd $repo
echo "$repo set to branch "`git rev-parse --abbrev-ref HEAD`
mkdir -p node_modules
rm -r "node_modules/$repo" 2>/dev/null || true
ln -sv "../$repo" node_modules/
echo -en 'travis_fold:start:matrix-js-sdk\r'
echo 'Setting up matrix-js-sdk'
dodep matrix-org matrix-js-sdk
cd node_modules/matrix-js-sdk
npm install
echo -en 'travis_fold:end:matrix-js-sdk\r'
echo -en 'travis_fold:start:matrix-react-sdk\r'
echo 'Setting up matrix-react-sdk'
dodep matrix-org matrix-react-sdk
mkdir -p node_modules/matrix-react-sdk/node_modules
ln -s ../../matrix-js-sdk node_modules/matrix-react-sdk/node_modules/
cd node_modules/matrix-react-sdk
npm install
echo -en 'travis_fold:end:matrix-react-sdk\r'
# Link the reskindex binary in place: if we used npm link,
# npm would do this for us, but we don't because we'd have
# to define the npm prefix somewhere so it could put the
# intermediate symlinks there. Instead, we do it ourselves.
mkdir -p node_modules/.bin
ln -sfv ../matrix-react-sdk/scripts/reskindex.js node_modules/.bin/reskindex