#!/usr/bin/env bash set -e cd "$(dirname "$0")" if [[ -z $1 || $1 = -* ]]; then set -- up "$@" fi function with_set_x() { set -x "$@" { ec=$? set +x return $ec } 2>/dev/null } function build() { # podman build -t ghcr.io/sshuttle/sshuttle-testbed . with_set_x docker build --progress=plain -t ghcr.io/sshuttle/sshuttle-testbed -f Containerfile . } function compose() { # podman-compose "$@" with_set_x docker compose "$@" } function get-ip() { local container_name=sshuttle-testbed-"$1" docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' "$container_name" } if [[ $1 == get-ip ]]; then shift get-ip "$@" else if [[ $* = *--build* ]]; then build fi compose "$@" fi