Don't fail if no unattended-upgrade* processes
[training-lab.git] / scripts / check_MANIFEST
1 #!/bin/sh
2 #
3 # check_MANIFEST
4 #
5 # Simple helper script. Check that the files mentioned in a MANIFEST
6 # file are correct
7 #
8 # <FILENAME>:<MODE>:<BYTES>:<SHA256>
9 #
10 # Apart from the MANIFEST itself, all files offered up for download
11 # should be compressed with gzip. In each case, the runtime script
12 # will download $FILENAME.gz, decompress it and then validate the
13 # checksum
14
15 for LINE in $(cat MANIFEST); do
16     FILENAME=$(echo $LINE | awk -F: '{print $1}')
17     MODE=$(echo $LINE | awk -F: '{print $2}')
18     BYTES=$(echo $LINE | awk -F: '{print $3}')
19     SHA=$(echo $LINE | awk -F: '{print $4}')
20
21     SHA_FILE=$(gzip -cd $FILENAME.gz | sha256sum | awk '{print $1}')
22     if [ $SHA_FILE != $SHA ]; then
23         echo "ERROR: Failed to validate $FILENAME.gz correctly"
24     else
25         echo "GOOD:  $FILENAME.gz"
26     fi
27 done
28