forked from hswaw/hscloud
Serge Bazanski
0f8e5a2132
This removes the need to source env.{sh,fish} when working with hscloud. This is done by: 1. Implementing a Go library to reliably detect the location of the active hscloud checkout. That in turn is enabled by BUILD_WORKSPACE_DIRECTORY being now a thing in Bazel. 2. Creating a tool `hscloud`, with a command `hscloud workspace` that returns the workspace path. 3. Wrapping this tool to be accessible from Python and Bash. 4. Bumping all users of hscloud_root to use either the Go library or one of the two implemented wrappers. We also drive-by replace tools/install.sh to be a proper sh_binary, and make it yell at people if it isn't being ran as `bazel run //tools:install`. Finally, we also drive-by delete cluster/tools/nixops.sh which was never used. Change-Id: I7873714319bfc38bbb930b05baa605c5aa36470a Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1169 Reviewed-by: informatic <informatic@hackerspace.pl>
24 lines
746 B
Bash
24 lines
746 B
Bash
# 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
|
|
|
|
# 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
|
|
}
|