#! /bin/bash # # Submits a "buildbot try" message to the Dolphin buildbot with all the # required options. opt_file=$HOME/.buildbot/options if ! [ -f "$opt_file" ]; then echo >&2 "error: no .buildbot/options configuration file found" echo >&2 "Read the docs: https://wiki.dolphin-emu.org/index.php?title=Buildbot" exit 1 fi if ! which buildbot >/dev/null 2>&1; then echo >&2 "error: buildbot is not installed" echo >&2 "Install it from your package manager, or use 'pip install buildbot'" exit 1 fi if ! git branch | grep -q '^* '; then echo "Unable to determine the current Git branch. Input the Git branch name:" read branchname else branchname=$(git branch | grep '^* ' | cut -d ' ' -f 2-) fi shortrev=$(git describe --always --long --dirty=+ | sed 's/-g[0-9a-f]*\(+*\)$/\1/') author=$(grep try_username "$opt_file" | cut -d "'" -f 2) remote=$(git remote -v | grep dolphin-emu/dolphin.git | head -n1 | cut -f1) remote=${remote:-origin} baserev=$(git merge-base HEAD $remote/master) echo "Branch name: $branchname" echo "Change author: $author" echo "Short rev: $shortrev" echo "Remote: $remote" echo "Base rev: $baserev" git diff --binary -r $baserev | buildbot try --properties=branchname=$branchname,author=$author,shortrev=$shortrev --diff=- -p1 --baserev $baserev $*