|
| 1 | +name: Maven DEBUG Package CI |
| 2 | + |
| 3 | +on: |
| 4 | + push: |
| 5 | + pull_request: |
| 6 | + release: |
| 7 | + types: [published, edited] |
| 8 | + workflow_dispatch: |
| 9 | + inputs: |
| 10 | + version: |
| 11 | + description: dummy |
| 12 | + default: dummy |
| 13 | + |
| 14 | +jobs: |
| 15 | + build-debug: |
| 16 | + runs-on: ubuntu-20.04 |
| 17 | + permissions: |
| 18 | + contents: write |
| 19 | + steps: |
| 20 | + - name: freespace_1 |
| 21 | + run: | |
| 22 | + df -h |
| 23 | +
|
| 24 | +# - name: Maximize build space |
| 25 | +# uses: easimon/maximize-build-space@master |
| 26 | +# with: |
| 27 | +# root-reserve-mb: 512 |
| 28 | +# swap-size-mb: 1024 |
| 29 | +# remove-dotnet: 'true' |
| 30 | + |
| 31 | + - name: freespace_2 |
| 32 | + run: | |
| 33 | + df -h |
| 34 | +
|
| 35 | + - name: Checkout |
| 36 | + uses: actions/checkout@v4 |
| 37 | + |
| 38 | + - name: install basic android SDK |
| 39 | + run: | |
| 40 | + sudo apt update && \ |
| 41 | + sudo DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \ |
| 42 | + android-sdk \ |
| 43 | + lsb-release \ |
| 44 | + clang \ |
| 45 | + cmake \ |
| 46 | + libconfig-dev \ |
| 47 | + libgtest-dev \ |
| 48 | + ninja-build \ |
| 49 | + pkg-config \ |
| 50 | + zip grep file ca-certificates autotools-dev autoconf automake \ |
| 51 | + git bc wget rsync cmake make pkg-config libtool \ |
| 52 | + ssh gzip tar \ |
| 53 | + coreutils \ |
| 54 | + curl \ |
| 55 | + libncurses5 \ |
| 56 | + wget \ |
| 57 | + git \ |
| 58 | + curl \ |
| 59 | + software-properties-common \ |
| 60 | + unzip \ |
| 61 | + zip \ |
| 62 | + automake \ |
| 63 | + autotools-dev \ |
| 64 | + build-essential \ |
| 65 | + check \ |
| 66 | + checkinstall \ |
| 67 | + libtool \ |
| 68 | + libfreetype6-dev \ |
| 69 | + fontconfig-config \ |
| 70 | + libfontconfig1-dev \ |
| 71 | + pkg-config \ |
| 72 | + openjdk-8-jdk |
| 73 | +
|
| 74 | + - name: Install NDK |
| 75 | + run: | |
| 76 | + echo ${ANDROID_SDK_ROOT} |
| 77 | + # find / -name sdkmanager 2>/dev/null |
| 78 | + ls -al /usr/local/lib/android/sdk/cmdline-tools/latest/bin/sdkmanager |
| 79 | + echo "y" | sudo /usr/local/lib/android/sdk/cmdline-tools/latest/bin/sdkmanager --install "ndk;21.0.6113669" --sdk_root=${ANDROID_SDK_ROOT} |
| 80 | + echo "y" | sudo /usr/local/lib/android/sdk/cmdline-tools/latest/bin/sdkmanager --install "ndk;20.1.5948944" --sdk_root=${ANDROID_SDK_ROOT} |
| 81 | + # sdkmanager --update |
| 82 | + # sdkmanager 'cmdline-tools;latest' |
| 83 | + # sdkmanager --uninstall 'cmdline-tools;1.0' |
| 84 | +
|
| 85 | + - name: pkgs |
| 86 | + run: | |
| 87 | + sudo apt update && \ |
| 88 | + sudo DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \ |
| 89 | + clang \ |
| 90 | + cmake \ |
| 91 | + libconfig-dev \ |
| 92 | + libgtest-dev \ |
| 93 | + ninja-build \ |
| 94 | + pkg-config \ |
| 95 | + zip grep file ca-certificates autotools-dev autoconf automake \ |
| 96 | + git bc wget rsync cmake make pkg-config libtool \ |
| 97 | + ssh gzip tar \ |
| 98 | + coreutils \ |
| 99 | + libncurses5 |
| 100 | +
|
| 101 | + - name: use mnt dir |
| 102 | + run: | |
| 103 | + sudo mkdir -p /root/work/ |
| 104 | + sudo mv -v /root/work /mnt/ |
| 105 | + sudo ls -al /mnt |
| 106 | + sudo bash -c "cd /root/ ; ln -s /mnt/work; ls -al" |
| 107 | +
|
| 108 | + - name: move_source |
| 109 | + run: | |
| 110 | + sudo mkdir -p /root/work/jni-c-toxcore/ |
| 111 | + sudo cp -av /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/jni-c-toxcore/* /root/work/jni-c-toxcore/ |
| 112 | + sudo mkdir -p /root/work/android-refimpl-app/ |
| 113 | + sudo cp -av /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/android-refimpl-app/* /root/work/android-refimpl-app/ |
| 114 | + # sudo git clone https://github.com/zoff99/ToxAndroidRefImpl /root/work/trifa_master_src |
| 115 | + # sudo mkdir -p /root/work/android-refimpl-app/app/ |
| 116 | + # sudo cp -av /root/work/trifa_master_src/android-refimpl-app/app/* /root/work/android-refimpl-app/app/ |
| 117 | +
|
| 118 | + - name: check java versions installed |
| 119 | + run: | |
| 120 | + echo $JAVA_HOME||echo "NO ERR" |
| 121 | + sudo rm -Rf /usr/lib/jvm/temurin-11-jdk-amd64 |
| 122 | + sudo rm -Rf /usr/bin/java /bin/java |
| 123 | + dpkg -l|grep -i jdk |
| 124 | + dpkg -l|grep -i java |
| 125 | +
|
| 126 | + - name: set up JDK 1.8 |
| 127 | + uses: actions/setup-java@v1 |
| 128 | + with: |
| 129 | + java-version: 1.8 |
| 130 | +# distribution: 'temurin' |
| 131 | + |
| 132 | + - name: check java versions installed |
| 133 | + run: | |
| 134 | + echo $JAVA_HOME||echo "NO ERR" |
| 135 | + type -a java |
| 136 | +
|
| 137 | + - name: freespace_3 |
| 138 | + run: | |
| 139 | + df -h |
| 140 | +
|
| 141 | + - name: build_maven_deps |
| 142 | + run: | |
| 143 | + export JAVA_HOME=/opt/hostedtoolcache/jdk/8.0.422/x64 |
| 144 | + java -version |
| 145 | + sudo mkdir -p ~/work/deploy |
| 146 | + sudo mkdir -p ~/.android/ |
| 147 | + sudo touch ~/.android/debug.keystore |
| 148 | + sudo mkdir -p build_dir |
| 149 | + sudo mkdir -p /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/build_dir |
| 150 | + pwd |
| 151 | + ls -al |
| 152 | + sudo bash -c "export JAVA_HOME=/opt/hostedtoolcache/jdk/8.0.422/x64;cd /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/build_dir/;../circle_scripts/deps.sh debugbuild" |
| 153 | +
|
| 154 | + - name: build_maven_pkg |
| 155 | + run: | |
| 156 | + pwd |
| 157 | + export JAVA_HOME=/opt/hostedtoolcache/jdk/8.0.422/x64 |
| 158 | + sudo bash -c "cp -av /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/stub* /root/work/" |
| 159 | + sudo bash -c "export JAVA_HOME=/opt/hostedtoolcache/jdk/8.0.422/x64;cd /home/runner/work/ToxAndroidRefImpl/ToxAndroidRefImpl/build_dir/;../circle_scripts/trifa.sh '../'" |
| 160 | +
|
| 161 | + - name: acls_maven_pkg |
| 162 | + run: | |
| 163 | + sudo chmod -R a+rx /root/work/artefacts/ |
| 164 | + sudo ls -al /root/work/artefacts/ |
| 165 | + sudo bash -c 'cp -av /root/work/artefacts/*.zip /home/runner/work/' |
| 166 | +
|
| 167 | + - name: get arm64 lib only |
| 168 | + run: | |
| 169 | + mkdir unpack |
| 170 | + cd unpack/ |
| 171 | + unzip ../local_maven_trifa_debug_jni.zip |
| 172 | + unzip local_maven.zip |
| 173 | + unzip root/.m2/repository/com/zoffcc/applications/trifajni/trifa-jni-lib/1.0.156/trifa-jni-lib-*.aar |
| 174 | + ls -hal jni/arm64-v8a/libjni-c-toxcore.so |
| 175 | + cp -v jni/arm64-v8a/libjni-c-toxcore.so ../libjni-c-toxcore.so___arm64_debug |
| 176 | +
|
| 177 | + - name: rename file to debug |
| 178 | + run: | |
| 179 | + mv -v local_maven_trifa_jni.zip local_maven_trifa_debug_jni.zip |
| 180 | +
|
| 181 | + - name: Upload to nightly release |
| 182 | + uses: ncipollo/release-action@v1 |
| 183 | + if: github.ref == 'refs/heads/zoff99/maven_artefact' |
| 184 | + with: |
| 185 | + allowUpdates: true |
| 186 | + tag: nightly |
| 187 | + omitBodyDuringUpdate: true |
| 188 | + omitNameDuringUpdate: true |
| 189 | + prerelease: true |
| 190 | + replacesArtifacts: true |
| 191 | + token: ${{ secrets.GITHUB_TOKEN }} |
| 192 | + artifacts: "local_maven_trifa_debug_jni.zip, libjni-c-toxcore.so___arm64_debug" |
| 193 | + |
0 commit comments