Skip to content

Commit ee7389d

Browse files
committed
Use devtoolset-12 for Linux glibc builds
This PR brings in the build changes from mainline duckdb/duckdb#17776 fix. Additionally it enabled test runs on `ubuntu-latest` along with existing EL8 runs.
1 parent 5243e14 commit ee7389d

File tree

1 file changed

+64
-14
lines changed

1 file changed

+64
-14
lines changed

.github/workflows/Java.yml

Lines changed: 64 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ jobs:
3131
needs: format-check
3232
env:
3333
MANYLINUX_IMAGE: quay.io/pypa/manylinux_2_28_x86_64
34-
MANYLINUX_PACKAGES: java-1.8.0-openjdk-devel ninja-build
3534
steps:
3635
- uses: actions/checkout@v4
3736
with:
@@ -45,18 +44,44 @@ jobs:
4544
-e GEN=ninja \
4645
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
4746
${{ env.MANYLINUX_IMAGE }} \
48-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb release'
49-
50-
- name: JDBC Tests
47+
bash -c "
48+
set -e
49+
cat /etc/os-release
50+
dnf install -y \
51+
java-1.8.0-openjdk-devel \
52+
ninja-build \
53+
gcc-toolset-12-gcc-c++
54+
source /opt/rh/gcc-toolset-12/enable
55+
make -C /duckdb release
56+
"
57+
58+
- name: JDBC Tests EL8
5159
shell: bash
5260
if: ${{ inputs.skip_tests != 'true' }}
5361
run: |
5462
docker run \
5563
-v.:/duckdb \
56-
-e GEN=ninja \
57-
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
5864
${{ env.MANYLINUX_IMAGE }} \
59-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb test'
65+
bash -c "
66+
set -e
67+
cat /etc/os-release
68+
dnf install -y \
69+
java-1.8.0-openjdk
70+
/usr/lib/jvm/jre-8/bin/java -version
71+
cd /duckdb
72+
/usr/lib/jvm/jre-8/bin/java \
73+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
74+
org.duckdb.TestDuckDBJDBC
75+
"
76+
77+
- name: JDBC Tests
78+
shell: bash
79+
if: ${{ inputs.skip_tests != 'true' }}
80+
run: |
81+
cat /etc/os-release
82+
${JAVA_HOME_21_X64}/bin/java
83+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
84+
org.duckdb.TestDuckDBJDBC
6085
6186
- name: Deploy
6287
shell: bash
@@ -76,7 +101,6 @@ jobs:
76101
needs: java-linux-amd64
77102
env:
78103
MANYLINUX_IMAGE: quay.io/pypa/manylinux_2_28_aarch64
79-
MANYLINUX_PACKAGES: java-1.8.0-openjdk-devel ninja-build
80104
steps:
81105
- uses: actions/checkout@v4
82106
with:
@@ -90,18 +114,44 @@ jobs:
90114
-e GEN=ninja \
91115
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
92116
${{ env.MANYLINUX_IMAGE }} \
93-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb release'
94-
95-
- name: JDBC Tests
117+
bash -c "
118+
set -e
119+
cat /etc/os-release
120+
dnf install -y \
121+
java-1.8.0-openjdk-devel \
122+
ninja-build \
123+
gcc-toolset-12-gcc-c++
124+
source /opt/rh/gcc-toolset-12/enable
125+
make -C /duckdb release
126+
"
127+
128+
- name: JDBC Tests EL8
96129
shell: bash
97130
if: ${{ inputs.skip_tests != 'true' }}
98131
run: |
99132
docker run \
100133
-v.:/duckdb \
101-
-e GEN=ninja \
102-
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
103134
${{ env.MANYLINUX_IMAGE }} \
104-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb test'
135+
bash -c "
136+
set -e
137+
cat /etc/os-release
138+
dnf install -y \
139+
java-1.8.0-openjdk
140+
/usr/lib/jvm/jre-8/bin/java -version
141+
cd /duckdb
142+
/usr/lib/jvm/jre-8/bin/java \
143+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
144+
org.duckdb.TestDuckDBJDBC
145+
"
146+
147+
- name: JDBC Tests
148+
shell: bash
149+
if: ${{ inputs.skip_tests != 'true' }}
150+
run: |
151+
cat /etc/os-release
152+
${JAVA_HOME_21_X64}/bin/java
153+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
154+
org.duckdb.TestDuckDBJDBC
105155
106156
- name: Deploy
107157
shell: bash

0 commit comments

Comments
 (0)