1+ name : release
2+ on : workflow_dispatch
3+
4+ jobs :
5+ release :
6+ runs-on : macos-latest
7+ steps :
8+ - name : Checkout the repo
9+ uses : actions/checkout@v2
10+
11+ -
uses :
touchlab/[email protected] 12+ id : version-name
13+ with :
14+ file : ./gradle.properties
15+ property : VERSION_NAME
16+
17+ - name : Echo Version
18+ run : echo "${{ steps.version-name.outputs.propVal }}"
19+
20+ - uses : actions/setup-java@v2
21+ with :
22+ distribution : " adopt"
23+ java-version : " 17"
24+ - name : Validate Gradle Wrapper
25+ uses : gradle/wrapper-validation-action@v1
26+ - name : Cache gradle
27+ uses : actions/cache@v2
28+ with :
29+ path : ~/.gradle/caches
30+ key : ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
31+ restore-keys : |
32+ ${{ runner.os }}-gradle-
33+ - name : Cache konan
34+ uses : actions/cache@v2
35+ with :
36+ path : ~/.konan
37+ key : ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
38+ restore-keys : |
39+ ${{ runner.os }}-gradle-
40+ - name : Finish Maven Central Release
41+ run : ./gradlew closeAndReleaseRepository --no-daemon --stacktrace --no-build-cache
42+ env :
43+ ORG_GRADLE_PROJECT_SONATYPE_NEXUS_USERNAME : ${{ secrets.SONATYPE_NEXUS_USERNAME }}
44+ ORG_GRADLE_PROJECT_mavenCentralUsername : ${{ secrets.SONATYPE_NEXUS_USERNAME }}
45+ ORG_GRADLE_PROJECT_SONATYPE_NEXUS_PASSWORD : ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
46+ ORG_GRADLE_PROJECT_mavenCentralPassword : ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
47+ ORG_GRADLE_PROJECT_SIGNING_KEY : ${{ secrets.SIGNING_KEY }}
48+ ORG_GRADLE_PROJECT_signingInMemoryKey : ${{ secrets.SIGNING_KEY }}
49+
50+ - name : Create Release
51+ if : ${{ contains(steps.version-match.outputs.group1, 'SNAPSHOT') == false }}
52+ 53+ with :
54+ tag : ${{ steps.version-name.outputs.propVal }}
55+
56+ env :
57+ GRADLE_OPTS : -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"
0 commit comments