name: Release Build
on:
workflow_dispatch:
inputs:
tag:
description: 'Release Tag'
required: true
upload:
description: 'Upload: If want ignore'
required: false
publish:
description: 'Publish: If want ignore'
required: false
play:
description: 'Play: If want ignore'
required: false
jobs:
libcore:
name: Native Build (LibCore)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Golang Status
run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status
- name: Libcore Status
run: git ls-files libcore | xargs cat | sha1sum > libcore_status
- name: LibCore Cache
id: cache
uses: actions/cache@v3
with:
path: |
app/libs/libcore.aar
key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }}
- name: Golang Cache
if: steps.cache.outputs.cache-hit != 'true'
uses: actions/cache@v3
with:
path: build/golang
key: go-${{ hashFiles('.github/workflows/', 'golang_status') }}
- name: Native Build
if: steps.cache.outputs.cache-hit != 'true'
run: ./run init action go && ./run lib core
build:
name: Build OSS APK
runs-on: ubuntu-latest
needs:
- libcore
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Golang Status
run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status
- name: Libcore Status
run: git ls-files libcore | xargs cat | sha1sum > libcore_status
- name: LibCore Cache
uses: actions/cache@v3
with:
path: |
app/libs/libcore.aar
key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }}
- name: Gradle cache
uses: actions/cache@v3
with:
path: ~/.gradle
key: gradle-oss-${{ hashFiles('**/.gradle.kts') }}
- name: Gradle Build
env:
BUILD_PLUGIN: none
run: |
echo "sdk.dir=${ANDROID_HOME}" > local.properties
echo "ndk.dir=${ANDROID_HOME}/ndk/25.0.8775105" >> local.properties
export LOCAL_PROPERTIES="${{ secrets.LOCAL_PROPERTIES }}"
./run init action gradle
./gradlew app:assembleOssRelease
APK=$(find app/build/outputs/apk -name 'arm64-v8a.apk')
APK=$(dirname $APK)
echo "APK=$APK" >>
function upload() {
for apk in $@; do
echo ">> Uploading $apk"
curl https://api.telegram.org/bot${{ secrets.TELEGRAM_TOKEN }}/sendDocument \
-X POST \
-F chat_id="${{ secrets.TELEGRAM_CHANNEL }}" \
-F document="@$apk" \
--silent --show-error --fail >/dev/null &
done
for job in $(jobs -p); do
wait $job || exit 1
done
}
upload apks/*
play: name: Build Play Bundle if: github.event.inputs.play != 'y' runs-on: ubuntu-latest needs: - libcore steps: - name: Checkout uses: actions/checkout@v3 - name: Golang Status run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status - name: Libcore Status run: git ls-files libcore | xargs cat | sha1sum > libcore_status - name: LibCore Cache uses: actions/cache@v3 with: path: | app/libs/libcore.aar key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }} - name: Gradle cache uses: actions/cache@v3 with: path: ~/.gradle key: gradle-play-${{ hashFiles('**/.gradle.kts') }} - name: Checkout Library run: | git submodule update --init 'app/' - name: Gradle Build run: | echo "sdk.dir=${ANDROID_HOME}" > local.properties echo "ndk.dir=${ANDROID_HOME}/ndk/25.0.8775105" >> local.properties export LOCAL_PROPERTIES="${{ secrets.LOCAL_PROPERTIES }}" ./run init action gradle ./gradlew bundlePlayRelease - uses: actions/upload-artifact@v3 with: name: AAB path: app/build/outputs/bundle/playRelease/app-play-release.aab
]
]
name: Release Build
on:
workflow_dispatch:
inputs:
tag:
description: 'Release Tag'
required: true
upload:
description: 'Upload: If want ignore'
required: false
publish:
description: 'Publish: If want ignore'
required: false
play:
description: 'Play: If want ignore'
required: false
jobs:
libcore:
name: Native Build (LibCore)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Golang Status
run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status
- name: Libcore Status
run: git ls-files libcore | xargs cat | sha1sum > libcore_status
- name: LibCore Cache
id: cache
uses: actions/cache@v3
with:
path: |
app/libs/libcore.aar
key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }}
- name: Golang Cache
if: steps.cache.outputs.cache-hit != 'true'
uses: actions/cache@v3
with:
path: build/golang
key: go-${{ hashFiles('.github/workflows/', 'golang_status') }}
- name: Native Build
if: steps.cache.outputs.cache-hit != 'true'
run: ./run init action go && ./run lib core
build:
name: Build OSS APK
runs-on: ubuntu-latest
needs:
- libcore
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Golang Status
run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status
- name: Libcore Status
run: git ls-files libcore | xargs cat | sha1sum > libcore_status
- name: LibCore Cache
uses: actions/cache@v3
with:
path: |
app/libs/libcore.aar
key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }}
- name: Gradle cache
uses: actions/cache@v3
with:
path: ~/.gradle
key: gradle-oss-${{ hashFiles('**/.gradle.kts') }}
- name: Gradle Build
env:
BUILD_PLUGIN: none
run: |
echo "sdk.dir=${ANDROID_HOME}" > local.properties
echo "ndk.dir=${ANDROID_HOME}/ndk/25.0.8775105" >> local.properties
export LOCAL_PROPERTIES="${{ secrets.LOCAL_PROPERTIES }}"
./run init action gradle
./gradlew app:assembleOssRelease
APK=$(find app/build/outputs/apk -name 'arm64-v8a.apk')
APK=$(dirname $APK)
echo "APK=$APK" >>
function upload() {
for apk in $@; do
echo ">> Uploading $apk"
curl https://api.telegram.org/bot${{ secrets.TELEGRAM_TOKEN }}/sendDocument \
-X POST \
-F chat_id="${{ secrets.TELEGRAM_CHANNEL }}" \
-F document="@$apk" \
--silent --show-error --fail >/dev/null &
done
for job in $(jobs -p); do
wait $job || exit 1
done
}
upload apks/*
play: name: Build Play Bundle if: github.event.inputs.play != 'y' runs-on: ubuntu-latest needs: - libcore steps: - name: Checkout uses: actions/checkout@v3 - name: Golang Status run: find buildScript libcore/.sh | xargs cat | sha1sum > golang_status - name: Libcore Status run: git ls-files libcore | xargs cat | sha1sum > libcore_status - name: LibCore Cache uses: actions/cache@v3 with: path: | app/libs/libcore.aar key: ${{ hashFiles('.github/workflows/', 'golang_status', 'libcore_status') }} - name: Gradle cache uses: actions/cache@v3 with: path: ~/.gradle key: gradle-play-${{ hashFiles('**/.gradle.kts') }} - name: Checkout Library run: | git submodule update --init 'app/' - name: Gradle Build run: | echo "sdk.dir=${ANDROID_HOME}" > local.properties echo "ndk.dir=${ANDROID_HOME}/ndk/25.0.8775105" >> local.properties export LOCAL_PROPERTIES="${{ secrets.LOCAL_PROPERTIES }}" ./run init action gradle ./gradlew bundlePlayRelease - uses: actions/upload-artifact@v3 with: name: AAB path: app/build/outputs/bundle/playRelease/app-play-release.aabinstagram.video.downloader.story.saver com.sdev.alphav2rayhttps://t.me/AZARBAYJAB1