Flocon/.github/workflows/publish_android.yml

43 lines
1.9 KiB
YAML

name: Publish Android libs to maven MavenCentral
on:
release:
types: [released, prereleased]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
publish:
name: Release build and publish
runs-on: macOS-latest
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: 21
- name: Check release # be sure op and no-op versions are building
working-directory: FloconAndroid
run: ./gradlew :sample-android-only:assemble
- name: Publish to MavenCentral
run: |
./gradlew \
:flocon-base:publishToMavenCentral \
:flocon:publishToMavenCentral \
:flocon-no-op:publishToMavenCentral \
:okhttp-interceptor:publishToMavenCentral \
:okhttp-interceptor-no-op:publishToMavenCentral \
:grpc:grpc-interceptor-base:publishToMavenCentral \
:grpc:grpc-interceptor-lite:publishToMavenCentral \
:grpc:grpc-interceptor:publishToMavenCentral \
:ktor-interceptor:publishToMavenCentral \
:ktor-interceptor-no-op:publishToMavenCentral \
--no-configuration-cache
working-directory: FloconAndroid
env:
PROJECT_VERSION_NAME: ${{ github.ref_name }}
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.ORG_GRADLE_PROJECT_MAVENCENTRALUSERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.ORG_GRADLE_PROJECT_MAVENCENTRALPASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEYID }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEYPASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGINMEMORYKEY }}