# Source this file to have hscloud tools available in your PATH after running
# `bazel run //tools:install`.

if [ "$0" == "$BASH_SOURCE" ]; then
    echo "You should be sourcing this."
    exit 1
fi

hscloud_root="$( cd "$(dirname "$BASH_SOURCE")"; pwd -P )"
if [ ! -f "$hscloud_root/WORKSPACE" ]; then
    echo "Could not find WORKSPACE"
    exit 1
fi
hscloud_path="$hscloud_root/bazel-bin/tools:$hscloud_root/bazel-bin/cluster/tools"
[[ ":$PATH:" != *":$hscloud_path:"* ]] && PATH="$hscloud_path:${PATH}"
unset -f hscloud_root
unset -f hscloud_path

if command -v clang &> /dev/null; then
    # if we have clang, use it
    # avoids weird PATH issues with linkers, eg https://github.com/bazelbuild/bazel/issues/18834
    export CC=clang
fi

# Leftover junk. This should be removed, as env.sh is now optional.
# Do _not_ add more aliases!
alias bajzel=bazel
gpg-unlock() {
    echo "test" | gpg2 --sign --batch --no-tty -o /dev/null
}
