1
- # This workflow uses actions that are not certified by GitHub.
2
- # They are provided by a third-party and are governed by
3
- # separate terms of service, privacy policy, and support
4
- # documentation.
5
- # This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
6
- # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle
7
-
8
- name : Deploy to central
1
+ name : Publish Artifacts
9
2
10
3
on : workflow_dispatch
11
4
12
5
permissions :
13
6
contents : read
14
7
8
+ env :
9
+ ORG_GRADLE_PROJECT_mavenCentralUsername : ' ${{ secrets.MAVEN_CENTRAL_USERNAME }}'
10
+ ORG_GRADLE_PROJECT_mavenCentralPassword : ' ${{ secrets.MAVEN_CENTRAL_PASSWORD }}'
11
+ ORG_GRADLE_PROJECT_signingInMemoryKeyId : ' ${{ secrets.SIGNING_KEY_ID }}'
12
+ ORG_GRADLE_PROJECT_signingInMemoryKey : ' ${{ secrets.SIGNING_KEY }}'
13
+ ORG_GRADLE_PROJECT_signingInMemoryKeyPassword : ' ${{ secrets.SIGNING_KEY_PASSWORD }}'
14
+
15
15
jobs :
16
16
build :
17
17
uses : ./.github/workflows/gradle.yml
@@ -20,39 +20,30 @@ jobs:
20
20
strategy :
21
21
matrix :
22
22
include :
23
- - target : publishIosArm64PublicationToSonatypeRepository
23
+ - target : publishIosArm64PublicationToMavenCentral
24
24
os : macos-latest
25
- - target : publishAndroidReleasePublicationToSonatypeRepository
25
+ - target : publishAndroidReleasePublicationToMavenCentral
26
26
os : ubuntu-latest
27
- - target : publishJvmPublicationToSonatypeRepository
27
+ - target : publishJvmPublicationToMavenCentral
28
28
os : ubuntu-latest
29
- - target : publishLinuxX64PublicationToSonatypeRepository
29
+ - target : publishLinuxX64PublicationToMavenCentral
30
30
os : ubuntu-latest
31
- - target : publishKotlinMultiplatformPublicationToSonatypeRepository
31
+ - target : publishKotlinMultiplatformPublicationToMavenCentral
32
32
os : ubuntu-latest
33
33
runs-on : ${{ matrix.os }}
34
34
steps :
35
- - uses : actions/checkout@v4
36
- - name : Validate Gradle Wrapper
37
- uses : gradle/wrapper-validation-action@v1
38
- - name : Import GPG key
39
- uses : crazy-max/ghaction-import-gpg@v6
40
- with :
41
- gpg_private_key : ${{ secrets.OSSRH_GPG_SECRET_KEY }}
42
- passphrase : ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
43
- - name : Set up JDK 17
44
- uses : actions/setup-java@v4
45
- with :
46
- java-version : ' 17'
47
- distribution : ' temurin'
48
- - name : Gradle publish
49
- uses : gradle/gradle-build-action@ce999babab2de1c4b649dc15f0ee67e6246c994f
50
- with :
51
- arguments : |
52
- ${{ matrix.target }}
53
- closeSonatypeStagingRepository
54
- -Psigning.gnupg.passphrase='${{secrets.OSSRH_GPG_SECRET_KEY_PASSWORD}}'
55
- -Psigning.gnupg.keyName='${{secrets.OSSRH_GPG_SECRET_KEY_ID}}'
56
- -PsonatypeUsername='${{secrets.OSSRH_USERNAME}}'
57
- -PsonatypePassword='${{secrets.OSSRH_PASSWORD}}'
58
-
35
+ - uses : actions/checkout@v3
36
+ - name : Validate Gradle Wrapper
37
+ uses : gradle/wrapper-validation-action@v1
38
+ - uses : actions/cache@v3
39
+ with :
40
+ path : |
41
+ ~/.konan
42
+ key : ${{ runner.os }}-${{ hashFiles('**/.lock') }}
43
+ - name : Set up JDK 17
44
+ uses : actions/setup-java@v3
45
+ with :
46
+ java-version : ' 17'
47
+ distribution : ' temurin'
48
+ - name : Publish to Maven Central
49
+ run : ./gradlew publish --no-configuration-cache
0 commit comments