Travis CI deployment to AWS and Github releases (#114)
This commit is contained in:
parent
766290a2a3
commit
5c1e542dab
3 changed files with 80 additions and 41 deletions
55
.travis.yml
55
.travis.yml
|
@ -2,28 +2,36 @@ sudo: required
|
||||||
dist: trusty
|
dist: trusty
|
||||||
language: python
|
language: python
|
||||||
python:
|
python:
|
||||||
- "2.7"
|
- '2.7'
|
||||||
install:
|
install:
|
||||||
- deactivate
|
- deactivate
|
||||||
- export PATH=/usr/bin:$PATH
|
- export PATH=/usr/bin:$PATH
|
||||||
- sudo dpkg --add-architecture i386
|
- sudo dpkg --add-architecture i386
|
||||||
- sudo apt-get -qq update
|
- sudo apt-get -qq update
|
||||||
- sudo apt-get -qq install build-essential ccache git libncurses5:i386 libstdc++6:i386 libgtk2.0-0:i386 libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 libidn11:i386 python2.7 python2.7-dev openjdk-8-jdk unzip zlib1g-dev zlib1g:i386 m4 libc6-dev-i386 npm nodejs
|
- sudo apt-get -qq install build-essential ccache git libncurses5:i386 libstdc++6:i386
|
||||||
|
libgtk2.0-0:i386 libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 libidn11:i386 python2.7
|
||||||
|
python2.7-dev openjdk-8-jdk unzip zlib1g-dev zlib1g:i386 m4 libc6-dev-i386
|
||||||
- sudo pip install --upgrade cython==0.25.2 pip setuptools
|
- sudo pip install --upgrade cython==0.25.2 pip setuptools
|
||||||
- git clone https://github.com/akinwale/buildozer.git
|
- wget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz
|
||||||
|
- tar -xf node-v8.11.1-linux-x64.tar.xz
|
||||||
|
- sudo ln -s ~/node-v8.11.1-linux-x64/bin/node /usr/bin/node
|
||||||
|
- sudo ln -s ~/node-v8.11.1-linux-x64/bin/npm /usr/bin/npm
|
||||||
|
- git clone https://github.com/lbryio/buildozer.git
|
||||||
- cd app
|
- cd app
|
||||||
- npm config set registry="http://registry.npmjs.org/"
|
- npm config set registry="http://registry.npmjs.org/"
|
||||||
- npm install --silent --save react@16.2.0 react-native@0.52.0 react-native-video@2.0.0
|
- npm install
|
||||||
- cd ..
|
- cd ..
|
||||||
- cd buildozer
|
- cd buildozer
|
||||||
- sudo python setup.py install
|
- sudo python setup.py install
|
||||||
- cd ..
|
- cd ..
|
||||||
- mv buildozer.spec.travis buildozer.spec
|
- mv buildozer.spec.travis buildozer.spec
|
||||||
- mkdir -p cd ~/.buildozer/android/platform/
|
- mkdir -p cd ~/.buildozer/android/platform/
|
||||||
- wget 'https://dl.google.com/android/repository/android-ndk-r13b-linux-x86_64.zip' -P ~/.buildozer/android/platform/
|
- wget 'https://dl.google.com/android/repository/android-ndk-r13b-linux-x86_64.zip'
|
||||||
|
-P ~/.buildozer/android/platform/
|
||||||
- wget 'https://dl.google.com/android/android-sdk_r23-linux.tgz' -P ~/.buildozer/android/platform/
|
- wget 'https://dl.google.com/android/android-sdk_r23-linux.tgz' -P ~/.buildozer/android/platform/
|
||||||
- wget 'https://dl.google.com/android/repository/android-23_r02.zip' -P ~/.buildozer/android/platform/
|
- wget 'https://dl.google.com/android/repository/android-23_r02.zip' -P ~/.buildozer/android/platform/
|
||||||
- wget 'https://dl.google.com/android/repository/build-tools_r26.0.1-linux.zip' -P ~/.buildozer/android/platform/
|
- wget 'https://dl.google.com/android/repository/build-tools_r26.0.1-linux.zip' -P
|
||||||
|
~/.buildozer/android/platform/
|
||||||
- unzip -qq ~/.buildozer/android/platform/android-ndk-r13b-linux-x86_64.zip -d ~/.buildozer/android/platform/
|
- unzip -qq ~/.buildozer/android/platform/android-ndk-r13b-linux-x86_64.zip -d ~/.buildozer/android/platform/
|
||||||
- tar -xf ~/.buildozer/android/platform/android-sdk_r23-linux.tgz -C ~/.buildozer/android/platform/
|
- tar -xf ~/.buildozer/android/platform/android-sdk_r23-linux.tgz -C ~/.buildozer/android/platform/
|
||||||
- mv ~/.buildozer/android/platform/android-sdk-linux ~/.buildozer/android/platform/android-sdk-23
|
- mv ~/.buildozer/android/platform/android-sdk-linux ~/.buildozer/android/platform/android-sdk-23
|
||||||
|
@ -35,5 +43,36 @@ install:
|
||||||
- mkdir -p ~/.buildozer/android/platform/android-sdk-23/licenses
|
- mkdir -p ~/.buildozer/android/platform/android-sdk-23/licenses
|
||||||
- echo $'\nd56f5187479451eabf01fb78af6dfcb131a6481e' > ~/.buildozer/android/platform/android-sdk-23/licenses/android-sdk-license
|
- echo $'\nd56f5187479451eabf01fb78af6dfcb131a6481e' > ~/.buildozer/android/platform/android-sdk-23/licenses/android-sdk-license
|
||||||
script:
|
script:
|
||||||
- ./build.sh | grep -Fv -e 'working:' -e 'copy' --line-buffered
|
- "./release.sh | grep -Fv -e 'working:' -e 'copy' -e 'Compiling' --line-buffered"
|
||||||
- cp bin/*.apk /dev/null
|
before_deploy:
|
||||||
|
- cd bin
|
||||||
|
- export BUILD_VERSION=$(cat ../src/main/python/main.py | grep --color=never -oP '([0-9]+\.?)+')
|
||||||
|
- cp browser-$BUILD_VERSION-release.apk latest.apk
|
||||||
|
deploy:
|
||||||
|
- provider: releases
|
||||||
|
api_key:
|
||||||
|
secure: m+FYX7vHZoiLSHHiJ2d3y8Fm4qSRoIVjEei+5BV17awiow/U8UKvy/5J1n8qfBdq+dpst5z58pTHCKWPbJz84C3z/posJ5mwEcOAaD/kxSAMHbtlaPW90pRWHUu3aW86UM/ggqtljE9Qz8KS/9a0xNUDfcXLkLgxuxgwodMcacEulAAc9TIOCUeR3IFI+KN0ptTCVahCu2JN8DCHKomaR+yKZHdo/9v9XCAcvmImSDu9nUDLH3+A7xQeRpPJqSspk1dadgdXP76kU8t3OKsYuM7DS5AoKvMIc9lZot4UYYKAx7/zavbzeEmqnyskULgsmV8/UDI1AV9U7uFBdrR6dSjISA1k6EHnCgqzasF+lp0hz5iE/0yPxlE9Z1kLW9gZgxSJtjr6Kv2uqAjHYYmpkjtTwHPwBugRM7PWMTxHNcPwkIHpBSRkXjpyDjkWd/LY4X866Y1g2BdIhbGshjy/9Fb2vnYxNZW6drLHn+wWeHJ41Vfgtg1cn01yZGJqgIkcTkhzNL6Bi++y8EBJXDr4L870s336SpbqRuIrO/C16ZFB+XnOg4Ty50Fk5zkbySMHII58iWqSyDYWNvhqo9zU9jn1XQQeok12129Y4t9TUOcJRbxhQ+511lCmVcFIkWHsXDK2QSZ7TeMK5GQUA8OvcNe+WLCJaQ/YD7OZvwlPTvc=
|
||||||
|
file_glob: true
|
||||||
|
file: browser-*-release.apk
|
||||||
|
overwrite: true
|
||||||
|
skip_cleanup: true
|
||||||
|
on:
|
||||||
|
tags: true
|
||||||
|
- provider: s3
|
||||||
|
access_key_id:
|
||||||
|
secure: qEZZ73DWBn9+M2pS4VwsyX8YZjZOENIMP/eoU1A9Vbn155oZpbUaJ7k+4cAXqmBm0WBMKZDqpzCRSGehLAxHFH5rjkj9gLSgd8fY9cveABHkl50HeuxxNsQM+ytk9sCtP8bWOqf7rT/iCgM1soyF2pYmfHM3tU9l0fWK8oZ7pFRIg91hXxUvhvYY2u6B9D1NqSN9T3xtrwEkVjvmkmyKMLCtoIdyB7QdeQciFdGFhZC9DYJVRLxa3BlzZ1T8Qv4MCyIxPjxIugNvVR64VgGjdBdq0BEIyoRqbeIvtqQjlnne4DfJFeCmbDrSva1wDP1UyFoxsRhiWQ/jXXgIyN2CisI6QRD0J+a2LgmbmtkUzhRMuVQJmBrIauulOzcowwRV2J4TtUaAJK9iSHT9D3RLzpazCOnjvJZV9CK5w252Vs5eHnisCSCQk8Ozox96Sg6XW580NEXfkYoGzXLSGiy9zrZs813blUjssEY+jIQmJEby80C3guK7/G4lzthv57psqBWcYd0tFR+vTestS+EFlC02ToUngJhW7I7lPA2G2yrJ5319jFxUSniijb1n72TQthnbqTBahepvKvuG1iWZnCKxS5sWkutFoqEcpQyhXdf7QdR/VrOr8N5xrhK1B8dCYZM6h8eMZbBvOLH49+N6L9jiJz5x+Lk32wcssv1oOgI=
|
||||||
|
secret_access_key:
|
||||||
|
secure: lPygaaJdjFgWY4GcXUXC4Oc5op/TE85Md8lX2bzW19058lbcqYSdM0WySQCxoU/4rlM4Q0N8du0qQ3kZXDpP9XSqvFTVnTGTuB4yghUR1yXcpt6u3JOeOX+YAc3wyQ/pmod6VGO0n8pm8hBVsSFXufdBTjD2W+tNrDoa8RYnlWrt7BbICGltB7PcqYh1Qw6S1wDyZt8I4B5JHDhyJmX6FT5KfOb5cJyynpxlKUstUfy1rh81KuGkEcuEVOLg1s7HE1/IUkVIgezAuCrMHjc86qbNcHULJMFCVYntvvs07+tctrPxA/cfS24WkW7smyij+gdZAZWNNgkIDCuwqpex1v1nKn56mC8xXyUl4CnSCuubQtqUBzTmd4T5sF7trTtpVr9NInwy+4mUoCpz2UKZekTjZkqpzCAuC/cBVWE1/k3wsNat6dGyc9QnKXBqLVhuwYsCOteqLW50ToMMMW0ccDV6FXodwZmrunGd5wIX+UgZkf4l32vzKUxHtIupfYbsjylcPc3VO0OzMMKP/3sYLAN6QntVDFc30k1uqqpgJN4t0nV7vvjMI+b0Qr+o7GzUV2d+QulQXOySJgB2pH0kV1EoPAJ8KbqDOy8KgCJl0YIbOaz14+SiRQhotJ2hrLdtsvyVYXMX+d/CKHJSWa2MQq+jD7lMCwVaGg82PFN1gI4=
|
||||||
|
bucket: "build.lbry.io"
|
||||||
|
upload-dir: android
|
||||||
|
region: us-east-1
|
||||||
|
overwrite: true
|
||||||
|
skip_cleanup: true
|
||||||
|
on:
|
||||||
|
tags: true
|
||||||
|
env:
|
||||||
|
global:
|
||||||
|
- secure: GS3Cp1QXiX8UPye3kdk2A2f3iFRr02sHKpY+RE+Zvx3Q7GDmhDuepHKzx6Hq5Os5fZN9Y/Bdds+XH+vLIRtT6XsWR7AONPhSifVY3XB5/2F+lDcZ538W8P8GZvXejpY4VecMUWHoWbuyt0s3PpaGXZJcHp8ir+CUJ0NUmU3I9w449pqj9/de2LHtG3qKH1lG0Xz58iOC0mmEeH451cQv3dDw851ihA4ak9vCTV1KKuMJUcv+2u6PxXGVX0mrJLEssjL6ze6G5iZUB4PM1vUpe3HqcVw8CSOa8O79BQxoB00qyA3WD+LpZDPpI0wh6gmBsR/2nCFyMJndJr3CjyB6lHdK7PgBoK0CJjszKawiZqg74O9DOjzTJTO2v9bnkfPrNxu4/3D/tbDg+whY8k5oV1sgDue9KAo/2aEEO0LGlKP4W3Qqt/lzRKsfpMVrMTdCNKJ8rG/wUFWw8ehOCmAsJaQ1saDOZDMNPLLuYpxFgmXFqWV5ThbUHgEJVj+G7qt6CMEussKvuZJoJZx24Pdk5Prr7ENzTyPmE5gk4b8WNfVNleOEC09xu5tFk2yOdzF1dawKsa1Mog6gImirTQ/INC/3BANdKoG9/cLJEIt9boJaFDXE1dpqoLVzoez9znHKOGSAU/1PaH3thjVnbUyO5z24PpPZ12zM3+3P8DbI454=
|
||||||
|
before_install:
|
||||||
|
- openssl aes-256-cbc -K $encrypted_b4c9b905b12e_key -iv $encrypted_b4c9b905b12e_iv
|
||||||
|
-in lbry-android.keystore.enc -out lbry-android.keystore -d
|
||||||
|
|
BIN
lbry-android.keystore.enc
Normal file
BIN
lbry-android.keystore.enc
Normal file
Binary file not shown.
|
@ -6,11 +6,11 @@ version=$(cat src/main/python/main.py | grep --color=never -oP '([0-9]+\.?)+')
|
||||||
buildozer android release
|
buildozer android release
|
||||||
jarsigner -verbose -sigalg SHA1withRSA \
|
jarsigner -verbose -sigalg SHA1withRSA \
|
||||||
-digestalg SHA1 \
|
-digestalg SHA1 \
|
||||||
-keystore ~/.keystores/lbry-android.keystore \
|
-keystore lbry-android.keystore \
|
||||||
-storepass $KEYSTORE_PASSWORD \
|
-storepass $KEYSTORE_PASSWORD \
|
||||||
bin/browser-$version-release-unsigned.apk lbry-android \
|
bin/browser-$version-release-unsigned.apk lbry-android \
|
||||||
&& mv bin/browser-$version-release-unsigned.apk bin/browser-$version-release-signed.apk
|
&& mv bin/browser-$version-release-unsigned.apk bin/browser-$version-release-signed.apk
|
||||||
~/Dev/SDKs/android/build-tools/26.0.2/zipalign -v 4 \
|
~/.buildozer/android/platform/android-sdk-23/build-tools/26.0.1/zipalign -v 4 \
|
||||||
bin/browser-$version-release-signed.apk bin/browser-$version-release.apk \
|
bin/browser-$version-release-signed.apk bin/browser-$version-release.apk \
|
||||||
&& rm bin/browser-$version-release-signed.apk
|
&& rm bin/browser-$version-release-signed.apk
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue