-
Notifications
You must be signed in to change notification settings - Fork 205
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
190 changed files
with
10,867 additions
and
585 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,62 +1,131 @@ | ||
sudo: false | ||
language: android | ||
|
||
android: | ||
components: | ||
- tools | ||
- platform-tools | ||
- build-tools-27.0.0 | ||
- android-16 | ||
- android-19 | ||
- android-21 | ||
- android-27 | ||
- extra-android-m2repository | ||
- sys-img-armeabi-v7a-android-16 | ||
- sys-img-armeabi-v7a-android-19 | ||
- sys-img-armeabi-v7a-android-21 | ||
|
||
before_cache: | ||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock | ||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/ | ||
cache: | ||
directories: | ||
- $HOME/.gradle/caches/ | ||
- $HOME/.gradle/wrapper/ | ||
- $HOME/.android/build-cache | ||
jdk: | ||
- oraclejdk8 | ||
|
||
env: | ||
matrix: | ||
- ANDROID_TARGET=android-16 ANDROID_ABI=armeabi-v7a | ||
- ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a | ||
- ANDROID_TARGET=android-21 ANDROID_ABI=armeabi-v7a | ||
global: | ||
- ADB_INSTALL_TIMEOUT=5 # increase from default of 2 mins | ||
- ADB_INSTALL_TIMEOUT=4 | ||
- ANDROID_EMULATOR=test # default emulator name (used in tests) | ||
- ANDROID_ABI=armeabi-v7a | ||
- ANDROID_TARGET=android-21 | ||
- NDK_VERSION=r16b | ||
- EMULATOR_FLAVOR=default | ||
- ANDROID_HOME=/usr/local/android-sdk | ||
- TOOLS=${ANDROID_HOME}/tools | ||
# Set the path to ensure that the right version of `emulator` (among | ||
# other things) is called! | ||
- PATH=${ANDROID_HOME}:${ANDROID_HOME}/emulator:${TOOLS}:${TOOLS}/bin:${ANDROID_HOME}/platform-tools:${PATH} | ||
- QEMU_AUDIO_DRV=none # Prevents some fatal audio issues on API 24+ | ||
- MAZE_WAIT_TIME=18 | ||
- MAZE_TAGS="not @skip" | ||
|
||
android: | ||
components: | ||
- tools | ||
# See https://github.com/travis-ci/travis-ci/issues/8874 | ||
- android-27 | ||
- extra-google-m2repository | ||
|
||
# see https://github.com/travis-ci/travis-ci/issues/8874 | ||
before_install: | ||
- yes | sdkmanager "platforms;android-27" | ||
- bundle install >/dev/null | ||
- ./scripts/install-ndk.sh | ||
- env | ||
|
||
install: | ||
# Installs tools a second time to get newer versions. Without this, | ||
# you get old packages and there's no avdmanager. It doesn't work to | ||
# put it in the components list a second time, though it used to work | ||
# and its documented on Travis as how you get newer packages. | ||
- echo y | sdkmanager "platform-tools" >/dev/null | ||
- echo y | sdkmanager "tools" >/dev/null | ||
- echo y | sdkmanager "build-tools;27.0.0" >/dev/null | ||
- echo y | sdkmanager "platforms;$ANDROID_TARGET" >/dev/null | ||
- echo y | sdkmanager "system-images;$ANDROID_TARGET;$EMULATOR_FLAVOR;$ANDROID_ABI" >/dev/null | ||
- echo no | avdmanager create avd --force -n test -k "system-images;$ANDROID_TARGET;$EMULATOR_FLAVOR;$ANDROID_ABI" -c 10M | ||
|
||
before_script: | ||
# Create and start emulator | ||
- android list targets | ||
- jdk_switcher use oraclejdk8 | ||
- echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI | ||
- emulator -avd test -no-skin -no-audio -no-window & | ||
- adb wait-for-device | ||
- while [[ `adb shell pm path android` == 'Error'* ]]; do sleep 2; done | ||
- adb shell input keyevent 82 & | ||
- emulator -avd test $EMULATOR_FLAGS -engine classic -no-window -camera-back none -camera-front none -selinux permissive & | ||
- android-wait-for-emulator | ||
- adb shell input keyevent 82 & | ||
|
||
script: | ||
- ./gradlew lint checkstyle createDebugCoverageReport coveralls | ||
- cd examples/sdk-app-example && ../../gradlew lint checkstyle connectedCheck | ||
- bundle exec bugsnag-maze-runner --format progress --color --tags "$MAZE_TAGS" $MAZE_ARGS features/native*.feature | ||
|
||
sudo: false | ||
jobs: | ||
include: | ||
- stage: lint | ||
script: ./gradlew lint checkstyle | ||
# Run SDK unit tests against API 16: | ||
- stage: unit tests | ||
script: ./gradlew sdk:createDebugCoverageReport coveralls | ||
env: | ||
- ANDROID_TARGET=android-16 | ||
# Run NDK and SDK unit tests against different NDK revisions: | ||
- stage: unit tests | ||
script: ./gradlew createDebugCoverageReport coveralls || (adb logcat -v brief -d '*:S BugsnagNDKTest' && false) | ||
env: NDK_VERSION=r12b | ||
- stage: unit tests | ||
script: ./gradlew createDebugCoverageReport coveralls || (adb logcat -v brief -d '*:S BugsnagNDKTest' && false) | ||
env: NDK_VERSION=r14b | ||
- stage: unit tests | ||
script: ./gradlew createDebugCoverageReport coveralls || (adb logcat -v brief -d '*:S BugsnagNDKTest' && false) | ||
env: NDK_VERSION=r16b | ||
# Emulators for API 22,23,25 just don't boot ¯\_(ツ)_/¯ | ||
# Emulators for API 14,15,26 hang regularly | ||
# There are no images for API 20 | ||
# There's no emulators for x86 because we can't run x86 on Travis | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-24 | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-21 | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-19 | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-18 | ||
- EMULATOR_FLAGS=-no-audio | ||
- MAZE_ARGS=--verbose | ||
- MAZE_WAIT_TIME=20 | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-17 | ||
- EMULATOR_FLAGS=-no-audio | ||
- MAZE_TAGS="not @skip_below_api18" | ||
- MAZE_WAIT_TIME=30 | ||
- MAZE_ARGS=--verbose | ||
- stage: end-to-end tests | ||
env: | ||
- ANDROID_TARGET=android-16 | ||
- EMULATOR_FLAGS=-no-audio | ||
- MAZE_TAGS="not @skip_below_api18" | ||
- MAZE_ARGS=--verbose | ||
- stage: deploy | ||
script: skip | ||
before_deploy: ./gradlew javadoc | ||
deploy: | ||
provider: pages | ||
local_dir: sdk/docs # only include the contents of the docs dir | ||
skip_cleanup: true | ||
github_token: $GITHUB_TOKEN # Set in travis-ci.com dashboard | ||
|
||
before_deploy: ./gradlew javadoc | ||
before_cache: | ||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock | ||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/ | ||
|
||
cache: | ||
directories: | ||
- $HOME/.gradle/caches/ | ||
- $HOME/.gradle/wrapper/ | ||
- $HOME/.android/build-cache | ||
|
||
deploy: | ||
provider: pages | ||
local_dir: sdk/docs # only include the contents of the docs dir | ||
skip_cleanup: true | ||
github_token: $GITHUB_TOKEN # Set in travis-ci.org dashboard | ||
on: | ||
tags: true # only deploy when tag is applied to commit | ||
stages: | ||
- lint | ||
- unit tests | ||
- end-to-end tests | ||
- name: deploy | ||
if: tag IS present |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
source "https://rubygems.org" | ||
|
||
gem 'bugsnag-maze-runner', git: 'git@github.com:bugsnag/maze-runner' | ||
gem 'bugsnag-maze-runner', git: 'https://github.com/bugsnag/maze-runner' | ||
gem 'pry' |
Oops, something went wrong.