Skip to content

Merge pull request #40 from BunnyWay/fix/autocontrast_for_progress #20

Merge pull request #40 from BunnyWay/fix/autocontrast_for_progress

Merge pull request #40 from BunnyWay/fix/autocontrast_for_progress #20

Workflow file for this run

# Workflow name shown in GitHub Actions UI
name: Publish Libraries to Maven Central
# When to run this workflow:
on:
# Only trigger on SemVer tags prefixed with 'v', e.g. 'v1.2.3'
push:
tags:
- '*.*.*'
# Allow manual (button) dispatch from the Actions tab
workflow_dispatch:
jobs:
# First job: run your unit tests on every trigger
unit_tests:
name: Run unit tests
runs-on: ubuntu-latest
steps:
# Check out your repo
- uses: actions/checkout@v4
# Set up JDK 17 (Temurin distribution)
- name: Setup JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
# Execute your Android unit tests
- name: Run unit tests
run: ./gradlew testDebugUnitTest --no-daemon --stacktrace
# Second job: publish artifacts, depends on successful unit_tests
publish:
name: Publish to Maven Central
needs: unit_tests
runs-on: ubuntu-latest
steps:
# Re-checkout code (always required at start of a job)
- uses: actions/checkout@v4
# Setup Java again, import GPG key for signing
- name: Setup Java, OSSRH creds & import GPG key
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
# Setup Android SDK so Gradle can build Android modules
- name: Setup Android SDK
uses: android-actions/setup-android@v2
- name: Derive VERSION from Git tag
run: |
if [[ "${GITHUB_REF_TYPE}" != "tag" || -z "${GITHUB_REF_NAME}" ]]; then
echo "This job must run on a tag (refs/tags/*)."; exit 1
fi
# Strip optional leading 'v' (e.g., v1.2.3 -> 1.2.3). Remove the next line if you don't use 'v' prefixes.
VERSION="${GITHUB_REF_NAME#v}"
if [[ -z "${VERSION}" ]]; then
echo "VERSION resolved from tag is empty."; exit 1
fi
echo "VERSION=${VERSION}" >> "$GITHUB_ENV"
- name: Publish artifacts to Maven Central
run: |
./gradlew \
publishToMavenCentral \
-PenforceVersion=true \
--no-daemon --stacktrace
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.ORG_GRADLE_PROJECT_MAVENCENTRALUSERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.ORG_GRADLE_PROJECT_MAVENCENTRALPASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEYPASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEYID }}