Skip to content

Deploy release version to Maven Central #6

Deploy release version to Maven Central

Deploy release version to Maven Central #6

name: Deploy release version to Maven Central
on:
release:
types: [created]
jobs:
build-and-deploy-mvn-central:
strategy:
matrix:
scala: [ "2.12.17", "2.13.10" ]
spark: [ "3.3.1", "3.3.0", "3.2.3", "3.2.2", "3.2.1", "3.2.0", "3.1.3", "3.1.2", "3.1.1", "3.1.0", "3.0.3", "3.0.2", "3.0.1", "3.0.0" ]
exclude:
- scala: "2.13.10"
spark: "3.1.3"
- scala: "2.13.10"
spark: "3.1.2"
- scala: "2.13.10"
spark: "3.1.1"
- scala: "2.13.10"
spark: "3.1.0"
- scala: "2.13.10"
spark: "3.0.3"
- scala: "2.13.10"
spark: "3.0.2"
- scala: "2.13.10"
spark: "3.0.1"
- scala: "2.13.10"
spark: "3.0.0"
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
distribution: adopt
java-version: 11
check-latest: true
- name: Cache Gradle packages
uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
~/.gradle/jdks
key: ${{ runner.os }}-gradle-spark-${{ matrix.spark }}-${{ matrix.scala }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Set Swap Space
uses: pierotofy/set-swap-space@master
with:
swap-size-gb: 12
- name: Upload to Maven Central with Gradle
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.OSSRH_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.OSSRH_TOKEN }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.MAVEN_GPG_PASSPHRASE }}
run: >
./gradlew
-Pspark=${{ matrix.spark }}
-Pscala=${{ matrix.scala }}
-PskipScalaTuplesInKotlin=${{ !(matrix.spark == '3.0.0' || matrix.scala == '2.13.10' && matrix.spark == '3.2.0') }}
clean
publishMavenPublicationToMavenCentralRepository
--scan