#!/bin/bash set -ex # version compare magic vergte() { printf '%s\n%s' "$1" "$2" | sort -C -V -r } test -e /opt/gradle/versions || mkdir -p /opt/gradle/versions cd /opt/gradle/versions glob="/vagrant/cache/gradle-*.zip" if compgen -G $glob; then # test if glob matches anything f=$(ls -1 --sort=version --group-directories-first $glob | tail -1) ver=`echo $f | sed 's,.*gradle-\([0-9][0-9.]*\).*\.zip,\1,'` # only use versions greater or equal 2.2.1 if vergte $ver 2.2.1 && [ ! -d /opt/gradle/versions/${ver} ]; then unzip -qq $f mv gradle-${ver} /opt/gradle/versions/${ver} fi fi chmod -R a+rX /opt/gradle test -e /opt/gradle/bin || mkdir -p /opt/gradle/bin ln -fs /home/vagrant/fdroidserver/gradlew-fdroid /opt/gradle/bin/gradle chown -h vagrant.vagrant /opt/gradle/bin/gradle chown vagrant.vagrant /opt/gradle/versions chmod 0755 /opt/gradle/versions GRADLE_HOME=/home/vagrant/.gradle test -d $GRADLE_HOME/ || mkdir $GRADLE_HOME/ cat < $GRADLE_HOME/gradle.properties # builds are not reused, so the daemon is a waste of time org.gradle.daemon=false # set network timeouts to 10 minutes # https://github.com/gradle/gradle/pull/3371/files systemProp.http.connectionTimeout=600000 systemProp.http.socketTimeout=600000 systemProp.org.gradle.internal.http.connectionTimeout=600000 systemProp.org.gradle.internal.http.socketTimeout=600000 EOF chown -R vagrant.vagrant $GRADLE_HOME/ chmod -R a+rX $GRADLE_HOME/