(improvement)(build) Support CI for both JDK 8 and JDK 11 versions simultaneously. (#1437)

This commit is contained in:
lexluo09
2024-07-20 12:08:56 +08:00
committed by GitHub
parent b5768b27aa
commit 7d64aa893c
4 changed files with 58 additions and 25 deletions

View File

@@ -1,4 +1,4 @@
name: supersonic RHEL/CentOS CI name: supersonic CentOS CI
on: on:
push: push:
@@ -14,31 +14,48 @@ jobs:
container: container:
image: quay.io/centos/centos:stream8 # 使用 CentOS Stream 8 容器 image: quay.io/centos/centos:stream8 # 使用 CentOS Stream 8 容器
strategy:
matrix:
java-version: [8, 11] # 定义要测试的JDK版本
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Reset DNF repositories - name: Reset DNF repositories
run: | run: |
cd /etc/yum.repos.d/ cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
- name: Update DNF package index - name: Update DNF package index
run: dnf makecache run: dnf makecache
- name: Install Java and Maven with retry - name: Install Java and Maven with retry
run: | run: |
if [ ${{ matrix.java-version }} -eq 8 ]; then
for i in {1..5}; do for i in {1..5}; do
dnf install -y java-1.8.0-openjdk-devel maven && break || sleep 15 dnf install -y java-1.8.0-openjdk-devel maven && break || sleep 15
done done
else
for i in {1..5}; do
dnf install -y java-11-openjdk-devel maven && break || sleep 15
done
fi
- name: Verify Java and Maven installation - name: Verify Java and Maven installation
run: | run: |
java -version java -version
mvn -version mvn -version
- name: Cache Maven packages - name: Cache Maven packages
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ~/.m2 path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2 restore-keys: ${{ runner.os }}-m2
- name: Build with Maven - name: Build with Maven
run: mvn -B package --file pom.xml run: mvn -B package --file pom.xml
- name: Test with Maven - name: Test with Maven
run: mvn test run: mvn test

View File

@@ -12,13 +12,17 @@ jobs:
build: build:
runs-on: macos-latest # Specify a macOS runner runs-on: macos-latest # Specify a macOS runner
strategy:
matrix:
java-version: [8, 11] # Define the JDK versions to test
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Set up JDK 8 - name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v2 uses: actions/setup-java@v2
with: with:
java-version: '8' java-version: ${{ matrix.java-version }}
distribution: 'adopt' distribution: 'adopt'
- name: Cache Maven packages - name: Cache Maven packages

View File

@@ -7,25 +7,33 @@ on:
pull_request: pull_request:
branches: branches:
- master - master
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy:
matrix:
java-version: [8, 11] # 定义要测试的JDK版本
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Set up JDK 8
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v2 uses: actions/setup-java@v2
with: with:
java-version: '8' java-version: ${{ matrix.java-version }}
distribution: 'adopt' distribution: 'adopt'
- name: Cache Maven packages - name: Cache Maven packages
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ~/.m2 path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2 restore-keys: ${{ runner.os }}-m2
- name: Build with Maven - name: Build with Maven
run: mvn -B package --file pom.xml run: mvn -B package --file pom.xml
- name: Test with Maven - name: Test with Maven
run: mvn test run: mvn test

View File

@@ -12,13 +12,17 @@ jobs:
build: build:
runs-on: windows-latest # Specify a Windows runner runs-on: windows-latest # Specify a Windows runner
strategy:
matrix:
java-version: [8, 11]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Set up JDK 8 - name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v2 uses: actions/setup-java@v2
with: with:
java-version: '8' java-version: ${{ matrix.java-version }}
distribution: 'adopt' distribution: 'adopt'
- name: Cache Maven packages - name: Cache Maven packages