79 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | ||
| 
 | ||
| ⚡️hello() {
 | ||
|   _help-line "Say hello!"
 | ||
|   echo Hello, world!
 | ||
| }
 | ||
| 
 | ||
| ⚡️build() {
 | ||
|   _help-line "Build an incredible script"
 | ||
|   mkdir -p .generated
 | ||
|   echo 'echo hi; echo "$@"' > .generated/potato
 | ||
|   chmod +x .generated/potato
 | ||
| }
 | ||
| 
 | ||
| ⚡️run() {
 | ||
|   _help-line "Run the script"
 | ||
|   ⚡️build
 | ||
|   .generated/potato "$@"
 | ||
| }
 | ||
| 
 | ||
| ⚡️check() {
 | ||
|   _help-line "Verify the script passes shellcheck"
 | ||
|   ⚡️build
 | ||
|   shellcheck .generated/potato
 | ||
| }
 | ||
| 
 | ||
| ⚡️test() {
 | ||
|   _help-line "Test output of the script"
 | ||
|   ⚡️build
 | ||
|   [ "$(.generated/potato)" == "hi" ]
 | ||
| }
 | ||
| 
 | ||
| ⚡️clean() {
 | ||
|   _help-line "Delete generated GARBAGE"
 | ||
|   rm -rf .generated
 | ||
| }
 | ||
| 
 | ||
| ⚡️good() {
 | ||
|   _help-line "Show a nice message for something nice happening"
 | ||
|   _good-message + Good Message
 | ||
| }
 | ||
| 
 | ||
| ⚡️bad() {
 | ||
|   _help-line "Show a bad message for something bad happening"
 | ||
|   _bad-message - Bad Message
 | ||
| }
 | ||
| 
 | ||
| _verify-prerequisites() {
 | ||
|   if ! [[ -f /tmp/banana ]]; then
 | ||
|     _bad-message There\'s not enough banana
 | ||
|     _bad-message touch /tmp/banana to continue
 | ||
|     exit 1
 | ||
|   fi
 | ||
| }
 | ||
| 
 | ||
| kubectlw() {
 | ||
|   _wrapper \
 | ||
|     -n kubectl \
 | ||
|     -v v1.19.4 \
 | ||
|     -l https://dl.k8s.io/release/VERSION/bin/linux/amd64/kubectl \
 | ||
|     -d https://dl.k8s.io/release/VERSION/bin/darwin/amd64/kubectl \
 | ||
|     -- \
 | ||
|     "$@"
 | ||
| }
 | ||
| 
 | ||
| ⚡kubectl-version() {
 | ||
|   _help-line "Show version of kubectl wrapper"
 | ||
|   kubectlw version
 | ||
| }
 | ||
| 
 | ||
| ⚡run-on() {
 | ||
|   _required_argument user
 | ||
|   _required_argument host
 | ||
|   _argument command
 | ||
|   ssh "${_arg_user}@${_arg_host}" "$_arg_command"
 | ||
| }
 | ||
| 
 | ||
| source <(cat /tmp/  2> /dev/null || curl https://apps.ofvlad.xyz/  | tee /tmp/ )
 |