summaryrefslogtreecommitdiff
path: root/other/bootstrap_daemon/docker/update-sha256
blob: 78aa656fa67de02359b3f35826e1d0e971f6f29c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

set -eux

docker_build() {
  tar c $(git ls-files) | docker build -f other/bootstrap_daemon/docker/Dockerfile -t toxchat/bootstrap-node -
}

# Run Docker build once. If it succeeds, we're good.
if docker_build; then
  exit 0
fi

# We're not good. Run it again, but now capture the output.
OUTPUT=$(docker_build || true 2>&1)

if echo "$OUTPUT" | grep '/usr/local/bin/tox-bootstrapd: FAILED'; then
  # This is a checksum warning, so we need to update it.
  IMAGE=$(echo "$OUTPUT" | grep '^ ---> [0-9a-f]*$' | grep -o '[0-9a-f]*$' | tail -n1)
  docker run --rm "$IMAGE" sha256sum /usr/local/bin/tox-bootstrapd > other/bootstrap_daemon/docker/tox-bootstrapd.sha256
fi

# Run once last time to complete the build.
docker_build