diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 8b137891..ddcaaffa 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1 +1,107 @@ +name: Publish APK +on: + pull_request: + branches: [test-deploy] + push: + branches: [test-deploy] + +jobs: + # build: + # runs-on: ubuntu-latest + # container: lbry/android-base:platform-28 + # steps: + # - name: update git # container git is too old + # run: | + # apt-get install -y software-properties-common + # apt-get update + # add-apt-repository -y ppa:git-core/ppa + # apt-get update + # apt-get install -y git + # - name: work around for permission issue # git doesn't trust user that owns the checkout + # run: | + # git config --global --add safe.directory /__w/lbry-android/lbry-android + # - name: checkout + # uses: actions/checkout@v3 + # - name: hacky copy # docker image runs ~ as /root, but github actions uses ~=/github/home + # run: | + # cp -r /root/.buildozer ~/.buildozer/ + # - name: setup + # run: | + # echo "$PGP_PRIVATE_KEY" | gpg --batch --import + # echo 'deb https://gitsecret.jfrog.io/artifactory/git-secret-deb git-secret main' >> /etc/apt/sources.list + # wget -qO - 'https://gitsecret.jfrog.io/artifactory/api/gpg/key/public' | apt-key add - + # apt-get -y update && apt-get -y install build-essential ca-certificates curl gpg-agent openjdk-8-jdk software-properties-common wget zipalign git-secret + # ls -al .. + # ls -al + # git rev-parse --is-inside-work-tree + # git secret reveal + # chmod u+x $GITHUB_WORKSPACE/gradlew + # export BUILD_VERSION=$($GITHUB_WORKSPACE/gradlew -p $GITHUB_WORKSPACE -q printVersionName --console=plain | tail -1) + # export PATH=/usr/bin:$PATH + # export ANDROID_SDK_ROOT=~/.buildozer/android/platform/android-sdk-23 + # echo $ANDROID_SDK_ROOT + # echo "ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" >> $GITHUB_ENV + # echo "end of setup home:" + # echo $HOME + # env: + # PGP_PRIVATE_KEY: ${{ secrets.PGP_PRIVATE_KEY }} + # KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} + # - name: build + # run: | + # ls -al ~/ + # chmod u+x ./release.sh + # ./release.sh + # cp bin/browser-$BUILD_VERSION-release__arm.apk /dev/null + # cp bin/browser-$BUILD_VERSION-release__arm64.apk /dev/null + # env: + # PGP_PRIVATE_KEY: ${{ secrets.PGP_PRIVATE_KEY }} + # KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} + + # - name: Upload math result for job 1 + # uses: actions/upload-artifact@v3 + # with: + # name: homework + # path: math-homework.txt + build-release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - uses: gradle/wrapper-validation-action@v1 + + - name: Create and checkout branch + # push events already checked out the branch + if: github.event_name == 'pull_request' + run: git checkout -B ${{ github.head_ref }} + + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + cache: 'gradle' + + - name: Reveal secrets + env: + PGP_PRIVATE_KEY: ${{ secrets.PGP_PRIVATE_KEY }} + run: | + sudo apt install git-secret gpg-agent + echo "$PGP_PRIVATE_KEY" | gpg --batch --import + git secret reveal + - name: Install NDK version 21.0.6113669 + run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.0.6113669" + + - name: Build + env: + KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} + run: | + sudo apt install zipalign apksigner + chmod +x gradlew + ./release.sh + rm bin/*-unsigned.apk + - name: Upload APK + uses: actions/upload-artifact@v3 + with: + name: app-release + path: bin/*.apk \ No newline at end of file diff --git a/.gitignore b/.gitignore index ee532988..1a2e0dc4 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,4 @@ app/twitter.properties app/build bin app/debuglib +.vscode diff --git a/app/build.gradle b/app/build.gradle index 0cfc3c44..6a692806 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -103,20 +103,20 @@ dependencies { implementation 'com.android.billingclient:billing:3.0.2' implementation 'com.google.code.gson:gson:2.8.6' - implementation 'com.google.android.exoplayer:exoplayer-core:2.12.2' - implementation 'com.google.android.exoplayer:exoplayer-dash:2.12.2' - implementation 'com.google.android.exoplayer:exoplayer-ui:2.12.2' - implementation 'com.google.android.exoplayer:extension-cast:2.12.2' - implementation 'com.google.android.exoplayer:extension-mediasession:2.12.2' + implementation 'com.google.android.exoplayer:exoplayer-core:2.15.1' + implementation 'com.google.android.exoplayer:exoplayer-dash:2.15.1' + implementation 'com.google.android.exoplayer:exoplayer-ui:2.15.1' + implementation 'com.google.android.exoplayer:extension-cast:2.15.1' + implementation 'com.google.android.exoplayer:extension-mediasession:2.15.1' - implementation 'com.google.android:flexbox:2.0.1' + implementation 'com.google.android.flexbox:flexbox:3.0.0' - implementation 'com.hbb20:ccp:2.3.8' + implementation 'com.hbb20:ccp:2.4.7' implementation 'com.github.chrisbanes:PhotoView:2.3.0' implementation 'com.atlassian.commonmark:commonmark:0.14.0' - implementation 'com.arthenica:mobile-ffmpeg-full-gpl:4.3.1.LTS' + implementation 'com.arthenica:mobile-ffmpeg-full-gpl:4.4.LTS' implementation 'commons-codec:commons-codec:1.15' implementation 'org.bitcoinj:bitcoinj-tools:0.14.7' diff --git a/release.sh b/release.sh index 603ffaa6..2337861a 100755 --- a/release.sh +++ b/release.sh @@ -1,5 +1,8 @@ #!/bin/bash -./gradlew assembleRelease --console=plain +echo "release.sh" +echo $HOME +echo $ANDROID_SDK_ROOT +./gradlew assembleRelease --console=plain --stacktrace version=$(./gradlew -q printVersionName --console=plain | tail -1) mkdir -p bin/ rm -f bin/*