v2.0.2
===================================================================== --- Changes ------------------------------ - improved colors readability by naming color variables in zsh/utils --- Bug Fixes ---------------------------- - aws/efs/mount wouldn't mount if the previous session was not explicitly unmounted. now it does :)
This commit is contained in:
		
							
								
								
									
										3
									
								
								scwrypts
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								scwrypts
									
									
									
									
									
								
							| @@ -196,8 +196,7 @@ __VALIDATE_UPSTREAM_TIMELINE() { | |||||||
| __GET_LOGFILE() { | __GET_LOGFILE() { | ||||||
| 	local SCRIPT="$1" | 	local SCRIPT="$1" | ||||||
|  |  | ||||||
| 	[ $CI ] \ | 	[ $SUBSCWRYPT ] \ | ||||||
| 		|| [ $SUBSCWRYPT ] \ |  | ||||||
| 		|| [[ $SCRIPT =~ scwrypts/logs ]] \ | 		|| [[ $SCRIPT =~ scwrypts/logs ]] \ | ||||||
| 		|| [[ $SCRIPT =~ interactive ]] \ | 		|| [[ $SCRIPT =~ interactive ]] \ | ||||||
| 		&& return 0 | 		&& return 0 | ||||||
|   | |||||||
| @@ -19,6 +19,7 @@ _EFS_CONNECT() { | |||||||
| 	[ ! $FS_ID ] && __ABORT | 	[ ! $FS_ID ] && __ABORT | ||||||
|  |  | ||||||
| 	local MOUNT_POINT="$AWS__EFS__LOCAL_MOUNT_POINT/$FS_ID" | 	local MOUNT_POINT="$AWS__EFS__LOCAL_MOUNT_POINT/$FS_ID" | ||||||
|  | 	[ -d "$MOUNT_POINT" ] && sudo rmdir "$MOUNT_POINT" >/dev/null 2>&1 | ||||||
| 	[ -d "$MOUNT_POINT" ] && { | 	[ -d "$MOUNT_POINT" ] && { | ||||||
| 		__STATUS "$FS_ID is already mounted" | 		__STATUS "$FS_ID is already mounted" | ||||||
| 		exit 0 | 		exit 0 | ||||||
|   | |||||||
| @@ -55,17 +55,3 @@ _REQUIRED_ENV+=( | |||||||
| source ./path/to/utils.plugin.zsh | source ./path/to/utils.plugin.zsh | ||||||
| echo "missing $ENV_ERROR_COUNT required environment variables" | echo "missing $ENV_ERROR_COUNT required environment variables" | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| io.zsh |  | ||||||
| os.zsh |  | ||||||
|  |  | ||||||
| ## Basic Utilities |  | ||||||
|  |  | ||||||
| One of my biggest pet-peeves with scripting is when every line of a *(insert-language-here)* program is escaped to shell. |  | ||||||
| This kind of program, which doesn't use language features, should be a shell script. |  | ||||||
| While there are definitely unavoidable limitations to shell scripting, we can minimize a variety of problems with a modern shell and shared utilities library. |  | ||||||
|  |  | ||||||
| Loaded by `common.zsh`, the [`utils/` library](./utils) provides: |  | ||||||
| - common function wrappers to unify flags and context |  | ||||||
| - lazy dependency and environment variable validation |  | ||||||
| - consistent (and pretty) user input / output |  | ||||||
|   | |||||||
							
								
								
									
										25
									
								
								zsh/utils/colors.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								zsh/utils/colors.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | |||||||
|  | __BLACK='\033[0;30m' | ||||||
|  | __DARK_GRAY='\033[1;30m' | ||||||
|  | 
 | ||||||
|  | __RED='\033[0;31m' | ||||||
|  | __LIGHT_RED='\033[1;31m' | ||||||
|  | 
 | ||||||
|  | __GREEN='\033[0;32m' | ||||||
|  | __LIGHT_GREEN='\033[1;32m' | ||||||
|  | 
 | ||||||
|  | __ORANGE='\033[0;33m' | ||||||
|  | __YELLOW='\033[1;33m' | ||||||
|  | 
 | ||||||
|  | __BLUE='\033[1;34m' | ||||||
|  | __DARK_BLUE='\033[0;34m' | ||||||
|  | 
 | ||||||
|  | __PURPLE='\033[1;35m' | ||||||
|  | __DARK_PURPLE='\033[0;35m' | ||||||
|  | 
 | ||||||
|  | __CYAN='\033[1;36m' | ||||||
|  | __DARK_CYAN='\033[0;36m' | ||||||
|  | 
 | ||||||
|  | __WHITE='\033[1;37m' | ||||||
|  | __LIGHT_GRAY='\033[0;37m' | ||||||
|  | 
 | ||||||
|  | __COLOR_RESET='\033[0m' | ||||||
| @@ -1,14 +1,28 @@ | |||||||
| __ERROR()    { echo "\\033[1;31mERROR    ✖ : $@\\033[0m" >&2; } | __PRINT() { | ||||||
| __SUCCESS()  { echo "\\033[1;32mSUCCESS  ✔ : $@\\033[0m" >&2; } | 	local COLOR="$1" | ||||||
| __WARNING()  { echo "\\033[1;33mWARNING   : $@\\033[0m" >&2; } | 	local MESSAGE="$2" | ||||||
| __STATUS()   { echo "\\033[1;34mSTATUS     : $@\\033[0m" >&2; } | 
 | ||||||
| __REMINDER() { echo "\\033[1;35mREMINDER  : $@\\033[0m" >&2; } | 	local LINE_END | ||||||
|  | 	[ $3 ] && LINE_END='' || LINE_END='\n' | ||||||
|  | 
 | ||||||
|  | 	printf "${COLOR}${MESSAGE}${__COLOR_RESET}${LINE_END}" | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | __ERROR()    { __PRINT $__RED    "ERROR    ✖ : $@" >&2; } | ||||||
|  | __SUCCESS()  { __PRINT $__GREEN  "SUCCESS  ✔ : $@" >&2; } | ||||||
|  | __WARNING()  { __PRINT $__ORANGE "WARNING   : $@" >&2; } | ||||||
|  | __STATUS()   { __PRINT $__BLUE   "STATUS     : $@" >&2; } | ||||||
|  | __REMINDER() { __PRINT $__PURPLE "REMINDER  : $@" >&2; } | ||||||
|  | __INFO()     { __PRINT $__WHITE  "INFO      : $@" >&2; } | ||||||
| 
 | 
 | ||||||
| __PROMPT() { | __PROMPT() { | ||||||
| 	echo   "\\033[1;36mPROMPT    : $@\\033[0m" >&2 | 	__PRINT $__CYAN "PROMPT    : $@" >&2 | ||||||
| 	printf "\\033[1;36mUSER      : \\033[0m" >&2 | 	__PRINT $__CYAN "USER      : " --no-end >&2 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | __FAIL()  { __ERROR "${@:2}"; exit $1; } | ||||||
|  | __ABORT() { __FAIL 69 'user abort'; } | ||||||
|  | 
 | ||||||
| __Yn() { | __Yn() { | ||||||
| 	__PROMPT "$@ [Yn]" | 	__PROMPT "$@ [Yn]" | ||||||
| 	[ $CI ] && { echo y; return 0; } | 	[ $CI ] && { echo y; return 0; } | ||||||
| @@ -25,10 +39,6 @@ __yN() { | |||||||
| 	[[ $yN =~ [yY] ]] && return 0 || return 1 | 	[[ $yN =~ [yY] ]] && return 0 || return 1 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| __FAIL()  { __ERROR "${@:2}"; exit $1; } |  | ||||||
| 
 |  | ||||||
| __ABORT() { __FAIL 69 'user abort'; } |  | ||||||
| 
 |  | ||||||
| ##################################################################### | ##################################################################### | ||||||
| 
 | 
 | ||||||
| __GETSUDO() { | __GETSUDO() { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ _REQUIRED_ENV+=()    # (extensible) list of required environment variables | |||||||
| 
 | 
 | ||||||
| ##################################################################### | ##################################################################### | ||||||
| 
 | 
 | ||||||
|  | source ${0:a:h}/colors.zsh | ||||||
| source ${0:a:h}/io.zsh | source ${0:a:h}/io.zsh | ||||||
| source ${0:a:h}/os.zsh | source ${0:a:h}/os.zsh | ||||||
| source ${0:a:h}/credits.zsh | source ${0:a:h}/credits.zsh | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user