Skip to content

Commit 0843e8d

Browse files
committed
Workflows: devtoolset-12 and minor fixes (1.3)
This PR is a combined backport to `v1.3-ossivalis` of the following PRs: - duckdb#248 Update GH Windows runners - duckdb#253 Use ninja for macOS CI builds - duckdb#254 Use devtoolset-12 for Linux glibc builds
1 parent c9f474c commit 0843e8d

File tree

2 files changed

+74
-21
lines changed

2 files changed

+74
-21
lines changed

.github/workflows/Java.yml

Lines changed: 71 additions & 19 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,46 @@ 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-1.8.0-openjdk/bin/java -version
71+
cd /duckdb
72+
/usr/lib/jvm/jre-1.8.0-openjdk/bin/java \
73+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
74+
org.duckdb.TestDuckDBJDBC
75+
rm ./test1.db
76+
"
77+
78+
- name: JDBC Tests
79+
shell: bash
80+
if: ${{ inputs.skip_tests != 'true' }}
81+
run: |
82+
cat /etc/os-release
83+
${JAVA_HOME_21_X64}/bin/java -version
84+
${JAVA_HOME_21_X64}/bin/java \
85+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
86+
org.duckdb.TestDuckDBJDBC
6087
6188
- name: Deploy
6289
shell: bash
@@ -76,7 +103,6 @@ jobs:
76103
needs: java-linux-amd64
77104
env:
78105
MANYLINUX_IMAGE: quay.io/pypa/manylinux_2_28_aarch64
79-
MANYLINUX_PACKAGES: java-1.8.0-openjdk-devel ninja-build
80106
steps:
81107
- uses: actions/checkout@v4
82108
with:
@@ -90,18 +116,46 @@ jobs:
90116
-e GEN=ninja \
91117
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
92118
${{ env.MANYLINUX_IMAGE }} \
93-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb release'
94-
95-
- name: JDBC Tests
119+
bash -c "
120+
set -e
121+
cat /etc/os-release
122+
dnf install -y \
123+
java-1.8.0-openjdk-devel \
124+
ninja-build \
125+
gcc-toolset-12-gcc-c++
126+
source /opt/rh/gcc-toolset-12/enable
127+
make -C /duckdb release
128+
"
129+
130+
- name: JDBC Tests EL8
96131
shell: bash
97132
if: ${{ inputs.skip_tests != 'true' }}
98133
run: |
99134
docker run \
100135
-v.:/duckdb \
101-
-e GEN=ninja \
102-
-e JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \
103136
${{ env.MANYLINUX_IMAGE }} \
104-
bash -c 'dnf install ${{ env.MANYLINUX_PACKAGES }} -y && make -C /duckdb test'
137+
bash -c "
138+
set -e
139+
cat /etc/os-release
140+
dnf install -y \
141+
java-1.8.0-openjdk
142+
/usr/lib/jvm/jre-1.8.0-openjdk/bin/java -version
143+
cd /duckdb
144+
/usr/lib/jvm/jre-1.8.0-openjdk/bin/java \
145+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
146+
org.duckdb.TestDuckDBJDBC
147+
rm ./test1.db
148+
"
149+
150+
- name: JDBC Tests
151+
shell: bash
152+
if: ${{ inputs.skip_tests != 'true' }}
153+
run: |
154+
cat /etc/os-release
155+
${JAVA_HOME_21_X64}/bin/java -version
156+
${JAVA_HOME_21_X64}/bin/java \
157+
-cp ./build/release/duckdb_jdbc_tests.jar:./build/release/duckdb_jdbc.jar \
158+
org.duckdb.TestDuckDBJDBC
105159
106160
- name: Deploy
107161
shell: bash
@@ -208,7 +262,7 @@ jobs:
208262
209263
java-windows-amd64:
210264
name: Java Windows (amd64)
211-
runs-on: windows-2019
265+
runs-on: windows-latest
212266
needs: java-linux-amd64
213267
steps:
214268
- uses: actions/checkout@v4
@@ -247,15 +301,13 @@ jobs:
247301
name: Java OSX (Universal)
248302
runs-on: macos-14
249303
needs: java-linux-amd64
304+
env:
305+
GEN: ninja
250306
steps:
251307
- uses: actions/checkout@v4
252308
with:
253309
fetch-depth: 0
254310

255-
- uses: actions/setup-python@v5
256-
with:
257-
python-version: "3.12"
258-
259311
- name: Build
260312
shell: bash
261313
run: make release

scripts/upload-assets-to-staging.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
# <folder> : Folder to upload to
77
# <file> : File to be uploaded
88

9+
set -e
10+
set -x
11+
912
if [ -z "$1" ] || [ -z "$2" ]; then
1013
echo "Usage: ./scripts/upload-staging-asset.sh <folder> <file1> [... <fileN>]"
1114
exit 1
@@ -56,8 +59,6 @@ if [ "$OVERRIDE_GIT_DESCRIBE" ]; then
5659
TARGET="$TARGET/$OVERRIDE_GIT_DESCRIBE"
5760
fi
5861

59-
python3 -m pip install awscli
60-
6162
for var in "${@: 2}"
6263
do
6364
aws s3 cp $var s3://duckdb-staging/$TARGET/$GITHUB_REPOSITORY/$FOLDER/ $DRY_RUN_PARAM --region us-east-2

0 commit comments

Comments
 (0)