CircleC У меня есть переменная env CIRCLE_BRANCH
, которая сообщает вам имя ветви самого PR.
Но я хочу наоборот, мне нужно название ветки, с которой PR пытается объединиться.
CircleC У меня есть переменная env CIRCLE_BRANCH
, которая сообщает вам имя ветви самого PR.
Но я хочу наоборот, мне нужно название ветки, с которой PR пытается объединиться.
Нет встроенной переменной среды (см. Полный список здесь), чтобы получить имя базовой ветви запроса на вытягивание. Однако вы можете получить номер запроса на вытягивание с помощью переменной среды CIRCLE_PR_NUMBER
и использовать GitHub REST API для получения имени базовой ветки.
Вам понадобится:
repo
области видимостиGITHUB_ACCESS_TOKEN
Вот пример сценария bash, который извлекает данные заданного запроса на вытягивание в формате JSON и анализирует их с помощью Python 2:
#!/bin/bash
REPO_OWNER="replace_me"
GITHUB_API_URL="https://api.github.com/repos/$REPO_OWNER/$CIRCLE_PROJECT_REPONAME/pulls/$CIRCLE_PR_NUMBER?access_token=$GITHUB_ACCESS_TOKEN"
export PYTHONIOENCODING=utf8
export PULL_REQUEST_BASE_REF=$(curl -s "$GITHUB_API_URL" | python -c "import sys, json; print json.load(sys.stdin)['base']['ref']")