introduce --verbosity flag rather than mixed logging settings; correct color misnaming to ANSI convention; added sanity-check; simplified hello-world; created FZF_USER_INPUT to replace the confusing FZF_HEAD and FZF_TAIL swap INFO for DEBUG v3-to-v4 upgrade docs bring some much-needed tender love and care to the scwrypts runner improved i/o handling on the run executable means this is no longer relevant FINALLY fix the weird cases for zsh/read builtin (particularly around reading one character from tty/pipe/file); also gave a --force-user-input flag in case you want to require user input on a yn prompt update ZLE plugin so it no more make errors FZF_(HEAD|TAIL) refactor to FZF_USER_INPUT plugins/kubectl migration from v3 to v4 plugins/ci migration from v3 to v4 refactor py/lib into python-scwrypts subproject verbosity is stupid lets call it log-level fix bug with virtualenv loading mergedeep to slow so I made my options dict shallow hokay first iteration of python-dudes is ready circleci configuration for python builds npm package for scwrypts 3.9.1 initial build/test steps for nodejs go go ok ok fix output ok ok finalize publish steps
36 lines
1.2 KiB
Bash
Executable File
36 lines
1.2 KiB
Bash
Executable File
#!/bin/zsh
|
|
use scwrypts/environment-files
|
|
#####################################################################
|
|
|
|
MAIN() {
|
|
PROMPT 'choose an environment to copy'
|
|
TEMPLATE_ENV_NAME=$(SCWRYPTS__SELECT_ENV)
|
|
[ ! $TEMPLATE_ENV_NAME ] && ABORT
|
|
|
|
STATUS "selected '$TEMPLATE_ENV_NAME'"
|
|
|
|
PROMPT 'enter new environment name'
|
|
ENV_NAME=$(echo '' | FZF_USER_INPUT 'new environment')
|
|
[ ! $ENV_NAME ] && ABORT
|
|
SCWRYPTS__GET_ENV_NAMES | grep -q $ENV_NAME && FAIL 1 "'$ENV_NAME' already exists"
|
|
|
|
for GROUP in ${SCWRYPTS_GROUPS[@]}
|
|
do
|
|
TEMPLATE_ENV_FILE=$(SCWRYPTS__GET_ENV_FILE $TEMPLATE_ENV_NAME $GROUP 2>/dev/null)
|
|
ENV_FILE=$(SCWRYPTS__GET_ENV_FILE $ENV_NAME $GROUP 2>/dev/null)
|
|
|
|
STATUS "creating environment '$ENV_NAME'"
|
|
cat "$TEMPLATE_ENV_FILE" \
|
|
| sed 's/ # from.*//' \
|
|
> "$ENV_FILE" \
|
|
&& SUCCESS "created '$ENV_FILE'" \
|
|
|| FAIL 2 "something went wrong creating '$ENV_FILE'"
|
|
done
|
|
|
|
STATUS "synchronizing environments"
|
|
SCWRYPTS__RUN --name scwrypts/environment/synchronize --group scwrypts --type zsh -- --no-prompt \
|
|
&& SUCCESS "finished copy environment '$TEMPLATE_ENV_NAME > $ENV_NAME'" \
|
|
|| FAIL 3 'error during synchronization of new environment (see above)' \
|
|
;
|
|
}
|