Skip to content

Delivery

Delivery #34

Workflow file for this run

name: Delivery
on:
workflow_dispatch:
env:
CACHING: gradle
GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
GIT_USER: ${{ secrets.GIT_USER }}
GPG_PASSWORD: ${{ secrets.GPG_PASSWORD }}
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
JAVA_DISTRIBUTION: temurin
JAVA_VERSION: 17
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
permissions: read-all
jobs:
# ---------- Stage 1 ----------
validate-wrapper:
name: Validate Gradle wrapper
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Validate Gradle wrapper
uses: gradle/[email protected]
# ---------- Stage 2 ----------
deliver-js:
name: Deliver JS package
needs: validate-wrapper
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishJsPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishJsPublicationToOSSRHRepository
deliver-jvm:
name: Deliver JVM package
needs: validate-wrapper
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishJvmPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishJvmPublicationToOSSRHRepository
deliver-linux:
name: Deliver Linux package
needs: validate-wrapper
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishLinuxPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishLinuxPublicationToOSSRHRepository
deliver-macos:
name: Deliver macOS package
needs: validate-wrapper
runs-on: macos-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishMacosPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishMacosPublicationToOSSRHRepository
deliver-windows:
name: Deliver Windows package
needs: validate-wrapper
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishWindowsPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishWindowsPublicationToOSSRHRepository
# ---------- Stage 3 ----------
deliver-multiplatform:
name: Deliver multiplatform package
needs:
- deliver-js
- deliver-jvm
- deliver-linux
- deliver-macos
- deliver-windows
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Setup Java & Gradle
uses: actions/[email protected]
with:
distribution: ${{ env.JAVA_DISTRIBUTION }}
java-version: ${{ env.JAVA_VERSION }}
cache: ${{ env.CACHING }}
- name: Deliver 'internal' subproject to OSSRH
run: ./gradlew :types-internal:publishKotlinMultiplatformPublicationToOSSRHRepository
- name: Deliver root project to OSSRH
run: ./gradlew :publishKotlinMultiplatformPublicationToOSSRHRepository