Skip to content

Release

Release #9

Workflow file for this run

name: Release
concurrency:
group: "release"
cancel-in-progress: true
permissions:
contents: write
on:
workflow_dispatch:
inputs:
version:
required: true
description: Release version
default: "1.0.0"
jobs:
release:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Test version
id: version
run: |
version=${{github.event.inputs.version}}
if git show-ref --tags --quiet --verify -- "refs/tags/$version" >/dev/null; then
echo "Git tag $version already exists, failing to publish";
exit 1
else
echo "::set-output name=release_tag::$version"
fi
- name: Setup JDK 17
uses: actions/setup-java@v2
with:
java-version: 17
distribution: 'temurin'
cache: 'gradle'
- name: Setup Android SDK
uses: android-actions/[email protected]
- name: Setup Gradle
uses: gradle/[email protected]
- name: Build and Maven publish
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.MAVEN_CENTRAL_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.MAVEN_CENTRAL_PASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_IN_MEMORY_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_IN_MEMORY_KEY_PASSWORD }}
LIBRARY_VERSION: ${{ github.event.inputs.version }}
run: |
chmod +x gradlew
./gradlew publishAllPublicationsToMavenCentral --no-configuration-cache --no-daemon --stacktrace
- name: Create Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.version.outputs.release_tag }}
generate_release_notes: true