Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- function argIdx() {
- len=$(($#))
- arr=(${@:1:$len-1})
- arg=${@:$len:1}
- res=
- for i in "${!arr[@]}"; do
- if [[ "${arr[$i]}" =~ $arg ]]; then
- res="${i}"
- break
- fi
- done
- echo $res
- }
- project=wsbmix
- cmdIdx=`argIdx "$@" "^[^-]"`
- opts=(${@:1:$cmdIdx})
- cmd=${@:$cmdIdx+1:1}
- cmdArgs=(${@:$cmdIdx+2:$#})
- cmdArgsLen=${#cmdArgs[@]}
- # add "run" default options
- if [ $cmd == "run" ]; then
- # default to --rm option (remove container on stop)
- if [ `argIdx "$cmdArgs" "--no-rm"` ]; then
- cmdArgs=("${cmdArgs[@]/--no-rm}")
- else
- cmdArgs=("--rm" ${cmdArgs[@]})
- fi
- # use service ports for default "run app"
- if [ $cmdArgsLen == 1 ]; then
- cmdArgs=("--service-ports" ${cmdArgs[@]})
- fi
- fi
- # add tag ENV value
- tagIdx=`argIdx "${opts[@]}" "^-t"`
- if [ $tagIdx ];then
- tag=${opts[$tagIdx]:3}
- export WSB_APP_TAG=$tag
- opts=("${opts[@]/${opts[$tagIdx]}}")
- fi
- echo "===docker-compose ${opts[@]} $cmd ${cmdArgs[@]}"
- docker-compose \
- -p $project \
- -f docker/wsb.base.dockerc.yml -f docker/$project.dev.dockerc.yml ${opts[@]} \
- $cmd ${cmdArgs[@]}
Add Comment
Please, Sign In to add comment