66 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
docker__compose() {
 | 
						|
  command docker compose --env-file .env.sndev "$@"
 | 
						|
}
 | 
						|
 | 
						|
sndev__start() {
 | 
						|
  if [ ! -x "$(command -v docker-compose)" ]; then
 | 
						|
    echo "docker compose is not installed"
 | 
						|
    echo "installation instructions are here: https://docs.docker.com/desktop/"
 | 
						|
    exit 0
 | 
						|
  fi
 | 
						|
 | 
						|
  if ! [ -f .env.sndev ]; then
 | 
						|
    echo ".env.sndev does not exist."
 | 
						|
    echo "creating from .env.sample"
 | 
						|
    cp .env.sample .env.sndev
 | 
						|
  fi
 | 
						|
 | 
						|
  echo "Starting application"
 | 
						|
  docker__compose up --build
 | 
						|
}
 | 
						|
 | 
						|
sndev__stop() {
 | 
						|
  echo "Stopping application"
 | 
						|
  docker__compose down
 | 
						|
}
 | 
						|
 | 
						|
sndev__delete() {
 | 
						|
  echo "Deleting application"
 | 
						|
  docker__compose down --volumes --remove-orphans
 | 
						|
}
 | 
						|
 | 
						|
sndev__help() {
 | 
						|
    if [ $# -eq 3 ]; then
 | 
						|
        call "sndev__$1__$2__$3" "$@"
 | 
						|
    elif [ $# -eq 2 ]; then
 | 
						|
        call "sndev__$1__$2" "$@"
 | 
						|
    else
 | 
						|
        help="sndev manages a docker based stacker news development environment
 | 
						|
 | 
						|
USAGE
 | 
						|
  $ sndev [COMMAND]
 | 
						|
 | 
						|
COMMANDS
 | 
						|
  start   start env
 | 
						|
  stop    stop env
 | 
						|
  delete  delete env
 | 
						|
  help    display help for sndev
 | 
						|
"
 | 
						|
        echo "$help"
 | 
						|
    fi
 | 
						|
}
 | 
						|
 | 
						|
call() {
 | 
						|
    func=$1
 | 
						|
    if type "$func" 1>/dev/null 2>&1; then
 | 
						|
        shift
 | 
						|
        "$func" "$@"  # invoke our named function w/ all remaining arguments
 | 
						|
    else
 | 
						|
        sndev__help
 | 
						|
        exit 1
 | 
						|
    fi
 | 
						|
}
 | 
						|
 | 
						|
call "sndev__$1" "$@" |