-
開啟github項(xiàng)目的Travis CI
- 訪問https://travis-ci.org/,使用github賬號(hào)登錄
-
開啟github項(xiàng)目CI開關(guān)
- 訪問https://travis-ci.org/,使用github賬號(hào)登錄
-
配置自動(dòng)編譯腳本:.travis.yml
- ubuntu環(huán)境渗柿,安裝ruby康栈,gem,通過gem安裝Travis
$ gem install travis - 通過Travis的travis setup releases命令生成并配置.travis.yml(需要輸入github賬號(hào)和密碼)
在您的github項(xiàng)目工程根目錄下,執(zhí)行如下命令,就會(huì)自動(dòng)在根目錄生成一個(gè).travis.yml(中間會(huì)提示輸入github賬號(hào)密碼等信息):
$ travis setup releases
這里提供一份參考解釋:
language: android sudo: false android: components: - build-tools-25.0.2 - android-25 - extra-android-m2repository - extra-android-support # before install any dependencies required before_install: - chmod +x gradlew # run the build script script: - "./gradlew assembleRelease" # deploy stage base on tags deploy: provider: releases api_key: secure: eY1MPVqsgMQs0deLMeHH0hJrkdxgP8VauCc0AW3MEDy+89EkPQiWK+mQgnNVExGL54ajMurYAs3Y3evRZNNxeIUnhXiFLTLTg9sZlbT1lhK+/0wjQ0pQ6B2RbQLeNUq5dXrJbgLEWTpDgvABZomnYvDiUll7iJESX1Eo2NOZ/YKsjkPXILnm63P37UOrxBzOi45ZTZ5hd4L+E1oDq9k0fI0YEh7HKJYR5RfpFK3fvcNqyoAPG2cBlwGS33dfg4LeZN2Yxb+7cNMraEipj7ZjiiaYFXeGOgBz8xWWqcG+k8MjqpxOKJtlSqKjxFYpa0J97yFxxmmMtIEJX+lExc6XMbm9xeYKMqeJJLwSpmNFk6ggkk/vUsTzMy8+LdczyuQhBvCGMRt/IZRSxGIOznZD3KbmK5/Ceex3aXgin2pEhNA4LmwSLf+zMhniJNIZj3b2cF8u18LR1lGTNxTD03w170lDtX1fizmUQYFSiPJHeBiGp3W5HD9uTLbJfnh9tfJnOIhlKMN5C1Nl2HUyeV4KXCnkl4q73DtMuuNBn66JnFUhuzh0diFVpdAUK0KhwYTGew6DNz3GsnxFuPr/6MnrpUKKxSucDjprA2G0bfd7XbrVSw9BYR3wk5mU3ust5HXqh0erTIh6kRkin6NphPm+NLyQTvvbeXc/+M/zkXWAU9w= file: "app/build/outputs/apk/app-release-unsigned.apk" skip_cleanup: true on: tags: true repo: wangfuda/nebula
- ubuntu環(huán)境渗柿,安裝ruby康栈,gem,通過gem安裝Travis
以上配置主要實(shí)現(xiàn)了:
編譯前,先授權(quán)了gradlew的執(zhí)行權(quán)限
然后執(zhí)行編譯腳本:./gradlew assembleRelease
最后基于tag觸發(fā)纠拔,發(fā)布apk文件至github release中
以上配置中的具體含義可參考官方文檔
其中,api_key
中的secure
為travis setup releases
命令執(zhí)行中基于github賬號(hào)密碼自動(dòng)生成的泛啸。
注:其實(shí)Travis CI提供了多種賬號(hào)加密token的形式绿语,但是其他幾種均存在一些bug導(dǎo)致賬號(hào)校驗(yàn)有問題秃症,目前親測(cè)這種可行。
- 配置Bintray oss賬號(hào)并發(fā)布版本至Bintray
- Bintray上注冊(cè)賬號(hào)吕粹,或用github賬號(hào)登錄种柑,地址為:https://bintray.com/signup/oss,而非這個(gè)地址:https://bintray.com/signup (注意匹耕,開源項(xiàng)目必須要用OSS賬號(hào)聚请,否則會(huì)因鑒權(quán)問題導(dǎo)致無(wú)法上傳發(fā)布版本)
-
配置bintray.gradle(即發(fā)布版本的gradle腳本)
注:這里可以無(wú)需顯示提供賬號(hào),可使用Travis CI上的該項(xiàng)目的環(huán)境變量來(lái)設(shè)置
在gradle中基于Travis CI環(huán)境變量實(shí)現(xiàn)共用一套配置:
bintray {
user = project.hasProperty("BINTRAY_USER") ? BINTRAY_USER : System.getenv("BINTRAY_USER")
key = project.hasProperty("BINTRAY_KEY") ? BINTRAY_KEY : System.getenv("BINTRAY_KEY")
...
}