Mercurial > hg > sonic-visualiser
annotate deploy/linux/docker/build.sh @ 2049:fd4976627485
Fix inconsistency between centre frame actually set and centre frame notified as set, which caused the start frame location to creep out of place gradually as you page through
author | Chris Cannam |
---|---|
date | Tue, 30 Oct 2018 14:00:39 +0000 |
parents | 12b96d6b1d66 |
children |
rev | line source |
---|---|
Chris@1539 | 1 #!/bin/bash |
Chris@1539 | 2 |
Chris@1539 | 3 version=$(perl -p -e 's/^[^"]*"([^"]*)".*$/$1/' version.h | sed 's/-//g') |
Chris@1539 | 4 |
Chris@1539 | 5 dockerdir=./deploy/linux/docker |
Chris@1539 | 6 if [ ! -d "$dockerdir" ]; then |
Chris@1539 | 7 echo "Run this script from the build root" |
Chris@1539 | 8 exit 2 |
Chris@1539 | 9 fi |
Chris@1539 | 10 |
Chris@1539 | 11 platform="$1" |
Chris@1539 | 12 |
Chris@1539 | 13 if [ -z "$platform" ] || [ -n "$2" ]; then |
Chris@1539 | 14 echo "Usage: $0 <platform>" |
Chris@1539 | 15 echo "where <platform> matches the suffix of the Docker file, e.g. ubuntu1604" |
Chris@1539 | 16 exit 2 |
Chris@1539 | 17 fi |
Chris@1539 | 18 |
Chris@1539 | 19 set -eu |
Chris@1539 | 20 |
Chris@1539 | 21 echo "Building for version $version, platform $platform" |
Chris@1539 | 22 dockerfile="Dockerfile_v${version}_${platform}" |
Chris@1539 | 23 |
Chris@1539 | 24 if [ ! -f "$dockerdir/$dockerfile" ]; then |
Chris@1909 | 25 echo "No matching docker file $dockerfile found in $dockerdir, trying again without version" |
Chris@1909 | 26 dockerfile="Dockerfile_${platform}" |
Chris@1909 | 27 if [ ! -f "$dockerdir/$dockerfile" ]; then |
Chris@1909 | 28 echo "No matching docker file $dockerfile found in $dockerdir either" |
Chris@1909 | 29 exit 1 |
Chris@1909 | 30 fi |
Chris@1539 | 31 fi |
Chris@1539 | 32 |
Chris@1539 | 33 dockertag="cannam/sonic-visualiser-$platform" |
Chris@1539 | 34 |
Chris@1539 | 35 sudo docker build -t "$dockertag" -f "$dockerdir/$dockerfile" "$dockerdir" |
Chris@1539 | 36 |
Chris@1539 | 37 outdir="$dockerdir/output" |
Chris@1539 | 38 mkdir -p "$outdir" |
Chris@1539 | 39 |
Chris@1539 | 40 container=$(sudo docker create "$dockertag") |
Chris@1539 | 41 sudo docker cp "$container":output.tar "$outdir" |
Chris@1539 | 42 sudo docker rm "$container" |
Chris@1539 | 43 |
Chris@1539 | 44 ( cd "$outdir" ; tar xf output.tar && rm -f output.tar ) |
Chris@1539 | 45 |
Chris@1539 | 46 echo |
Chris@1539 | 47 echo "Done, output directory contains:" |
Chris@1539 | 48 ls -ltr "$outdir" |