[MERGE] forward port of branch saas-3 up to 77500e5
[odoo/odoo.git] / addons / web / static / lib / select2 / release.sh
1 #!/bin/bash
2 set -e
3
4 echo -n "Enter the version for this release: "
5
6 read ver
7
8 if [ ! $ver ]; then 
9         echo "Invalid version."
10         exit
11 fi
12
13 name="select2"
14 js="$name.js"
15 mini="$name.min.js"
16 css="$name.css"
17 release="$name-$ver"
18 releasedir="/tmp/$release"
19 tag="release-$ver"
20 branch="build-$ver"
21 curbranch=`git branch | grep "*" | sed "s/* //"`
22 timestamp=$(date)
23 tokens="s/@@ver@@/$ver/g;s/\@@timestamp@@/$timestamp/g"
24 remote="github"
25
26 git branch "$branch"
27 git checkout "$branch"
28
29 echo "Tokenizing..."
30
31 find . -name "$js" | xargs sed -i -e "$tokens"
32 find . -name "$css" | xargs sed -i -e "$tokens"
33
34 git add "$js"
35 git add "$css"
36
37 echo "Minifying..."
38
39 echo "/*" > "$mini"
40 cat LICENSE | sed "$tokens" >> "$mini"
41 echo "*/" >> "$mini"
42
43 curl -s \
44         -d compilation_level=SIMPLE_OPTIMIZATIONS \
45         -d output_format=text \
46         -d output_info=compiled_code \
47         --data-urlencode "js_code@$js" \
48         http://closure-compiler.appspot.com/compile \
49         >> "$mini"
50
51 git add "$mini"
52         
53 git commit -m "release $ver"
54
55 echo "Tagging..."
56
57 git tag -a "$tag" -m "tagged version $ver"
58 git push "$remote" --tags
59
60 echo "Archiving..."
61
62 rm -rf "$releasedir"
63 mkdir "$releasedir"
64
65 cp $name.* "$releasedir"
66 cp spinner.gif "$releasedir"
67 cp README.* "$releasedir"
68
69 zip -r "$releasedir.zip" "$releasedir"
70 rm -rf "$releasedir"
71
72 echo "Cleaning Up..."
73
74 git checkout "$curbranch"
75 git branch -D "$branch"
76
77 echo "Done. Release archive created: $releasedir.zip"