|  | #!/bin/sh | 
|  |  | 
|  | extra_volume='/tmp:/tmp' | 
|  |  | 
|  | POSITIONAL=() | 
|  | while [[ $# -gt 0 ]] | 
|  | do | 
|  | key="$1" | 
|  |  | 
|  | case $key in | 
|  | -v|--volume) | 
|  | extra_volume="$2" | 
|  | shift # past argument | 
|  | shift # past value | 
|  | ;; | 
|  | *)    # unknown option | 
|  | POSITIONAL+=("$1") # save it in an array for later | 
|  | shift # past argument | 
|  | ;; | 
|  | esac | 
|  | done | 
|  | set -- "${POSITIONAL[@]}" # restore positional parameters | 
|  |  | 
|  | if [[ -z "$1" ]]; then | 
|  | echo This is a runner for higher-level scripts, e.g. mitm-serve-app-dev.sh | 
|  | echo Alternatively, pass mitmproxy script from the same dir as a parameter, e.g. serve-app-dev.py | 
|  | exit 1 | 
|  | fi | 
|  |  | 
|  | gerrit_dir=$(pwd) | 
|  | mitm_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" | 
|  |  | 
|  | CMD="${mitm_dir}/$1" | 
|  |  | 
|  | docker run --rm -it \ | 
|  | -v ~/.mitmproxy:/home/mitmproxy/.mitmproxy \ | 
|  | -v ${mitm_dir}:${mitm_dir} \ | 
|  | -v ${gerrit_dir}:${gerrit_dir} \ | 
|  | -v ${gerrit_dir}/bazel-out:${gerrit_dir}/bazel-out \ | 
|  | -v ${extra_volume} \ | 
|  | -p 8888:8888 \ | 
|  | mitmproxy/mitmproxy:2.0.2 \ | 
|  | mitmdump -q -p 8888 -s "${CMD}" |