90 lines
3.7 KiB
Bash
Executable File
90 lines
3.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Upgrade existing seqs (<16) to be compatible with sequencer 16
|
|
# Please review the changes especially for informational output
|
|
|
|
# Holds all files which should be upgraded
|
|
sq_files=()
|
|
|
|
step_1_info() { echoinfoArgs "[FILE ...]"; echo "Check files"; }
|
|
step_1_alias() { echo "upgrade"; }
|
|
step_1() {
|
|
local file=
|
|
local execute=
|
|
shift
|
|
if [[ "${1:-}" == --execute ]] ; then
|
|
execute="${1}"
|
|
shift
|
|
fi
|
|
|
|
for file in "$@" ; do
|
|
if [ ! -w "${file}" ] ; then
|
|
error "No permission to write ${file}"
|
|
return 1
|
|
elif [ ! -d "${file}" ] ; then
|
|
sq_files+=("${file}")
|
|
fi
|
|
done
|
|
|
|
exe makechanges ${execute}
|
|
}
|
|
|
|
makechanges() {
|
|
local file=
|
|
local inplace="-n"
|
|
local sedprint="gp"
|
|
if [[ "${1:-}" == --execute ]] ; then
|
|
info "Executing..."
|
|
inplace="-i"
|
|
sedprint="g"
|
|
fi
|
|
for file in "${sq_files[@]}" ; do
|
|
echo "Update: ${file}"
|
|
exe sed ${inplace} 's/\[* ${*DRY}* \(-eq\|==\) 0 \]* &&/dry ||/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*DRY}* \(-eq\|==\) 0 \]*/! dry/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*DRY}* \(-ne\|!=\) 0 \]*/dry/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/\[* ${*QUIET}* \(-ne\|!=\) 0 \]*/quiet/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*QUIET}* \(-eq\|==\) 0 \]*/interactive/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/\[* ${*QUIET}* \(-ne\|!=\) 2 \]* &&/silent ||/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*QUIET}* \(-ne\|!=\) 2 \]*/! silent/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/\[* ${*VERBOSE}* \(-eq\|==\) 0 \]*/! verbose/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_HELP}* \(-eq\|==\) 0 \]* &&/contextHelp ||/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_HELP}* \(-eq\|==\) 0 \]*/! contextHelp/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_HELP}* \(-ne\|!=\) 0 \]*/contextHelp/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_EXE}* \(-eq\|==\) 0 \]* &&/contextExe ||/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_EXE}* \(-eq\|==\) 0 \]*/! contextExe/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/\[* ${*CONTEXT_EXE}* \(-ne\|!=\) 0 \]*/contextExe/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/echoseq " \[I\] /info "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoseq " \[W\] /warning "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoseq " \[E\] /error "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoseq/info/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/echoerr " \[I\] /info -e "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoerr " \[W\] /warning -e "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoerr " \[E\] /error -e "/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/echoerr/error -e/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/outColor/color/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/"*${*DEFAULT_EDITOR_SYSTEM}*"*/editor/'${sedprint} "${file}"
|
|
|
|
exe sed ${inplace} 's/^[[:space:]]*step_config/seq_config/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^\(step_.*_alias\)()[[:space:]]*{[[:space:]]*ALIAS=/\1() { echo /'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^SEQUENCER_ARGS/sqr_args/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^STEP_ARGS/seq_args/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^SEQ_CONFIG_HOME/seq_configRoot/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^SEQ_CONFIG_FILE/seq_configFile/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^SEQ_PROFILE_NAME/seq_profileName/'${sedprint} "${file}"
|
|
exe sed ${inplace} 's/^VERSION_SEQREV.*/readonly sqr_minVersion=16/'${sedprint} "${file}"
|
|
done
|
|
}
|
|
|
|
readonly sqr_minVersion=16
|
|
. /usr/local/bin/sequencer.sh
|