Fix EASY_RESULTS_DIR

This commit is contained in:
2024-07-31 16:56:09 -04:00
parent a360ac9a71
commit bab81f5461

View File

@@ -407,7 +407,7 @@ init_project() {
# We handle this in main() and pushd to it # We handle this in main() and pushd to it
# But do it one more time in case this is run as a module # But do it one more time in case this is run as a module
ask "Initialize a project at $PROJECT_SCANS_DIR?" || return 1 ask "(Re)-Initialize a project at $PROJECT_SCANS_DIR?" || return 1
[[ -d $PROJECT_SCANS_DIR ]] || (mkdir -p "$PROJECT_SCANS_DIR" || return 1) [[ -d $PROJECT_SCANS_DIR ]] || (mkdir -p "$PROJECT_SCANS_DIR" || return 1)
@@ -596,6 +596,11 @@ easy() {
DRUG_MEDIA_FILE="$EASY_RESULTS_DIR/DrugMedia_$PROJECT.xls" DRUG_MEDIA_FILE="$EASY_RESULTS_DIR/DrugMedia_$PROJECT.xls"
MASTER_PLATE_FILE="$EASY_RESULTS_DIR/MasterPlate_$PROJECT.xls" MASTER_PLATE_FILE="$EASY_RESULTS_DIR/MasterPlate_$PROJECT.xls"
if ((DEBUG)); then
declare -p EASY
fi
# Make EASY dirs # Make EASY dirs
debug "mkdir -p $EASY_RESULTS_DIR" debug "mkdir -p $EASY_RESULTS_DIR"
mkdir -p "$EASY_RESULTS_DIR" mkdir -p "$EASY_RESULTS_DIR"
@@ -1389,38 +1394,27 @@ submodule choose_easy_results_dir #
choose_easy_results_dir() { choose_easy_results_dir() {
debug "Running: ${FUNCNAME[0]}" debug "Running: ${FUNCNAME[0]}"
declare -g EASY_RESULTS_DIR EASY_OUT_DIR declare -g EASY_RESULTS_DIR="$QHTCP_PROJECT_DIR/easy"
EASY_OUT_DIR="$QHTCP_PROJECT_DIR/easy"
# Don't override env
if [[ -n $EASY_RESULTS_DIR && ! -d $EASY_RESULTS_DIR ]]; then
mkdir -p "$EASY_RESULTS_DIR"
return 0
fi
local default_easy_results_dir="$EASY_OUT_DIR/$PROJECT"
if [[ -n $PROJECT ]]; then
if [[ ! -d $default_easy_results_dir ]]; then
EASY_RESULTS_DIR="$default_easy_results_dir"
mkdir -p "$EASY_RESULTS_DIR"
return 0
fi
fi
# Always backup existing output # Always backup existing output
# This would happen if you ran the same experiment twice in one day, for instance # This would happen if you ran the same experiment twice in one day, for instance
if [[ -d $default_easy_results_dir ]] ; then if [[ -d $EASY_RESULTS_DIR ]] ; then
backup_dir="$default_easy_results_dir" backup_dir="$EASY_RESULTS_DIR"
while [[ -d $default_easy_results_dir ]]; do
count=1 count=1
while [[ -d $backup_dir ]]; do
backup_dir="$backup_dir.$((count++))" backup_dir="$backup_dir.$((count++))"
done done
echo "Backing up existing output from $default_easy_results_dir to $backup_dir" echo "Backing up existing output from $EASY_RESULTS_DIR to $backup_dir"
debug "rsync -a $default_easy_results_dir $backup_dir" debug "rsync -a $EASY_RESULTS_DIR $backup_dir"
rsync -a "$default_easy_results_dir" "$backup_dir" && rsync -a "$EASY_RESULTS_DIR" "$backup_dir" || return 1
EASY_RESULTS_DIR="$default_easy_results_dir" fi
if [[ ! -d $EASY_RESULTS_DIR ]]; then
debug "mkdir $EASY_RESULTS_DIR"
mkdir "$EASY_RESULTS_DIR"
else
err "Could not create $EASY_RESULTS_DIR"
return 0
fi fi
# echo "Hit enter to use the default EASY results directory: $default_easy_results_dir" # echo "Hit enter to use the default EASY results directory: $default_easy_results_dir"
@@ -1598,7 +1592,7 @@ main() {
# Run selected modules # Run selected modules
for m in "${MODULES[@]}"; do for m in "${MODULES[@]}"; do
ask "Run $m?" && "$m" ask "Run $m module?" && "$m"
done done
done done
} }