name: Test4x Build on: workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - uses: actions/setup-node@v4 # Use the latest version of setup-node with: node-version: 16 # Explicitly set Node.js version to 16 - uses: actions/checkout@v2 - name: Set up JDK and Gradle uses: actions/setup-java@v2 with: java-version: '11' distribution: 'adopt' - name: Release Apk Sign run: | signingConfigs='ICAgIHNpZ25pbmdDb25maWdzIHtcCiAgICAgICAgaWYgKHByb2plY3QuaGFzUHJvcGVydHkoIlJFTEVBU0VfU1RPUkVfRklMRSIpKSB7XAogICAgICAgICAgICBteUNvbmZpZyB7XAogICAgICAgICAgICAgICAgc3RvcmVGaWxlIGZpbGUoUkVMRUFTRV9TVE9SRV9GSUxFKVwKICAgICAgICAgICAgICAgIHN0b3JlUGFzc3dvcmQgUkVMRUFTRV9TVE9SRV9QQVNTV09SRFwKICAgICAgICAgICAgICAgIGtleUFsaWFzIFJFTEVBU0VfS0VZX0FMSUFTXAogICAgICAgICAgICAgICAga2V5UGFzc3dvcmQgUkVMRUFTRV9LRVlfUEFTU1dPUkRcCiAgICAgICAgICAgICAgICB2MVNpZ25pbmdFbmFibGVkIHRydWVcCiAgICAgICAgICAgICAgICB2MlNpZ25pbmdFbmFibGVkIHRydWVcCiAgICAgICAgICAgICAgICBlbmFibGVWM1NpZ25pbmcgPSB0cnVlXAogICAgICAgICAgICAgICAgZW5hYmxlVjRTaWduaW5nID0gdHJ1ZVwKICAgICAgICAgICAgfVwKICAgICAgICB9XAogICAgfVwKXA==' signingConfig='ICAgICAgICAgICAgaWYgKHByb2plY3QuaGFzUHJvcGVydHkoIlJFTEVBU0VfU1RPUkVfRklMRSIpKSB7XAogICAgICAgICAgICAgICAgc2lnbmluZ0NvbmZpZyBzaWduaW5nQ29uZmlncy5teUNvbmZpZ1wKICAgICAgICAgICAgfVwK' signingConfigs="$(echo "$signingConfigs" |base64 -d )" signingConfig="$(echo "$signingConfig" |base64 -d )" sed -i -e "/defaultConfig {/i\\$signingConfigs " -e "/debug {/a\\$signingConfig " -e "/kitkat {/a\\$signingConfig " app/build.gradle cp -f ${{ github.workspace }}/.github/workflows/TVBoxOSC.jks app/TVBoxOSC.jks sed -i '$a\RELEASE_STORE_FILE=./TVBoxOSC.jks' ./gradle.properties sed -i '$a\RELEASE_KEY_ALIAS=TVBoxOSC' ./gradle.properties sed -i '$a\RELEASE_STORE_PASSWORD=TVBoxOSC' ./gradle.properties sed -i '$a\RELEASE_KEY_PASSWORD=TVBoxOSC' ./gradle.properties - name: Build With Gradle run: | chmod +x gradlew ./gradlew clean assembleRelease --parallel --daemon --warning-mode all --stacktrace - name: Prepare App run: | mkdir -p ${{ github.workspace }}/apk/ find . -name "*.apk" -exec mv {} ${{ github.workspace }}/apk/ \; - name: Upload App To Artifact uses: actions/upload-artifact@v2 with: name: com.github.tvbox.fongmi path: ${{ github.workspace }}/apk/*