summaryrefslogtreecommitdiffstats
path: root/core/js/select2/release.sh
diff options
context:
space:
mode:
Diffstat (limited to 'core/js/select2/release.sh')
-rwxr-xr-xcore/js/select2/release.sh79
1 files changed, 79 insertions, 0 deletions
diff --git a/core/js/select2/release.sh b/core/js/select2/release.sh
new file mode 100755
index 00000000000..0d2e279ead4
--- /dev/null
+++ b/core/js/select2/release.sh
@@ -0,0 +1,79 @@
+#!/bin/bash
+set -e
+
+echo -n "Enter the version for this release: "
+
+read ver
+
+if [ ! $ver ]; then
+ echo "Invalid version."
+ exit
+fi
+
+name="select2"
+js="$name.js"
+mini="$name.min.js"
+css="$name.css"
+release="$name-$ver"
+tag="$ver"
+branch="build-$ver"
+curbranch=`git branch | grep "*" | sed "s/* //"`
+timestamp=$(date)
+tokens="s/@@ver@@/$ver/g;s/\@@timestamp@@/$timestamp/g"
+remote="github"
+
+echo "Pulling from origin"
+
+git pull
+
+echo "Updating Version Identifiers"
+
+sed -E -e "s/\"version\": \"([0-9\.]+)\",/\"version\": \"$ver\",/g" -i -- bower.json select2.jquery.json component.json composer.json package.json
+
+git add bower.json
+git add select2.jquery.json
+git add component.json
+git add composer.json
+git add package.json
+
+git commit -m "modified version identifiers in descriptors for release $ver"
+git push
+
+git branch "$branch"
+git checkout "$branch"
+
+echo "Tokenizing..."
+
+find . -name "$js" | xargs -I{} sed -e "$tokens" -i -- {}
+find . -name "$css" | xargs -I{} sed -e "$tokens" -i -- {}
+
+sed -e "s/latest/$ver/g" -i -- bower.json
+
+git add "$js"
+git add "$css"
+
+echo "Minifying..."
+
+echo "/*" > "$mini"
+cat LICENSE | sed "$tokens" >> "$mini"
+echo "*/" >> "$mini"
+
+curl -s \
+ --data-urlencode "js_code@$js" \
+ http://marijnhaverbeke.nl/uglifyjs \
+ >> "$mini"
+
+git add "$mini"
+
+git commit -m "release $ver"
+
+echo "Tagging..."
+git tag -a "$tag" -m "tagged version $ver"
+git push "$remote" --tags
+
+echo "Cleaning Up..."
+
+git checkout "$curbranch"
+git branch -D "$branch"
+
+echo "Done"