Mercurial > public > ssdt-docker
view scripts/exec-all-projects.sh @ 199:ab47ca9899ea
DEP-12: update training db scripts
author | smith@nwoca.org |
---|---|
date | Mon, 25 Sep 2017 21:50:52 +0100 |
parents | fea886ba7279 |
children | f6bea554980e |
line wrap: on
line source
#!/bin/bash # Scans for docker projects in specified parent path and # executes the specified command. # # The first parameter specifices theparent directory to search for # docker-compose.yml # files must be specified. # # # the second paramter specifies the command to execute against each # compose project. # # examples: # # /ssdt/scripts/exec-all-projects.sh /data/pilot docker-compose ps # # executes "docker-compose ps" against all projects under /data/pilot # # /ssdt/scripts/exec-all-projects.sh /data/pilot /ssdt/ /ssdt/scripts/backup-usas.sh # # runs backup-usas.sh script against all projects under /data/pilot # # /ssdt/scripts/exec-all-projects.sh /data/pilot "/ssdt/scripts/capture.sh | /ssdt/scripts/send.sh -" # # captures the log files from all containers and sends one long file per project # to the SSDT support server. # # ## source "${SSDT_SCRIPTS:-$(dirname "${BASH_SOURCE[0]}")}/.functions.sh" : ${1?"Usage: {parent path} [command]"} ORIGINALDIR=$PWD PARENTDIR=$1 shift COMMAND=$@ for f in $(find $PARENTDIR -name docker-compose.yml) do projectdir=`dirname $f` project=`basename $projectdir` cd $projectdir echo -e "----\n$executing $COMMAND on $project \n----" bash -c "${COMMAND}" echo "" done cd $ORIGINALDIR