-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
82 lines (67 loc) · 2.35 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
os: linux
dist: trusty
jdk: oraclejdk8
language: node_js
node_js:
- "12"
env:
global:
- ANDROID_SDK_ROOT=/opt/android
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- libstdc++6
- fonts-droid
- curl
before_install:
# Execute Intolera prebuild webhook.
- ./.travis/10_prebuild.sh $WEBHOOK_URL
before_script:
# Setup gradle.
- wget https://services.gradle.org/distributions/gradle-5.1.1-bin.zip
- unzip -qq gradle-5.1.1-bin.zip
- export GRADLE_HOME=`pwd`/gradle-5.1.1
- export PATH=$GRADLE_HOME/bin:$PATH
# (Quick fix: Silence sdkmanager warning)
- mkdir -p /home/travis/.android
- echo 'count=0' > /home/travis/.android/repositories.cfg
# Download and setup Android SDK tools.
- wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
- mkdir android-sdk-tools
- unzip -qq sdk-tools-linux-4333796.zip -d android-sdk-tools
- export PATH=`pwd`/android-sdk-tools/tools/bin:$PATH
- mkdir -p $ANDROID_SDK_ROOT
# This will install the Android SDK 28 using the previously installed SDK tools.
- yes | sdkmanager --sdk_root=$ANDROID_SDK_ROOT "tools" "build-tools;28.0.3" "extras;android;m2repository" > /dev/null
- export PATH=${ANDROID_SDK_ROOT}/tools/bin:$PATH
# List sdkmanager packages
# (useful when checking the logs)
- sdkmanager --list
- git clone https://github.com/flutter/flutter.git -b beta --depth 1
# Add Flutter to the PATH environment variable.
- export PATH=`pwd`/flutter/bin:`pwd`/flutter/bin/cache/dart-sdk/bin:$PATH
- gem install coveralls-lcov
script:
- flutter doctor
- ./flutter/bin/flutter -v test test/*
- ./flutter/bin/flutter -v build apk --release
after_success:
- export AUTHOR_NAME=`git log -1 "$TRAVIS_COMMIT" --pretty="%aN"`
- export COMMITTER_NAME=`git log -1 "$TRAVIS_COMMIT" --pretty="%cN"`
- export COMMIT_SUBJECT=`git log -1 "$TRAVIS_COMMIT" --pretty="%s"`
- export COMMIT_MESSAGE=`git log -1 "$TRAVIS_COMMIT" --pretty="%b"`
# Upload to WeTransfer
- npm install --save @wetransfer/js-sdk
- export BUILD_OUTPUT_URL=`node ./.travis/utils/runUpload.js`
- coveralls-lcov coverage/lcov.info
# Post in chat
- ./.travis/40_postbuild.sh success $WEBHOOK_URL $BUILD_OUTPUT_URL
after_failure:
- ./.travis/40_postbuild.sh failure $WEBHOOK_URL
cache:
directories:
- $HOME/.pub-cache
- node_modules