7
7
workflow_dispatch :
8
8
9
9
env :
10
- GPG_KEY_ID : ${{ secrets.GPG_KEY_ID }}
11
- GPG_SECRET_KEY : ${{ secrets.GPG_PRI_KEY }}
12
- GPG_PASSWORD : ${{ secrets.GPG_PASSWORD }}
13
- OSSRH_USER : ${{ secrets.OSS_USERNAME }}
14
- OSSRH_PASSWORD : ${{ secrets.OSS_PASSWORD }}
15
- RELEASE : true
16
- CI : true
10
+ JAVA_VERSION : 11
11
+ JAVA_DISTRIBUTION : zulu
12
+ GRADLE_VERSION : 8.10.2
17
13
IS_CI : true
18
- SIMBOT_LOCAL : false
14
+ SIGNING_KEY_ID : ${{ secrets.GPG_KEY_ID }}
15
+ GPG_KEY_CONTENTS : ${{ secrets.GPG_PRI_KEY }}
16
+ SIGNING_PASSWORD : ${{ secrets.GPG_PASSWORD }}
17
+ MAVEN_CENTRAL_USERNAME : ${{ secrets.CENTRAL_PORTAL_USERNAME }}
18
+ MAVEN_CENTRAL_PASSWORD : ${{ secrets.CENTRAL_PORTAL_PASSWORD }}
19
19
GRADLE_OPTS : " -Dfile.encoding=UTF-8"
20
- GRADLE_VERSION : 8.10.2
21
20
22
21
jobs :
23
22
test :
@@ -30,77 +29,72 @@ jobs:
30
29
- uses : actions/checkout@v4
31
30
- uses : actions/setup-java@v4
32
31
with :
33
- distribution : ' zulu'
34
- java-version : 11
32
+ distribution : ${{ env.JAVA_DISTRIBUTION }}
33
+ java-version : ${{ env.JAVA_VERSION }}
34
+ cache : ' gradle'
35
35
- name : Setup Gradle
36
- uses : gradle/actions/setup-gradle@v3
36
+ uses : gradle/actions/setup-gradle@v4
37
37
with :
38
38
gradle-version : ${{ env.GRADLE_VERSION }}
39
- - run : gradle assemble build -s
39
+ - run : gradle assemble build test allTests -s
40
40
41
41
publish :
42
42
name : Publish
43
43
needs : test
44
- runs-on : macos -latest
44
+ runs-on : ubuntu -latest
45
45
steps :
46
46
- uses : actions/checkout@v4
47
- # Setup java
48
- # https://github.com/marketplace/actions/setup-java-jdk
49
47
- uses : actions/setup-java@v4
50
48
with :
51
- distribution : ' zulu'
52
- java-version : 11
49
+ distribution : ${{ env.JAVA_DISTRIBUTION }}
50
+ java-version : ${{ env.JAVA_VERSION }}
51
+ cache : ' gradle'
53
52
54
- - name : Test and publish to sonatype
55
- uses : gradle/actions/setup-gradle@v3
53
+ - name : Setup Gradle
54
+ uses : gradle/actions/setup-gradle@v4
56
55
with :
57
56
gradle-version : ${{ env.GRADLE_VERSION }}
58
- arguments :
59
- publishToSonatype
60
- closeAndReleaseStagingRepositories
61
- -s
62
- --warning-mode all
63
- -x test
64
- --build-cache
65
- -Porg.gradle.jvmargs="-XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8"
66
- -Porg.gradle.daemon=false
57
+
58
+ - name : Publish to Maven Central
59
+ run : gradle publishAndReleaseToMavenCentral -s --warning-mode all -x test --build-cache --no-configuration-cache
67
60
env :
68
- PLUGIN_AUTO : true
61
+ ORG_GRADLE_PROJECT_org.gradle.jvmargs : " -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8"
62
+ ORG_GRADLE_PROJECT_org.gradle.daemon : " false"
63
+ ORG_GRADLE_PROJECT_mavenCentralUsername : ${{ env.MAVEN_CENTRAL_USERNAME }}
64
+ ORG_GRADLE_PROJECT_mavenCentralPassword : ${{ env.MAVEN_CENTRAL_PASSWORD }}
65
+ ORG_GRADLE_PROJECT_signingInMemoryKeyId : ${{ env.SIGNING_KEY_ID }}
66
+ ORG_GRADLE_PROJECT_signingInMemoryKeyPassword : ${{ env.SIGNING_PASSWORD }}
67
+ ORG_GRADLE_PROJECT_signingInMemoryKey : ${{ env.GPG_KEY_CONTENTS }}
69
68
70
69
publish-gradle-plugin :
71
70
name : Publish Gradle Plugin
72
71
runs-on : ubuntu-latest
73
72
needs : publish
74
73
steps :
75
- # 检出仓库代码
76
74
- name : Check out repo
77
75
uses : actions/checkout@v4
78
76
79
- # Setup java
80
- # https://github.com/marketplace/actions/setup-java-jdk
81
- - name : Setup Java 11
77
+ - name : Setup Java
82
78
uses : actions/setup-java@v4
83
79
with :
84
- distribution : ' zulu'
85
- java-version : 11
80
+ distribution : ${{ env.JAVA_DISTRIBUTION }}
81
+ java-version : ${{ env.JAVA_VERSION }}
82
+ cache : ' gradle'
86
83
87
- - name : Publish to gradle
88
- uses : gradle/actions/setup-gradle@v3
84
+ - name : Setup Gradle
85
+ uses : gradle/actions/setup-gradle@v4
89
86
with :
90
87
gradle-version : ${{ env.GRADLE_VERSION }}
91
- arguments : |
92
- build
93
- publishPlugins
94
- -s
95
- --warning-mode all
96
- -x test
97
- --build-cache
98
- -Porg.gradle.jvmargs="-XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8"
99
- -Porg.gradle.daemon=false
100
- -Pgradle.publish.key=${{ secrets.GRADLE_PUBLISH_KEY }}
101
- -Pgradle.publish.secret=${{ secrets.GRADLE_PUBLISH_SECRET }}
88
+
89
+ - name : Publish to gradle
90
+ run : |
91
+ gradle build publishPlugins -s --warning-mode all -x test --build-cache
102
92
env :
103
93
PLUGIN_AUTO : true
94
+ ORG_GRADLE_PROJECT_org.gradle.jvmargs : " -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8"
95
+ ORG_GRADLE_PROJECT_org.gradle.daemon : " false"
96
+ GRADLE_PUBLISH_KEY : ${{ secrets.GRADLE_PUBLISH_KEY }}
97
+ GRADLE_PUBLISH_SECRET : ${{ secrets.GRADLE_PUBLISH_SECRET }}
104
98
105
99
create-release :
106
100
name : Create release
@@ -112,22 +106,22 @@ jobs:
112
106
- uses : actions/checkout@v4
113
107
- uses : actions/setup-java@v4
114
108
with :
115
- distribution : ' zulu'
116
- java-version : 11
109
+ distribution : ${{ env.JAVA_DISTRIBUTION }}
110
+ java-version : ${{ env.JAVA_VERSION }}
111
+ cache : ' gradle'
117
112
118
- - name : Create changelog
119
- uses : gradle/actions/setup-gradle@v3
113
+ - name : Setup Gradle
114
+ uses : gradle/actions/setup-gradle@v4
120
115
with :
121
116
gradle-version : ${{ env.GRADLE_VERSION }}
122
- arguments : createChangelog
123
117
124
- # https://github.com/softprops/action-gh-release
125
- # Create gitHub release
118
+ - name : Create changelog
119
+ run : gradle createChangelog
120
+
126
121
- name : Create Github Release
127
122
uses : softprops/action-gh-release@v2
128
123
with :
129
124
token : ${{ secrets.FORTE_TOKEN }}
130
- # draft: true
131
125
body_path : .changelog/${{ github.ref_name }}.md
132
126
generate_release_notes : true
133
- prerelease : ${{ contains(github.ref_name, 'preview') || contains(github.ref_name, 'beta') || contains(github.ref_name, 'alpha') }}
127
+ prerelease : ${{ contains(github.ref_name, 'preview') || contains(github.ref_name, 'beta') || contains(github.ref_name, 'alpha') || contains(github.ref_name, 'RC') }}
0 commit comments