aboutsummaryrefslogtreecommitdiffstats
path: root/.circleci/scripts/release-create-release-pr
blob: 8a2238ec4467f4f4d721e6e401687ec9c3721586 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/usr/bin/env bash

set -e
set -u
set -o pipefail

if [[ "${CI:-}" != 'true' ]]
then
    printf '%s\n' 'CI environment variable must be set to true'
    exit 1
fi

if [[ "${CIRCLECI:-}" != 'true' ]]
then
    printf '%s\n' 'CIRCLECI environment variable must be set to true'
    exit 1
fi

if [[ -z "${GITHUB_TOKEN:-}" ]]
then
    printf '%s\n' 'GITHUB_TOKEN environment variable must be set'
    exit 1
fi

function install_github_cli ()
{
    printf '%s\n' 'Installing hub CLI'
    pushd "$(mktemp -d)"
        curl -sSL 'https://github.com/github/hub/releases/download/v2.11.2/hub-linux-amd64-2.11.2.tgz' | tar xz
        PATH="$PATH:$PWD/hub-linux-amd64-2.11.2/bin"
    popd
}

version="${CIRCLE_BRANCH/Version-v/}"
base_branch='develop'

if [[ -n "${CI_PULL_REQUEST:-}" ]]
then
    printf '%s\n' 'CI_PULL_REQUEST is set, pull request already exists for this build'
    exit 0
fi

install_github_cli

printf '%s\n' "Creating a Pull Request for $version on GitHub"

if ! hub pull-request \
    --reviewer '@MetaMask/extension-release-team' \
    --message "${CIRCLE_BRANCH/-/ } RC" --message ':package: :rocket:' \
    --base "$CIRCLE_PROJECT_USERNAME:$base_branch" \
    --head "$CIRCLE_PROJECT_USERNAME:$CIRCLE_BRANCH";
then
    printf '%s\n' 'Pull Request already exists'
fi