diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..e2ff41a --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,56 @@ +name: Build + +env: + Artifacts: Android/app/build/outputs/apk/debug/app-debug.apk + Branch: ${{github.ref_name}} + GH_TOKEN: ${{ github.token }} + +on: + push: + Branches: $Branch + pull_request: + Branches: $Branch + workflow_dispatch: + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - name: Clone repo and submodules + run: git clone --recurse-submodules https://github.com/${{github.repository}}.git . --branch ${{env.Branch}} + + - name: Get current date, commit hash and count + run: | + echo "CommitDate=$(git show -s --date=format:'%Y-%m-%d' --format=%cd)" >> $GITHUB_ENV + echo "CommitHashShort=$(git rev-parse --short=7 HEAD)" >> $GITHUB_ENV + echo "CommitCount=$(git rev-list --count HEAD)" >> $GITHUB_ENV + + - name: set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + cache: gradle + + - name: Grant execute permission for gradlew + run: | + cd Android + chmod +x gradlew + + - name: Build with Gradle + run: | + cd Android + ./gradlew build --warning-mode all + + - name: Upload Artifact to GitHub + uses: actions/upload-artifact@v4 + with: + name: "${{github.event.repository.name}}_r${{env.CommitCount}}@${{env.CommitHashShort}}" + path: "${{github.workspace}}/${{env.Artifacts}}" + + - name: Release + run: | + gh release create r${{env.CommitCount}} --generate-notes --latest=false --title "[${{env.CommitDate}}] ${{github.event.repository.name}} r${{env.CommitCount}}@${{env.CommitHashShort}}" + gh release upload r${{env.CommitCount}} "${{env.Artifacts}}" diff --git a/Android/app/build.gradle b/Android/app/build.gradle index eabf17d..dcf5f43 100755 --- a/Android/app/build.gradle +++ b/Android/app/build.gradle @@ -28,6 +28,9 @@ android { path 'src/main/jni/CMakeLists.txt' } } + lintOptions { + abortOnError false + } } dependencies {