chiark / gitweb /
use Babel to compile localizations and include in source tarball
[fdroidserver.git] / .travis.yml
index 7b39e7207015c09d2febbebeec08192a0a1ba057..3dab550ad16be87b6f107995870f1c5e515fb8e4 100644 (file)
@@ -7,7 +7,15 @@ matrix:
     - os: linux
       language: android
     - os: osx
-      osx_image: xcode9
+      osx_image: xcode9.1
+      env: ANDROID_SDK_ROOT=/usr/local/share/android-sdk
+      env: ANDROID_HOME=/usr/local/share/android-sdk
+    - os: osx
+      osx_image: xcode7.3
+      env: ANDROID_SDK_ROOT=/usr/local/share/android-sdk
+      env: ANDROID_HOME=/usr/local/share/android-sdk
+    - os: osx
+      osx_image: xcode6.4
       env: ANDROID_SDK_ROOT=/usr/local/share/android-sdk
       env: ANDROID_HOME=/usr/local/share/android-sdk
 
@@ -20,6 +28,7 @@ addons:
     - dash
     - pylint
     - pep8
+    - python3-babel
     - python3-dev
     - python3-pip
     - python3-ruamel.yaml
@@ -38,26 +47,36 @@ android:
     - 'android-sdk-license-.+'
 
 # the PPA is needed on Ubuntu 14.04 precise, and with python3, trusty too
-# the pip thing is a hack that can go away with trusty
+# the pip thing is a hack that can go away with trusty.
+#
+# * ensure java8 is installed since Android SDK doesn't work with Java9
+# * Java needs to be at least 1.8.0_131 to have MD5 properly disabled
+#   https://blogs.oracle.com/java-platform-group/oracle-jre-will-no-longer-trust-md5-signed-code-by-default
+#   https://opsech.io/posts/2017/Jun/09/openjdk-april-2017-security-update-131-8u131-and-md5-signed-jars.html
 install:
   - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
       brew update > /dev/null;
-      brew install dash bash python3 gradle;
+      brew install dash bash python3 gradle jenv;
       brew install gnu-sed --with-default-names;
+      if ! ruby -e 'v = `javac -version 2>&1`.split()[1].gsub("_", "."); exit Gem::Dependency.new("", "~> 1.8.0.131").match?("", v)'; then
+        brew cask uninstall java --force;
+        brew cask install caskroom/versions/java8;
+      fi;
       brew cask install android-sdk;
 
       mkdir -p "$ANDROID_HOME/licenses";
       echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license";
       echo -e "\n84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_HOME/licenses/android-sdk-preview-license";
-      echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools";
-      echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2";
-      echo y | $ANDROID_HOME/tools/bin/sdkmanager "platforms;android-23";
+      echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools" > /dev/null 2&>1;
+      echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2" > /dev/null 2&>1;
+      echo y | $ANDROID_HOME/tools/bin/sdkmanager "platforms;android-23" > /dev/null 2&>1;
 
-      sudo pip3 install -e  .;
+      sudo pip3 install --quiet --editable . ;
       sudo rm -rf fdroidserver.egg-info;
 
       echo $PATH;
       echo $JAVA_HOME;
+      jenv versions;
       /usr/libexec/java_home;
       java -version;
       which java;