Skip to content

Commit 68dcc3e

Browse files
committed
docs(readme): 添加github action
添加github action
1 parent dece98c commit 68dcc3e

File tree

2 files changed

+53
-20
lines changed

2 files changed

+53
-20
lines changed

.github/workflows/release.yml

Lines changed: 46 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,54 @@
1-
name: Publish package to the Maven Central Repository
1+
name: deploy
2+
23
on:
3-
push:
4-
branches:
5-
- master
4+
# 支持手动触发构建
5+
workflow_dispatch:
6+
release:
7+
# 创建release的时候触发
8+
types: [published]
69
jobs:
7-
publish:
10+
deploy:
811
runs-on: ubuntu-latest
12+
913
steps:
14+
# 拉取源码
1015
- uses: actions/checkout@v2
11-
- name: Set up Maven Central Repository
12-
uses: actions/setup-java@v2
16+
# 安装JDK环境
17+
- name: Set up JDK 11
18+
uses: actions/setup-java@v1
1319
with:
14-
java-version: '17'
15-
distribution: 'adopt'
16-
server-id: ossrh
17-
server-username: MAVEN_USERNAME
18-
server-password: MAVEN_PASSWORD
19-
- id: install-secret-key
20-
name: Install gpg secret key
21-
run: |
22-
cat <(echo -e "${{ secrets.OSSRH_GPG_SECRET_KEY }}") | gpg --batch --import
23-
gpg --list-secret-keys --keyid-format LONG
24-
- name: Publish package
20+
java-version: 11
21+
# 设置Maven中央仓库配置
22+
- name: Set up Apache Maven Central
23+
uses: actions/setup-java@v1
24+
with:
25+
java-version: 11
26+
server-id: releases
27+
# Nexus用户名环境变量
28+
server-username: OSSRH_USERNAME
29+
# Nexus密码环境变量
30+
server-password: OSSRH_PASSWORD
31+
# gpg短密码环境变量
32+
gpg-passphrase: OSSRH_GPG_SECRET_KEY
33+
# gpg私钥
34+
gpg-private-key: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
35+
# 推送jar包至maven中央仓库
36+
- name: Publish to Apache Maven Central
37+
# 执行maven deploy命令
38+
run: mvn clean deploy
39+
# 环境变量设置
2540
env:
41+
# Nexus用户名,如果觉得不想暴露也可以配置到secrets中
2642
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
27-
MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
28-
run: mvn --batch-mode -Dgpg.passphrase=${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }} clean deploy
43+
# Nexus密码
44+
MAVEN_CENTRAL_TOKEN: ${{ secrets.OSSRH_PASSWORD }}
45+
# gpg短密码
46+
MAVEN_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_SECRET_KEY }}
47+
# Nexus自动部署
48+
- name: Release on nexus
49+
uses: monkeyWie/maven-nexus-release@v1
50+
with:
51+
# Nexus用户名
52+
maven-repo-server-username: ${{ secrets.OSSRH_USERNAME }}
53+
# Nexus密码
54+
maven-repo-server-password: ${{ secrets.OSSRH_PASSWORD }}

pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,13 @@
129129
</goals>
130130
</execution>
131131
</executions>
132+
<configuration>
133+
<!-- 这个configuration必须配置,用于gpg非交互式密码输入 -->
134+
<gpgArguments>
135+
<arg>--pinentry-mode</arg>
136+
<arg>loopback</arg>
137+
</gpgArguments>
138+
</configuration>
132139
</plugin>
133140
</plugins>
134141
</build>

0 commit comments

Comments
 (0)