optimize: windows and macos do not start container #193
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "test" | |
on: | |
push: | |
branches: [ test*, "*.*.*" ] | |
pull_request: | |
branches: [ test*, "*.*.*" ] | |
jobs: | |
# job 1 | |
test: | |
name: "test" | |
services: | |
redis: | |
image: redis:7.2 | |
ports: | |
- 6379:6379 | |
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3 | |
nacos: | |
image: nacos/nacos-server:v2.4.2 | |
ports: | |
- 8848:8848 | |
env: | |
MODE: standalone | |
SPRING_SECURITY_ENABLED: false | |
options: --health-cmd="curl -f http://localhost:8848/nacos" --health-interval=10s --health-timeout=5s --health-retries=3 --health-start-period=30s | |
runs-on: "${{ matrix.os }}-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
java: [ 8, 11, 17, 21 ] | |
os: [ | |
ubuntu, | |
macos, | |
windows, # Skip tests, because too many errors in unit-test. | |
] | |
springboot: [ | |
2.7.18 -D spring-framework.version=5.3.31, | |
2.6.15 -D spring-framework.version=5.3.27, | |
2.5.15 -D spring-framework.version=5.3.27, | |
2.4.13 -D spring-framework.version=5.3.13, | |
2.3.12.RELEASE -D spring-framework.version=5.2.15.RELEASE, | |
2.2.13.RELEASE -D spring-framework.version=5.2.12.RELEASE, | |
#2.1.18.RELEASE, | |
#2.0.9.RELEASE, | |
] | |
steps: | |
# step 1 | |
- name: "Checkout" | |
uses: actions/checkout@v3 | |
# step 2 | |
- name: "Use Python 3.x" | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.12' | |
# step 3 | |
- name: "Set up Java JDK" | |
uses: actions/setup-java@v3.12.0 | |
with: | |
distribution: 'zulu' | |
java-version: ${{ matrix.java }} | |
# step 4 | |
## step 4.1: for Ubuntu and MacOS | |
- name: "Test with Maven on '${{ matrix.os }}' OS" | |
if: matrix.os != 'windows' | |
run: | | |
if [ "${{ matrix.os }}" == "macos" ]; then | |
python3 -m ensurepip --upgrade; | |
python3 -m pip install --upgrade pip setuptools; | |
if ! python3 -c "import distutils" &>/dev/null; then | |
python3 -m pip install --upgrade setuptools | |
fi | |
./mvnw -T 4C clean test -P args-for-client-test -P arrch64 -Dspring-boot.version=${{ matrix.springboot }} -e -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
else | |
./mvnw -T 4C clean test -P args-for-client-test -Dspring-boot.version=${{ matrix.springboot }} -e -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
fi | |
## step 4.2: for Windows | |
- name: "Build with Maven on 'windows' OS (Skip tests)" | |
if: matrix.os == 'windows' | |
run: | # Skip tests, because too many errors in unit-test. | |
./mvnw.cmd -version; | |
./mvnw.cmd clean install -P args-for-client-test -DskipTests -D spring-boot.version=${{ matrix.springboot }} -e -B -D org.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
# job 2 | |
test-springboot3x: | |
name: "test-springboot3.x" | |
runs-on: "${{ matrix.os }}-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
java: [ 17, 21 ] | |
os: [ | |
ubuntu, | |
macos, | |
windows, # Skip tests, because too many errors in unit-test. | |
] | |
springboot: [ | |
3.2.0 -D spring-framework.version=6.1.1, | |
3.1.6 -D spring-framework.version=6.0.14, | |
3.0.13 -D spring-framework.version=6.0.14, | |
] | |
steps: | |
# step 1 | |
- name: "Checkout" | |
uses: actions/checkout@v3 | |
# step 2 | |
- name: "Use Python 3.x" | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.12' | |
# step 3 | |
- name: "Set up Java JDK" | |
uses: actions/setup-java@v3.12.0 | |
with: | |
distribution: 'zulu' | |
java-version: ${{ matrix.java }} | |
# step 4 | |
## step 4.1: for Ubuntu and MacOS | |
- name: "Test with Maven on '${{ matrix.os }}' OS" | |
if: matrix.os != 'windows' | |
run: | | |
if [ "${{ matrix.os }}" == "macos" ]; then | |
python3 -m ensurepip --upgrade; | |
python3 -m pip install --upgrade pip setuptools; | |
if ! python3 -c "import distutils" &>/dev/null; then | |
python3 -m pip install --upgrade setuptools | |
fi | |
./mvnw -T 4C clean test -P args-for-client-test -P arrch64 -Dspring-boot.version=${{ matrix.springboot }} -e -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
else | |
./mvnw -T 4C clean test -P args-for-client-test -Dspring-boot.version=${{ matrix.springboot }} -e -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
fi | |
## step 4.2: for Windows | |
- name: "Build with Maven on 'windows' OS (Skip tests)" | |
if: matrix.os == 'windows' | |
run: | # Skip tests, because too many errors in unit-test. | |
./mvnw.cmd -version; | |
./mvnw.cmd clean install -P args-for-client-test -DskipTests -D spring-boot.version=${{ matrix.springboot }} -e -B -D org.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn; | |
# job 3 | |
test-arm64: | |
name: "test-arm64" | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
springboot: [ | |
#2.7.18 -Dspring-framework.version=5.3.31, # The maven-compiler-plugin will throw an error for an unknown reason. | |
#2.6.15 -Dspring-framework.version=5.3.27, # The maven-compiler-plugin will throw an error for an unknown reason. | |
#2.5.15 -Dspring-framework.version=5.3.27, # The maven-compiler-plugin will throw an error for an unknown reason. | |
2.4.13 -Dspring-framework.version=5.3.13, | |
2.3.12.RELEASE -Dspring-framework.version=5.2.15.RELEASE, | |
2.2.13.RELEASE -Dspring-framework.version=5.2.12.RELEASE, | |
#2.1.18.RELEASE, | |
#2.0.9.RELEASE, | |
] | |
steps: | |
# step 1 | |
- name: "Checkout" | |
uses: actions/checkout@v3 | |
# step 2 | |
- name: "Set up QEMU" | |
id: qemu | |
uses: docker/setup-qemu-action@v3 | |
# step 3 | |
- name: "Build with Maven on 'arm64v8/ubuntu:20.04' OS (Skip tests)" | |
run: | | |
docker run --rm -v ${{ github.workspace }}:/ws:rw --workdir=/ws \ | |
arm64v8/ubuntu:20.04 \ | |
bash -exc 'apt-get update -y && \ | |
apt-get install maven -y && \ | |
apt-get install -y python3 python3-pip python3-distutils && \ | |
apt-get install -y build-essential && \ | |
mvn -version && \ | |
mvn -T 4C clean install \ | |
-Dspring-boot.version=${{ matrix.springboot }} \ | |
-Prelease-seata \ | |
-DskipTests \ | |
-e -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' |