Fetch a connected sass-spec pull request.

This commit is contained in:
Natalie Weizenbaum 2016-11-10 17:42:39 -08:00 committed by Natalie Weizenbaum
parent 0ec8ac9676
commit 13dbd33c10
2 changed files with 35 additions and 1 deletions

View File

@ -17,7 +17,10 @@ install:
- unzip dart.zip
- export PATH="$PATH:`pwd`/dart-sdk/bin"
- pub get
- git clone git://github.com/sass/sass-spec --branch dart-sass --depth 1
- SASS_SPEC_REF=`tool/sass-spec-ref.sh`
- git init sass-spec
- git -C sass-spec fetch git://github.com/sass/sass-spec "$SASS_SPEC_REF" --depth 1
- git -C sass-spec checkout FETCH_HEAD
- (cd sass-spec; bundle install --jobs=3 --retry=3)
script:

31
tool/sass-spec-ref.sh Executable file
View File

@ -0,0 +1,31 @@
#!/bin/bash -e
# Copyright 2016 Google Inc. Use of this source code is governed by an MIT-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/MIT.
# Echoes the sass-spec Git ref that should be checked out for the current Travis
# run. If we're running specs for a pull request which refers to a sass-spec
# pull request, we'll run against the latter rather than sass-spec master.
default=dart-sass
if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
>&2 echo "Ref: $default."
echo "$default"
exit 0
fi
>&2 echo "Fetching pull request $TRAVIS_PULL_REQUEST..."
JSON=$(curl -L -sS https://api.github.com/repos/sass/dart-sass/pulls/$TRAVIS_PULL_REQUEST)
RE_SPEC_PR="sass\/sass-spec(#|\/pull\/)([0-9]+)"
if [[ $JSON =~ $RE_SPEC_PR ]]; then
ref="pull/${BASH_REMATCH[2]}/head"
>&2 echo "Ref: $ref."
echo "$ref"
else
>&2 echo "Ref: $default."
echo "$default"
fi