Allow calling direnv-cache from subdirectories of $DIRENV_DIR

master
0xee 2020-02-03 11:33:25 +01:00
parent 0c8db23a3b
commit 6fb279eca0
1 changed files with 15 additions and 1 deletions

View File

@ -70,9 +70,23 @@ getCacheFilePath() {
echo "${cacheDir}/$(pwd | sha1sum | tr -d ' -')" echo "${cacheDir}/$(pwd | sha1sum | tr -d ' -')"
} }
switchToDirenvDir() {
# Find directory that contains the current .envrc. Allows direnv-cache to
# be called from subdirectories.
wd="$(pwd)"
if [[ -n $DIRENV_DIR ]]; then
wd="${DIRENV_DIR#-}"
fi
cd "$wd"
}
cmd="$1" cmd="$1"
if ! [[ -e .envrc ]]; then switchToDirenvDir
if ! [[ -e ".envrc" ]]; then
echo "Error, no .envrc found in current directory" echo "Error, no .envrc found in current directory"
exit 1 exit 1
fi fi