build_defs/gen/gen.build_defs
def _go_to_top_level():
return "cd " + _top_level_dir() + " || exit 1"
def _top_level_dir():
return "$(pwd | awk -F'plz-out' '{print $1}')"
def _check_port_running(port:int, server_cmd:str=None):
return " ".join([
"if [ ! \\\$(lsof -i:" + str(port) + " | grep -v \"CLOSE_WAIT\") ];",
"then echo \"Please make sure server is started at " + str(port) + "\" && exit 1;" if server_cmd is None else "then " + server_cmd + ";",
"fi",
])
def _assert_boolean(string:str, default:bool = None):
switcher = {
"True": True,
"False": False,
"true": True,
"false": False,
"Yes": True,
"No": False,
"yes": True,
"no": False,
}
result = switcher.get(string, "ERR")
if result == "ERR":
if default is None:
fail()
else:
return default
else:
return result
def _home_path():
return " ".join([
"if [[ \"$OSTYPE\" == \"darwin\"* ]];",
"then HOME=\"/Users/$USER\";",
"elif [[ \"$OSTYPE\" == \"linux-gnu\"* ]];",
"then HOME=\"/home/$USER\";",
"fi",
])
def _for_loop(looped: str, cmd: str):
return "; ".join([
"for ITEM in " + looped,
"do " + cmd,
"done",
])