e5f03e0b06
feat(script): add steps-lib, is_env_var_set & test feat(brew-bump): add check for VERSION feat(brew-bump): check HOMEBREW_GITHUB_API_TOKEN feat(steps-lib): add directory_exists helper fn fix(brew-bump): check that git clone worked feat(brew-bump): add check for remote upstream fix: remove upstream command thing feat(steps-lib): add file_exists helper function feat(brew-bump): add check for git-askpass.sh feat(steps-lib): add is_executable function & test feat(brew-bump): add check for is_executable refactor: use GIT_ASKPASS as variable
48 lines
874 B
Bash
Executable File
48 lines
874 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# This is a library which contains functions used inside ci/steps
|
|
#
|
|
# We separated it into it's own file so that we could easily unit test
|
|
# these functions and helpers
|
|
|
|
# Checks whether and environment variable is set.
|
|
# Source: https://stackoverflow.com/a/62210688/3015595
|
|
is_env_var_set() {
|
|
local name="${1:-}"
|
|
if test -n "${!name:-}"; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
fi
|
|
}
|
|
|
|
# Checks whether a directory exists.
|
|
directory_exists() {
|
|
local dir="${1:-}"
|
|
if [[ -d "${dir:-}" ]]; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
fi
|
|
}
|
|
|
|
# Checks whether a file exists.
|
|
file_exists() {
|
|
local file="${1:-}"
|
|
if test -f "${file:-}"; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
fi
|
|
}
|
|
|
|
# Checks whether a file is executable.
|
|
is_executable() {
|
|
local file="${1:-}"
|
|
if [ -f "${file}" ] && [ -r "${file}" ] && [ -x "${file}" ]; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
fi
|
|
}
|