name: Publish Java SDKs on: push: tags: - "java/sandbox/v*" - "java/code-interpreter/v*" permissions: contents: read jobs: release-preflight: uses: ./.github/workflows/release-preflight.yml publish: needs: release-preflight name: Publish (${{ matrix.sdk.name }}) runs-on: ubuntu-latest strategy: fail-fast: false matrix: sdk: - name: sandbox tagPrefix: sandbox workingDirectory: sdks/sandbox/kotlin - name: code-interpreter tagPrefix: code-interpreter workingDirectory: sdks/code-interpreter/kotlin steps: - name: Checkout code uses: actions/checkout@v6 - name: Set up Java uses: actions/setup-java@v5 with: distribution: temurin java-version: "17" - name: Set up Gradle uses: gradle/actions/setup-gradle@v5 - name: Publish to Maven Central working-directory: ${{ matrix.sdk.workingDirectory }} if: startsWith(github.ref, format('refs/tags/java/{0}/v', matrix.sdk.tagPrefix)) 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 }} run: | ./gradlew publishAndReleaseToMavenCentral