Skip to content

Commit 3f43724

Browse files
committed
chore: prepare ci 3.9.5.1
1 parent 8a42099 commit 3f43724

7 files changed

Lines changed: 211 additions & 207 deletions

File tree

.github/Dockerfile.ci

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
FROM eclipse-temurin:21-jdk-jammy
2+
3+
ARG MAVEN_VERSION=3.9.9
4+
5+
RUN apt-get update && apt-get install -y --no-install-recommends \
6+
libcppunit-dev \
7+
libsasl2-dev \
8+
libsasl2-modules \
9+
libssl-dev \
10+
build-essential \
11+
autoconf \
12+
automake \
13+
libtool \
14+
pkg-config \
15+
git \
16+
curl \
17+
openssl \
18+
hostname \
19+
&& curl -fsSL https://archive.apache.org/dist/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
20+
| tar -xz -C /opt \
21+
&& ln -s /opt/apache-maven-${MAVEN_VERSION}/bin/mvn /usr/local/bin/mvn \
22+
&& rm -rf /var/lib/apt/lists/* \
23+
&& useradd -m -u 1001 -s /bin/bash builder
24+
25+
USER builder

.github/workflows/ci.yaml

Lines changed: 69 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -15,74 +15,103 @@
1515
# specific language governing permissions and limitations
1616
# under the License.
1717

18-
# This workflow will build a Java project with Maven
19-
# See also:
20-
# https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
21-
2218
name: CI
2319

2420
on:
2521
push:
26-
branches: [ '*' ]
22+
branches: ['develop/**', 'release/**', 'master']
2723
pull_request:
28-
branches: [ '*' ]
24+
branches: ['develop/**', 'release/**', 'master']
25+
26+
concurrency:
27+
group: ${{ github.workflow }}-${{ github.ref }}
28+
cancel-in-progress: true
2929

3030
jobs:
31-
mvn:
32-
strategy:
33-
matrix:
34-
profile:
35-
- name: 'full-build-jdk8'
36-
jdk: 8
37-
args: '-Pfull-build apache-rat:check verify -DskipTests spotbugs:check checkstyle:check'
38-
- name: 'full-build-jdk11'
39-
jdk: 11
40-
args: '-Pfull-build apache-rat:check verify -DskipTests spotbugs:check checkstyle:check'
41-
- name: 'full-build-java-tests'
42-
jdk: 11
43-
args: '-Pfull-build verify -Dsurefire-forkcount=1 -DskipCppUnit -Dsurefire.rerunFailingTestsCount=5'
44-
- name: 'full-build-cppunit-tests'
45-
jdk: 11
46-
args: '-Pfull-build verify -Dtest=_ -DfailIfNoTests=false'
47-
fail-fast: false
48-
timeout-minutes: 360
49-
runs-on: ubuntu-latest
31+
compile:
32+
name: Compile + Checkstyle
33+
runs-on: ubuntu-24.04
34+
timeout-minutes: 30
35+
steps:
36+
- uses: actions/checkout@v4
37+
- uses: actions/setup-java@v4
38+
with:
39+
java-version: 21
40+
distribution: temurin
41+
cache: maven
42+
- name: Install C Dependencies
43+
run: |
44+
sudo apt-get update
45+
sudo apt-get install -y libcppunit-dev libsasl2-dev
46+
- name: Compile and check style
47+
run: mvn -B -V -e -ntp -Pfull-build verify -DskipTests checkstyle:check
48+
49+
java-tests:
50+
name: Java Tests
51+
runs-on: ubuntu-24.04
52+
timeout-minutes: 120
53+
needs: compile
5054
steps:
5155
- uses: actions/checkout@v4
52-
- name: Set up JDK ${{ matrix.profile.jdk }}
53-
uses: actions/setup-java@v4
56+
- uses: actions/setup-java@v4
5457
with:
55-
java-version: ${{ matrix.profile.jdk }}
58+
java-version: 21
5659
distribution: temurin
57-
cache: 'maven'
58-
- name: Show the first log message
59-
run: git log -n1
60+
cache: maven
6061
- name: Install C Dependencies
6162
run: |
62-
sudo apt update
63-
sudo apt install -y libcppunit-dev libsasl2-dev
64-
- name: Build with Maven (${{ matrix.profile.name }})
65-
run: mvn -B -V -e -ntp "-Dstyle.color=always" ${{ matrix.profile.args }}
66-
env:
67-
MAVEN_OPTS: -Djansi.force=true
63+
sudo apt-get update
64+
sudo apt-get install -y libcppunit-dev libsasl2-dev
65+
- name: Run Java tests
66+
run: mvn -B -V -e -ntp -Pfull-build verify -Dsurefire-forkcount=1 -DskipCppUnit
6867
- name: Upload unit test results
6968
if: ${{ failure() }}
7069
uses: actions/upload-artifact@v4
7170
with:
72-
name: surefire-reports-${{ matrix.profile.name }}
71+
name: surefire-reports
7372
path: ./**/target/surefire-reports/
7473
if-no-files-found: ignore
7574
- name: Upload integration test results
7675
if: ${{ failure() }}
7776
uses: actions/upload-artifact@v4
7877
with:
79-
name: failsafe-reports-${{ matrix.profile.name }}
78+
name: failsafe-reports
8079
path: ./**/target/failsafe-reports/
8180
if-no-files-found: ignore
81+
82+
c-tests:
83+
name: C Tests
84+
runs-on: ubuntu-24.04
85+
timeout-minutes: 60
86+
needs: compile
87+
steps:
88+
- uses: actions/checkout@v4
89+
- uses: actions/setup-java@v4
90+
with:
91+
java-version: 21
92+
distribution: temurin
93+
cache: maven
94+
- name: Install C Dependencies
95+
run: |
96+
sudo apt-get update
97+
sudo apt-get install -y libcppunit-dev libsasl2-dev
98+
- name: Show environment
99+
run: openssl version && java -version 2>&1 | head -1
100+
- name: Run C tests
101+
run: mvn -B -V -e -ntp -Pfull-build verify -Dtest=_ -Dsurefire.failIfNoSpecifiedTests=false
82102
- name: Upload cppunit test logs
83103
if: ${{ failure() }}
84104
uses: actions/upload-artifact@v4
85105
with:
86-
name: cppunit-logs-${{ matrix.profile.name }}
106+
name: cppunit-logs
87107
path: ./zookeeper-client/zookeeper-client-c/target/c/TEST-*.txt
88108
if-no-files-found: ignore
109+
- name: Upload ZK server logs
110+
if: ${{ failure() }}
111+
uses: actions/upload-artifact@v4
112+
with:
113+
name: zk-server-logs
114+
path: |
115+
/tmp/zk.log
116+
/tmp/certs/gencerts.stderr
117+
if-no-files-found: ignore

.github/workflows/e2e.yaml

Lines changed: 0 additions & 79 deletions
This file was deleted.

.github/workflows/manual.yaml

Lines changed: 0 additions & 78 deletions
This file was deleted.

0 commit comments

Comments
 (0)