#!/bin/bash -e while test $# -gt 0; do case "$1" in (-h|--help) cat <&2 exit 1 fi shift done for f in $*; do f=${f%.yaml} if ! test -e ${f}.yaml; then echo "ERROR: no file ${f}.yaml" 1>&2 exit 1 fi echo "... deploying ${f##*/}" for d in $(sed -n 's,^ *source: \(/.*\),\1,p' ${f}.yaml); do test -e $d || mkdir -p $d done docker stack deploy --compose-file ${f}.yaml ${f##*/} done