@@ -106,27 +106,88 @@ jobs:
106106 -e ARROW_USE_MESON=ON
107107 runs-on : ubuntu-latest
108108 title : AMD64 Ubuntu Meson
109+ # TODO: We should remove this "continue-on-error: true" once GH-47207 is resolved
110+ - continue-on-error : true
111+ envs :
112+ - DEBIAN=13
113+ image : debian-cpp
114+ run-options : >-
115+ -e CMAKE_CXX_STANDARD=23
116+ runs-on : ubuntu-latest
117+ title : AMD64 Debian C++23
118+ env :
119+ ARCHERY_DEBUG : 1
120+ ARROW_ENABLE_TIMING_TESTS : OFF
121+ DOCKER_VOLUME_PREFIX : " .docker/"
122+ steps :
123+ - name : Checkout Arrow
124+ uses : actions/checkout@v6
125+ with :
126+ fetch-depth : 0
127+ submodules : recursive
128+ - name : Cache Docker Volumes
129+ uses : actions/cache@v5
130+ with :
131+ path : .docker
132+ key : extra-${{ matrix.image }}-${{ hashFiles('cpp/**') }}
133+ restore-keys : extra-${{ matrix.image }}-
134+ - name : Setup Python
135+ uses : actions/setup-python@v6
136+ with :
137+ python-version : 3
138+ - name : Setup Archery
139+ run : python3 -m pip install -e dev/archery[docker]
140+ - name : Execute Docker Build
141+ continue-on-error : ${{ matrix.continue-on-error || false }}
142+ env :
143+ ARCHERY_DOCKER_USER : ${{ secrets.DOCKERHUB_USER }}
144+ ARCHERY_DOCKER_PASSWORD : ${{ secrets.DOCKERHUB_TOKEN }}
145+ ENVS : ${{ toJSON(matrix.envs) }}
146+ run : |
147+ # GH-40558: reduce ASLR to avoid ASAN/LSAN crashes
148+ sudo sysctl -w vm.mmap_rnd_bits=28
149+ source ci/scripts/util_enable_core_dumps.sh
150+ if [ "${ENVS}" != "null" ]; then
151+ echo "${ENVS}" | jq -r '.[]' | while read env; do
152+ echo "${env}" >> .env
153+ done
154+ fi
155+ archery docker run ${{ matrix.run-options || '' }} ${{ matrix.image }}
156+ - name : Docker Push
157+ if : >-
158+ success() &&
159+ github.event_name == 'push' &&
160+ github.repository == 'apache/arrow' &&
161+ github.ref_name == 'main'
162+ env :
163+ ARCHERY_DOCKER_USER : ${{ secrets.DOCKERHUB_USER }}
164+ ARCHERY_DOCKER_PASSWORD : ${{ secrets.DOCKERHUB_TOKEN }}
165+ continue-on-error : true
166+ run : archery docker push ${{ matrix.image }}
167+
168+ cuda :
169+ needs : check-labels
170+ name : ${{ matrix.title }}
171+ runs-on : " runs-on=${{ github.run_id }}/family=g4dn.xlarge/image=ubuntu24-gpu-x64"
172+ if : >-
173+ needs.check-labels.outputs.force == 'true' ||
174+ contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra') ||
175+ contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra: C++')
176+ timeout-minutes : 75
177+ strategy :
178+ fail-fast : false
179+ matrix :
180+ include :
109181 - envs :
110182 - CUDA=13.0.2
111183 - UBUNTU=24.04
112184 image : ubuntu-cuda-cpp
113- runs-on : " runs-on=${{ github.run_id }}/family=g4dn.xlarge/image=ubuntu24-gpu-x64"
114185 title : AMD64 Ubuntu 24 CUDA 13.0.2
115186 - envs :
116187 - CUDA=11.7.1
117188 - UBUNTU=22.04
118189 image : ubuntu-cuda-cpp
119- runs-on : " runs-on=${{ github.run_id }}/family=g4dn.xlarge/image=ubuntu24-gpu-x64"
120190 title : AMD64 Ubuntu 22 CUDA 11.7.1
121- # TODO: We should remove this "continue-on-error: true" once GH-47207 is resolved
122- - continue-on-error : true
123- envs :
124- - DEBIAN=13
125- image : debian-cpp
126- run-options : >-
127- -e CMAKE_CXX_STANDARD=23
128- runs-on : ubuntu-latest
129- title : AMD64 Debian C++23
130191 env :
131192 ARCHERY_DEBUG : 1
132193 ARROW_ENABLE_TIMING_TESTS : OFF
@@ -450,6 +511,7 @@ jobs:
450511 report-extra-cpp :
451512 if : github.event_name == 'schedule' && always()
452513 needs :
514+ - cuda
453515 - docker
454516 - jni-linux
455517 - jni-macos
0 commit comments