aded scripts
This commit is contained in:
14
deploy.sh
Executable file
14
deploy.sh
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
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: *//p' ${f}.yaml); do
|
||||
test -e $d || mkdir -p $d
|
||||
done
|
||||
docker stack deploy --compose-file ${f}.yaml ${f}
|
||||
done
|
48
update.sh
Executable file
48
update.sh
Executable file
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
limit=''
|
||||
while test $# -gt 0; do
|
||||
case "$1" in
|
||||
(-h|--help) cat <<EOF
|
||||
$0 [OPTIONS] NAMES…
|
||||
|
||||
OPTIONS
|
||||
|
||||
-h, --help show this help
|
||||
-s, --limit service limit update to given service
|
||||
|
||||
NAMES…
|
||||
|
||||
list of stack names to update
|
||||
|
||||
DESCRIPTION
|
||||
|
||||
updates the docker images of all services in the given stacks
|
||||
|
||||
EOF
|
||||
exit;;
|
||||
(-l|--limit) shift; limit=$1;;
|
||||
(*) break;;
|
||||
esac
|
||||
if test $# -lt 1; then
|
||||
echo "error: missing argument, try $0 --help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
for f in $*; do
|
||||
name=${f%.yaml}
|
||||
file=${name}.yaml
|
||||
echo "upgrading ${name}"
|
||||
IFS="
|
||||
"
|
||||
for param in $(sed -n '/^ *\([^:]\+\): *$/{s//'"${name}"'_\1/;h};/^ *image: */{s///;G;s/\n/ /p}' $file); do
|
||||
IFS=" "
|
||||
if [ -z "$limit" ] || [[ "${param}" =~ " ${name}_${limit}" ]]; then
|
||||
echo "....update $param: docker service update -d --image $param"
|
||||
docker service update -d --image $param
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
Reference in New Issue
Block a user