Skip to content
This repository was archived by the owner on Feb 18, 2024. It is now read-only.

Commit 3dda3b9

Browse files
authored
Merge pull request #376 from sofastack/youji-dev
add release for snapshot
2 parents 4dedaec + 0116b66 commit 3dda3b9

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
2+
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
3+
4+
name: SOFA Serverless Runtime Snapshot
5+
6+
## https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#release
7+
## trigger manually
8+
on:
9+
workflow_dispatch:
10+
11+
jobs:
12+
build_and_test:
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- uses: actions/checkout@v3
17+
- name: Set up JDK 8
18+
uses: actions/setup-java@v3
19+
with:
20+
java-version: '8'
21+
distribution: 'temurin'
22+
cache: maven
23+
- name: Build with Maven
24+
working-directory: sofa-serverless-runtime
25+
run: mvn clean install -DskipTests -B -U -e && sh ./check_format.sh
26+
27+
- name: Set up Docker
28+
uses: docker/metadata-action@v3
29+
with:
30+
images: |
31+
node:14
32+
33+
- name: get sofa-runtime version & update sofa-runtime version for all test sample app
34+
run: |
35+
serverless_runtime_version=$(find sofa-serverless-runtime/sofa-serverless-common -name "*.jar" |grep -v source |sed "s/.*sofa-serverless-common-\(.*\).jar/\1/")
36+
echo "升级sofa-runtime version to $serverless_runtime_version"
37+
for testsample in `find samples -name "*[^3|^dubbo]-samples"`;do sed -i "s/<sofa.serverless.runtime.version>.*<\/sofa.serverless.runtime.version>/<sofa.serverless.runtime.version>$serverless_runtime_version<\/sofa.serverless.runtime.version>/g" $testsample/pom.xml ;done
38+
for testsample in `find samples -name "*[^3|^dubbo]-samples"`;do if cat $testsample/pom.xml |grep "<sofa.serverless.runtime.version>"|grep $serverless_runtime_version;then echo "版本校验通过";else echo "版本校验失败";exit 1;fi;done
39+
40+
- name: Test Env prepare
41+
run: |
42+
sudo apt-get update >>/tmp/envprepare.out
43+
sudo apt-get install -y expect >>/tmp/envprepare.out
44+
docker pull mongo:7.0.2-jammy
45+
docker run --name mongodb -d -p 27017:27017 -v /home/runner/work/data:/data/db mongo:7.0.2-jammy
46+
docker pull zookeeper:3.9.0
47+
docker run -p 2181:2181 -it --name zookeeper --restart always -d zookeeper:3.9.0
48+
sudo apt-get install redis-server -y
49+
sudo systemctl start redis-server
50+
sudo cp .github/workflows/ccbin/arkctl /usr/bin/arkctl
51+
52+
- name: Run jdk8 serverless runtime test
53+
run: |
54+
set -e
55+
bash .github/workflows/ccbin/start.sh jdk8
56+
57+
release_for_jdk8:
58+
needs: build_and_test
59+
runs-on: ubuntu-latest
60+
steps:
61+
- uses: actions/checkout@v3
62+
- name: Set up JDK 8
63+
uses: actions/setup-java@v3
64+
with:
65+
java-version: '8'
66+
distribution: 'temurin'
67+
cache: maven
68+
server-id: ossrh
69+
server-username: MAVEN_USERNAME
70+
server-password: MAVEN_PASSWORD
71+
gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} # Value of the GPG private key to import
72+
gpg-passphrase: MAVEN_GPG_PASSPHRASE # env variable for GPG private key passphrase
73+
- name: Build with Maven
74+
run: mvn --batch-mode deploy -DskipTests -Psnapshot
75+
working-directory: sofa-serverless-runtime
76+
env:
77+
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
78+
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
79+
MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }}

0 commit comments

Comments
 (0)