Skip to content

cleanup deployment and use aar instead of jar #5

cleanup deployment and use aar instead of jar

cleanup deployment and use aar instead of jar #5

Workflow file for this run

name: Build jmeAndroidNatives
on:
push:
branches:
- master
- main
pull_request:
release:
types: [published]
permissions:
contents: read
defaults:
run:
shell: bash
jobs:
BuildAndroidNatives:
name: Build Android natives
runs-on: ubuntu-latest
container:
image: ghcr.io/cirruslabs/android-sdk:36-ndk
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 1
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: '21'
- name: Install CMake
run: |
apt-get update
apt-get install -y cmake
cmake --version
- name: Validate the Gradle wrapper
uses: gradle/actions/wrapper-validation@v6.1.0
- name: Build
run: |
export ANDROID_NDK="$ANDROID_SDK_ROOT/ndk/$ANDROID_NDK_VERSION"
version_args=""
if [ "$GITHUB_EVENT_NAME" = "release" ]; then
version_args="-PreleaseVersion=${GITHUB_REF_NAME#v}"
fi
./gradlew $version_args --no-daemon assemble --console=plain --stacktrace
- name: Upload AAR output
uses: actions/upload-artifact@v7.0.1
with:
name: aar
path: build/outputs/aar
PublishSnapshot:
name: Deploy Snapshot
needs: [BuildAndroidNatives]
runs-on: ubuntu-latest
container:
image: ghcr.io/cirruslabs/android-sdk:36-ndk
if: github.event_name == 'push' && (github.ref_name == 'master' || github.ref_name == 'main')
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 1
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: '21'
- name: Install CMake
run: |
apt-get update
apt-get install -y cmake
cmake --version
- name: Publish snapshot to Sonatype
run: |
if [ "${{ secrets.OSSRH_PASSWORD }}" = "" ];
then
echo "Configure the following secrets to enable uploading to Sonatype:"
echo "OSSRH_PASSWORD, OSSRH_USERNAME, SIGNING_KEY, SIGNING_PASSWORD"
else
export ANDROID_NDK="$ANDROID_SDK_ROOT/ndk/$ANDROID_NDK_VERSION"
./gradlew publishMavenPublicationToSNAPSHOTRepository \
-PcentralPassword=${{ secrets.OSSRH_PASSWORD }} \
-PcentralUsername=${{ secrets.OSSRH_USERNAME }} \
-PsigningKey='${{ secrets.SIGNING_KEY }}' \
-PsigningPassword='${{ secrets.SIGNING_PASSWORD }}' \
--console=plain --stacktrace
fi
PublishRelease:
name: Deploy Release
needs: [BuildAndroidNatives]
runs-on: ubuntu-latest
container:
image: ghcr.io/cirruslabs/android-sdk:36-ndk
if: github.event_name == 'release'
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 1
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: '21'
- name: Install CMake
run: |
apt-get update
apt-get install -y cmake
cmake --version
- name: Stage release artifacts for Central
run: |
if [ "${{ secrets.OSSRH_PASSWORD }}" = "" ];
then
echo "Configure the following secrets to enable uploading to Sonatype:"
echo "OSSRH_PASSWORD, OSSRH_USERNAME, SIGNING_KEY, SIGNING_PASSWORD"
else
export ANDROID_NDK="$ANDROID_SDK_ROOT/ndk/$ANDROID_NDK_VERSION"
./gradlew publishMavenPublicationToCentralRepository \
-PcentralPassword=${{ secrets.OSSRH_PASSWORD }} \
-PcentralUsername=${{ secrets.OSSRH_USERNAME }} \
-PsigningKey='${{ secrets.SIGNING_KEY }}' \
-PsigningPassword='${{ secrets.SIGNING_PASSWORD }}' \
-PreleaseVersion=${GITHUB_REF_NAME#v} \
--console=plain --stacktrace
fi
- name: Publish to GitHub Packages
run: |
export ANDROID_NDK="$ANDROID_SDK_ROOT/ndk/$ANDROID_NDK_VERSION"
if [ "${{ secrets.SIGNING_PASSWORD }}" = "" ];
then
./gradlew publishMavenPublicationToGitHubPackagesRepository \
-PreleaseVersion=${GITHUB_REF_NAME#v} \
-PgithubPackagesUsername='${{ github.actor }}' \
-PgithubPackagesPassword='${{ secrets.GITHUB_TOKEN }}' \
--console=plain --stacktrace
else
./gradlew publishMavenPublicationToGitHubPackagesRepository \
-PsigningKey='${{ secrets.SIGNING_KEY }}' \
-PsigningPassword='${{ secrets.SIGNING_PASSWORD }}' \
-PreleaseVersion=${GITHUB_REF_NAME#v} \
-PgithubPackagesUsername='${{ github.actor }}' \
-PgithubPackagesPassword='${{ secrets.GITHUB_TOKEN }}' \
--console=plain --stacktrace
fi