Make Circle CI test against merge with PR base

This commit is contained in:
David Sanders 2018-04-19 16:31:48 -06:00
parent 84ecb7effc
commit 30473b3ff5
No known key found for this signature in database
GPG Key ID: 87A8D53EF6038397

View File

@ -6,6 +6,22 @@ common: &common
working_directory: ~/repo
steps:
- checkout
- run:
name: merge pull request base
command: |
if [[ -n "${CIRCLE_PR_NUMBER}" ]]; then
PR_INFO_URL=https://api.github.com/repos/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME/pulls/$CIRCLE_PR_NUMBER
PR_BASE_BRANCH=$(curl -L "$PR_INFO_URL" | python -c 'import json, sys; obj = json.load(sys.stdin); sys.stdout.write(obj["base"]["ref"])')
git fetch origin +"$PR_BASE_BRANCH":circleci/pr-base
# We need these config values or git complains when creating the
# merge commit
git config --global user.name "Circle CI"
git config --global user.email "circleci@example.com"
git merge --no-edit circleci/pr-base
fi
- restore_cache:
keys:
- cache-{{ .Environment.CIRCLE_JOB }}-{{ checksum "setup.py" }}-{{ checksum "tox.ini" }}