#!/usr/bin/env bash
## push Push changes to  Spacemacs bot account.
##
## Copyright (c) 2014-2021 Sylvain Benner & Contributors
##
## Author: Eugene Yaremenko
## URL: https://github.com/syl20bnr/spacemacs
##
## This file is not part of GNU Emacs.
##
## License: GPLv3

exit_if_no_patchfile

cd "/tmp/${PUBLISH}"

echo_headline "Creating fork under bot account"
export GITHUB_TOKEN=$UPD_BOT_GIT_TK
git checkout -b "${PUBLISH}"
hub fork
if [ $? -ne 0 ]; then
    echo "hub fork failed"
    exit 2
fi
fork_url="https://${UPD_BOT_LOGIN}:${UPD_BOT_GIT_TK}"
fork_url+="@github.com/${UPD_BOT_LOGIN}/${UPD_BOT_REPO}.git"
git remote set-url "${UPD_BOT_LOGIN}" "${fork_url}"
echo_headline "Pushing changes"
# hub push -f "${UPD_BOT_LOGIN}" "${PUBLISH}" > /dev/null 2>&1
#                         prevents token leak ^^^^^^^^^^^^^^
# NOTE: CircleCI masks environment variables from web GUI thingy
#       so in this case bot token shouldn't leak. But be careful.
#       I had to unmask the command output because it's too hard to debug
#       without logs - a lot of different things may fail.
hub push -f "${UPD_BOT_LOGIN}" "${PUBLISH}"
if [ $? -ne 0 ]; then
    echo "hub push failed"
    exit 2
fi
