Использование Travis CI с Android
Я смотрел на Travis CI docs для Android, поэтому я могу узнать, как начать использовать Travis для моей библиотеки Android. Однако я не понимаю многого из того, что говорится в документации...
пока что я понял это:
language: android # this means the project will be built in an Android environment
android:
components:
- tools # will be built with latest version of Android SDK tools
- platform-tools # ''
- build-tools-23.0.1 # build tools version of my project
- android-23 # Android SDK version of my project
документы Travis CI также показывают дополнительные компоненты, которые можно использовать:
# Additional components
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
- addon-google_apis-google-19
и оно дает более полный список здесь.
но что это 'дополнительные компоненты' do / mean? я предполагаю, что, возможно,extra-android-support
компонент означает, что проект будет построен с библиотекой поддержки Android, но как насчет других?
Я посмотрел Трэвис тесты для Gradle, но я видел, как другие проекты используют script: ./gradlew check
, script: ./gradlew clean build check
, script: "./gradlew build"
, и некоторые без script
на всех. что все это значит?
1 ответов
С .travis.yml
файл, вы настраиваете машину для сборки и запуска кода. В этом файле необходимо указать все необходимые компоненты.
документ показывает все компоненты SDK, которые уже доступны (предустановлены). Вам не нужно указывать их в свой .Трэвис.файл yml, если вы не хотите принудительно переустановить этот компонент.
вместо этого вы должны указать компоненты, которые не предустановлены.
Например, есть только the build-tools 21.1.1
в списке. Это было решение команды, потому что есть более частые обновления для этого компонента.
что означают эти "дополнительные компоненты"?
- extra-google-google_play_services
- extra-google-m2repository
- extra-android-m2repository
это репозитории библиотек поддержки (те же, которые вы должны обновить с помощью диспетчера SDK), из которых gradle загружает библиотеки поддержки, добавленные в блок зависимостей вашего .
чтобы получить список доступных точных имена и описания компонентов выполните команду android list sdk --no-ui --all --extended
.
Вы получите что-то вроде:
# Check Android SDK tools: http://developer.android.com/tools/sdk/tools-notes.html
# Check Android SDK Platform-tools: http://developer.android.com/tools/revisions/platforms.html
tools
platform-tools
# Check BuildTools: http://developer.android.com/tools/revisions/build-tools.html
build-tools-23.0.1
# The API to be used to compile
# Check APIs: http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels
android-23
android-22
android-21
android-20
android-19
android-18
android-17
android-16
....
# The system images if you need to run emulator during your tests
sys-img-armeabi-v7a-android-23
sys-img-x86-android-23
....
# Google repository from which download the dependencies
# Check extras: http://developer.android.com/sdk/installing/adding-packages.html#GetSupportLib
extra-android-m2repository
extra-android-support
# Check more extras: http://developer.android.com/sdk/installing/adding-packages.html#GetGoogle
extra-google-m2repository
extra-google-google_play_services
extra-google-admob_ads_sdk
extra-google-analytics_sdk_v2
extra-google-gcm
extra-google-google_play_services_froyo
.....
# Source file
source-23
source-22
source-21
...
С .travis.yml
вы должны сказать Трэвису, как проверить, если ваш сборка прошла успешно. С script
block вы указываете, какие команды использовать для проверки сборки.
Если ваш проект имеет build.gradle
файл в корне репозитория, Gradle будет использоваться для его создания. Этого может быть достаточно для вас, это зависит от вашего проекта.
по умолчанию команда, используемая с gradle:
./gradlew build connectedCheck
но вы можете переопределить его specyfing блок сценария.
Подробнее здесь.
если вы хотите увидеть вывод в travis-ci, вы можете проверить этой.