waterui 0.3.0

A modern UI framework for Rust
name: Release Android Backend

on:
  push:
    branches:
      - main
    paths:
      - 'backends/android/**'
      - 'backends/android/release-please-config.json'
      - 'backends/android/release-please-manifest.json'
  workflow_dispatch:

permissions:
  contents: write

concurrency:
  group: android-release
  cancel-in-progress: false

jobs:
  release:
    name: Publish Android backend
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - name: Run release-please
        id: release
        uses: google-github-actions/release-please-action@v4
        with:
          command: github-release
          token: ${{ secrets.GITHUB_TOKEN }}
          config-file: backends/android/release-please-config.json
          manifest-file: backends/android/release-please-manifest.json
      - name: Set up Java
        if: ${{ steps.release.outputs.release_created == 'true' }}
        uses: actions/setup-java@v4
        with:
          distribution: 'temurin'
          java-version: '17'
      - name: Setup Gradle
        if: ${{ steps.release.outputs.release_created == 'true' }}
        uses: gradle/actions/setup-gradle@v3
        with:
          build-root-directory: backends/android
      - name: Build Android backend
        if: ${{ steps.release.outputs.release_created == 'true' }}
        working-directory: backends/android
        run: ./gradlew build
      - name: Upload AAR to GitHub Release
        if: ${{ steps.release.outputs.release_created == 'true' }}
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: gh release upload ${{ steps.release.outputs.tag_name }} backends/android/build/libs/*.aar --clobber