1#!/bin/bash
2set -e
3
4echo ""
5echo "Downloading latest copy of test data"
6echo ""
7LATEST_ZIP="$(cat tools/install-build-deps  | grep -o 'https://.*/perfetto/test-data-.*.zip')"
8curl -o /tmp/latest-test-data.zip $LATEST_ZIP
9
10echo ""
11echo "Extracting test data to temp folder"
12echo ""
13rm -rf /tmp/latest-test-data 2>/dev/null
14unzip /tmp/latest-test-data.zip -d /tmp/latest-test-data
15
16echo ""
17echo "Copying trace to temp folder"
18echo ""
19cp $1 /tmp/latest-test-data
20
21echo ""
22echo "Zipping file back up"
23echo ""
24NEW_TEST_DATA="test-data-$(date +%Y%m%d-%H%M%S).zip"
25CWD="$(pwd)"
26cd /tmp/latest-test-data
27zip -r /tmp/$NEW_TEST_DATA *
28cd $CWD
29
30echo ""
31echo "Uploading file to Google Cloud"
32echo ""
33gsutil cp /tmp/$NEW_TEST_DATA gs://perfetto/$NEW_TEST_DATA
34
35echo ""
36echo "Setting file to world readable"
37echo ""
38gsutil acl ch -u AllUsers:R gs://perfetto/$NEW_TEST_DATA
39
40echo ""
41echo "SHA1 of file $NEW_TEST_DATA is"
42if which shasum; then
43NEW_SHA=$(shasum /tmp/$NEW_TEST_DATA)  # Mac OS
44else
45NEW_SHA=$(sha1sum /tmp/$NEW_TEST_DATA)  # Linux
46fi
47echo $NEW_SHA
48
49echo ""
50echo "Cleaning up leftover files"
51echo ""
52rm -r /tmp/latest-test-data
53rm /tmp/latest-test-data.zip
54rm /tmp/$NEW_TEST_DATA
55
56echo ""
57echo "Updating tools/install-build-deps"
58echo ""
59OLD_URL="https://\(.*/perfetto\)/test-data-.*.zip"
60NEW_URL="https://\1/$NEW_TEST_DATA"
61OLD_SHA="\w*"
62SED_MAGIC="s|'$OLD_URL',\n\(\s*\)'$OLD_SHA'|'$NEW_URL',\n\2'$NEW_SHA'|g"
63sed -i '' -z -e "$SED_MAGIC" tools/install-build-deps
64
65echo "All done!"
66