next: cleanup logic around return by returning early
In the cmdnext function, there are some conditionals which returns early and
some which sets a result value to be returned later. Let's return from all the
conditionals early.
There are if, elif and else involved, so it's sure we will end up in one of the
conditional, each conditional will return, so it's guranteed that we are
returning the correct value and returning everytime.
#!/bin/bash
set -euo pipefail
# Prepare pandoc filters
if [ -d pandocfilters/.git ]; then
(cd pandocfilters && git remote update && git merge --ff-only)
else
git clone https://github.com/Lothiraldan/pandocfilters.git
fi
pip2 install pandocfilters
pip2 install pygraphviz
pip2 install panflute
pip2 install hg+https://bitbucket.org/octobus/mercurial_docgraph
pip2 install hg-evolve
mkdir -p graphs output
CMD_NOT_FOUND=0
check_command() {
cmd=$1
if ! which "$cmd" >/dev/null 2>&1; then
echo "Error: command '$cmd' not found in \$PATH"
echo "Please install '$cmd'"
CMD_NOT_FOUND=1
else
echo "$cmd command was found"
fi
}
check_command pandoc
check_command aha
if [ "$CMD_NOT_FOUND" -ne "0" ]; then
exit 1
fi
# Prepare directory for repositories generated by the training.t file
mkdir -p base-repos
rm -Rf base-repos/*