Mercurial > public > ssdt-docker
view scripts/updates-apply.sh @ 239:0e0f7fc084fb release/v2.0.0
flow: Closed <release> 'v2.0.0'.
author | smith@nwoca.org |
---|---|
date | Wed, 10 Jan 2018 01:42:42 +0000 |
parents | fea886ba7279 |
children | 6aecbb32c587 |
line wrap: on
line source
#!/bin/bash # Scans for docker projects in specified parent path and # updates images, if applicable. # # The parent directory to search for docker-compose.yml # files must be specified. An optional service to update # may be specified in the second argument. The default is # to update services matching "*app". # # Only services which are currently running will be updated. # The script will not automatically start stopped services. # # examples: # /ssdt/apply-updates.sh /data/preview # /ssdt/apply-updates.sh /data/preview usps # source "${SSDT_SCRIPTS:-$(dirname "${BASH_SOURCE[0]}")}/.functions.sh" : ${1?"Usage: {parent path} [service]"} SERVICE=${2:-*app} ORIGINALDIR=$PWD PARENTDIR=$1 for f in $(find $PARENTDIR -name docker-compose.yml) do projectdir=`dirname $f` project=`basename $projectdir` cd $projectdir echo -e "----\n$project: checking services" while read line do read container eol <<< $line if [[ $container == *_1 ]] then t=(${container//_/ }) service=${t[1]} if [[ $service == $SERVICE ]] then echo -e "\n$project: Updating $service" docker-compose up -d $service fi fi done < <(docker-compose ps) done cd $ORIGINALDIR