Skip to content

Commit d26d587

Browse files
committed
Update release CI
1 parent f927901 commit d26d587

File tree

2 files changed

+73
-26
lines changed

2 files changed

+73
-26
lines changed

.github/workflows/deploy.yml

Lines changed: 14 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,17 @@
11
name: deploy
22
on: workflow_dispatch
3-
#on:
4-
# pull_request:
5-
# branches:
6-
# - main
7-
# push:
8-
# branches:
9-
# - main
103

114
jobs:
12-
build:
13-
strategy:
14-
matrix:
15-
os: [ macOS-latest, windows-latest, ubuntu-18.04 ]
16-
runs-on: ${{matrix.os}}
5+
deploy:
6+
runs-on: macos-latest
177
steps:
188
- name: Checkout the repo
19-
uses: actions/checkout@v2
20-
- name: Install msys2
21-
if: matrix.os == 'windows-latest'
22-
uses: msys2/setup-msys2@v2
9+
uses: actions/checkout@v3
10+
11+
- uses: actions/setup-java@v2
2312
with:
24-
msystem: MINGW64
25-
update: true
26-
install: git mingw-w64-x86_64-toolchain libsqlite
13+
distribution: "adopt"
14+
java-version: "17"
2715
- name: Validate Gradle Wrapper
2816
uses: gradle/wrapper-validation-action@v1
2917
- name: Cache gradle
@@ -33,24 +21,24 @@ jobs:
3321
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
3422
restore-keys: |
3523
${{ runner.os }}-gradle-
24+
3625
- name: Cache konan
3726
uses: actions/cache@v2
3827
with:
3928
path: ~/.konan
4029
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
4130
restore-keys: |
4231
${{ runner.os }}-gradle-
43-
- name: Update Environment Variables
44-
shell: bash
45-
run: |
46-
echo "c:\msys64\mingw64\bin" >> $GITHUB_PATH
32+
4733
- name: Publish
48-
if: matrix.os == 'macOS-latest'
49-
run: ./gradlew publish --no-daemon --stacktrace
34+
run: ./gradlew publish --no-daemon --stacktrace --no-build-cache
5035
env:
5136
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
37+
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
5238
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
39+
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
5340
ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
41+
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }}
5442

5543
env:
56-
GRADLE_OPTS: -Dorg.gradle.configureondemand=true -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"
44+
GRADLE_OPTS: -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"

.github/workflows/release.yml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
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@v3
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+
34+
- name: Cache konan
35+
uses: actions/cache@v2
36+
with:
37+
path: ~/.konan
38+
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
39+
restore-keys: |
40+
${{ runner.os }}-gradle-
41+
42+
- name: Finish Maven Central Release
43+
run: ./gradlew closeAndReleaseRepository --no-daemon --stacktrace --no-build-cache
44+
env:
45+
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
46+
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
47+
ORG_GRADLE_PROJECT_SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
48+
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
49+
ORG_GRADLE_PROJECT_SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
50+
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }}
51+
52+
- name: Create Release
53+
if: ${{ contains(steps.version-match.outputs.group1, 'SNAPSHOT') == false }}
54+
uses: touchlab/[email protected]
55+
with:
56+
tag: ${{ steps.version-name.outputs.propVal }}
57+
58+
env:
59+
GRADLE_OPTS: -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"

0 commit comments

Comments
 (0)