author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 09 Nov 2015 00:38:23 +0000 | |
changeset 549 | 8ad6734770cd |
child 551 | 00ebb1b85f53 |
permissions | -rw-r--r-- |
549
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
1 |
# |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
2 |
# A set of functions to be used in PetitParser's CI jobs |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
3 |
# |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
4 |
|
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
5 |
# Set up some environment variables (if not set by CI) |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
6 |
if [ -z "$BUILD_NUMBER" ]; then |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
7 |
BUILD_NUMBER=0 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
8 |
fi |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
9 |
PETITCOMPILER_DATA_DIRECTORY=test-data |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
10 |
PETITCOMPILER_BENCHMARK_REPORT=benchmark-results-$BUILD_NUMBER.json |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
11 |
|
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
12 |
function ci_download_and_unzip_file { |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
13 |
local url=$1 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
14 |
local where=$PETITCOMPILER_DATA_DIRECTORY |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
15 |
local file=${url##*/} |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
16 |
local directory=${file%.zip} |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
17 |
local status=0 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
18 |
|
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
19 |
if [ ! -d "$PETITCOMPILER_DATA_DIRECTORY/$directory" ]; then |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
20 |
pushd "$PETITCOMPILER_DATA_DIRECTORY" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
21 |
wget -O "$file" "$url" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
22 |
set +e |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
23 |
unzip -o "$file" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
24 |
status=$? |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
25 |
set -e |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
26 |
case "$status" in |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
27 |
0) |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
28 |
status=0 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
29 |
;; |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
30 |
1) |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
31 |
status=0 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
32 |
;; |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
33 |
2) |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
34 |
status=0 |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
35 |
;; |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
36 |
*) |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
37 |
;; |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
38 |
esac |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
39 |
rm -f "$file" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
40 |
popd |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
41 |
else |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
42 |
echo "Skipped $directory (already present)" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
43 |
fi |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
44 |
return "$status" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
45 |
} |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
46 |
|
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
47 |
function ci_download_test_data { |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
48 |
if [ ! -x "$PETITCOMPILER_DATA_DIRECTORY" ]; then |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
49 |
mkdir -p "$PETITCOMPILER_DATA_DIRECTORY" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
50 |
fi |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
51 |
ci_download_and_unzip_file http://scg.unibe.ch/download/jk/petit-compiler/java-src.zip |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
52 |
ci_download_and_unzip_file http://scg.unibe.ch/download/jk/petit-compiler/smalltalk-src.zip |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
53 |
ci_download_and_unzip_file http://scg.unibe.ch/download/jk/petit-compiler/ruby-src.zip |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
54 |
ci_download_and_unzip_file http://scg.unibe.ch/download/jk/petit-compiler/python-src.zip |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
55 |
} |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
56 |
|
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
57 |
function ci_upload_benchmark_results { |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
58 |
if [ -f "$PETITCOMPILER_BENCHMARK_REPORT" ]; then |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
59 |
url 'https://swing.fit.cvut.cz/calipel/imports/push-import' \ |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
60 |
--user "$CALIPEL_USER:$CALIPEL_PASSWORD" \ |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
61 |
--compressed \ |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
62 |
-H 'Content-Type: application/json' \ |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
63 |
--data "@$PETITCOMPILER_BENCHMARK_REPORT" |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
64 |
fi |
8ad6734770cd
Added CI scripts for PetitParser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
65 |
} |