You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.5 KiB
95 lines
2.5 KiB
name: Android CI |
|
|
|
on: [push, pull_request] |
|
|
|
jobs: |
|
build: |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2 |
|
with: |
|
submodules: 'recursive' |
|
- name: Install GNU C++ compiler |
|
run: | |
|
sudo apt-get update |
|
sudo apt-get install -y g++ |
|
- name: Setup JDK 1.11 |
|
uses: actions/setup-java@v1 |
|
with: |
|
java-version: 1.11 |
|
- name: Setup Android SDK |
|
uses: maxim-lobanov/setup-android-tools@v1 |
|
with: |
|
packages: | |
|
build-tools;31.0.0 |
|
platforms;android-31 |
|
ndk;21.4.7075529 |
|
cmake;3.18.1 |
|
cache: true |
|
- name: Build required modules |
|
run: | |
|
export ANDROID_SDK_ROOT=$ANDROID_HOME |
|
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/21.4.7075529 |
|
pushd app/jni |
|
./build_boost.sh |
|
./build_openssl.sh |
|
./build_miniupnpc.sh |
|
popd |
|
- name: Build with Gradle |
|
run: ./gradlew --no-daemon assembleDebug |
|
- name: Upload artifacts |
|
uses: actions/upload-artifact@v2 |
|
with: |
|
name: android-apks.zip |
|
path: app/build/outputs/apk/debug/*.apk |
|
|
|
build-binary: |
|
runs-on: ubuntu-latest |
|
steps: |
|
- uses: actions/checkout@v2 |
|
with: |
|
submodules: 'recursive' |
|
- name: Install GNU C++ compiler |
|
run: | |
|
sudo apt-get update |
|
sudo apt-get install -y g++ |
|
- name: Setup JDK 1.11 |
|
uses: actions/setup-java@v1 |
|
with: |
|
java-version: 1.11 |
|
- name: Setup Android SDK |
|
uses: maxim-lobanov/setup-android-tools@v1 |
|
with: |
|
packages: | |
|
ndk;21.4.7075529 |
|
cmake;3.18.1 |
|
cache: true |
|
- name: Build required modules |
|
run: | |
|
export ANDROID_SDK_ROOT=$ANDROID_HOME |
|
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/21.4.7075529 |
|
pushd binary/jni |
|
./build_boost.sh |
|
./build_openssl.sh |
|
./build_miniupnpc.sh |
|
popd |
|
- name: Build binaries with NDK |
|
run: | |
|
pushd binary/jni |
|
$ANDROID_NDK_HOME/ndk-build -j2 NDK_MODULE_PATH=$PWD |
|
popd |
|
- name: Create package with built binaries |
|
run: | |
|
pushd contrib/binary_pack |
|
./build-archive |
|
popd |
|
- name: Upload binaries archive |
|
uses: actions/upload-artifact@v2 |
|
with: |
|
name: android-binaries.zip |
|
path: binary/libs/* |
|
- name: Upload binaries package |
|
uses: actions/upload-artifact@v2 |
|
with: |
|
name: android-binaries-pack.zip |
|
path: contrib/binary_pack/i2pd_*_android_binary.zip
|
|
|