diff options
Diffstat (limited to 'nms/makedockerfiles.sh')
-rwxr-xr-x | nms/makedockerfiles.sh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/nms/makedockerfiles.sh b/nms/makedockerfiles.sh new file mode 100755 index 0000000..6c8e136 --- /dev/null +++ b/nms/makedockerfiles.sh @@ -0,0 +1,26 @@ +#!/bin/sh +awk -v TARGET=/dev/null ' +BEGIN { + system("mkdir -p build") +} +/^@template/ { + TARGET="build/Dockerfile."$2; + TARGETS[ntargets++]=$2; + print "# Generated" > TARGET + next; +} +{ + print > TARGET +} +END { + print "#! /bin/sh" > "build/build.sh" + print "set -e" > "build/build.sh" + for (x in TARGETS) { + a = TARGETS[x] + print "echo Building "a > "build/build.sh" + print "echo Logs: build/"a".log" > "build/build.sh" + print "docker build -t "a" -f build/Dockerfile."a" . > build/"a".log 2>&1 || cat build/"a".log" > "build/build.sh" + } + system("chmod +x build/build.sh") +}' < Dockerfile.in +build/build.sh |