6060 - name : Install Dependencies for Linux
6161 if : runner.os == 'Linux'
6262 run : |
63- # leverage ccache
6463 export PATH=/usr/lib/ccache:$PATH
6564
6665 sudo apt update -y
@@ -109,11 +108,26 @@ jobs:
109108 libplasma-dev=11.0.0-1 \
110109 libarrow-cuda-dev=11.0.0-1
111110
111+ # install clang-format
112+ sudo curl -L https://github.com/muttleyxd/clang-tools-static-binaries/releases/download/master-22538c65/clang-format-8_linux-amd64 --output /usr/bin/clang-format
113+ sudo chmod +x /usr/bin/clang-format
114+
115+ # avoid possible permission errors
116+ ccache -o cache_dir=~/.ccache
117+ sudo mkdir -p ~/.ccache
118+ sudo chmod -R a+wrx ~/.ccache
119+
112120 # install pyarrow from scratch
113121 export PYARROW_WITH_PARQUET=1
114122 export PYARROW_WITH_ORC=1
115123 export PYARROW_WITH_DATASET=1
116- sudo -E pip3 install --no-binary pyarrow pyarrow==11.0.0
124+ export PYARROW_BUILD_VERBOSE=1
125+ export PYARROW_PARALLEL=$(nproc)
126+ export PYARROW_CMAKE_OPTIONS="-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
127+ sudo -E env PATH=$PATH pip3 install --no-binary pyarrow pyarrow==11.0.0
128+
129+ # restore the permission of ccache directory
130+ sudo chmod -R a+wrx ~/.ccache
117131
118132 # install python packages for codegen, and io adaptors
119133 sudo pip3 install -U "Pygments>=2.4.1"
@@ -122,19 +136,13 @@ jobs:
122136 # install linters
123137 sudo pip3 install auditwheel black isort flake8 twine
124138
125- # install clang-format
126- sudo curl -L https://github.com/muttleyxd/clang-tools-static-binaries/releases/download/master-22538c65/clang-format-8_linux-amd64 --output /usr/bin/clang-format
127- sudo chmod +x /usr/bin/clang-format
128-
129- # install latest ccache
130- wget https://github.com/ccache/ccache/releases/download/v4.7.3/ccache-4.7.3-linux-x86_64.tar.xz
131- tar -xf ccache-4.7.3-linux-x86_64.tar.xz
132- sudo mv ccache-4.7.3-linux-x86_64/ccache /usr/bin/ccache
139+ - name : Setup tmate session
140+ if : false
141+ uses : mxschmitt/action-tmate@v3
133142
134143 - name : Install libgrape-lite
135144 if : runner.os == 'Linux'
136145 run : |
137- # leverage ccache
138146 export PATH=/usr/lib/ccache:$PATH
139147
140148 git clone https://github.com/alibaba/libgrape-lite.git
@@ -184,11 +192,10 @@ jobs:
184192
185193 - name : Setup tmate session
186194 if : false
187- uses : mxschmitt/action-tmate@v2
195+ uses : mxschmitt/action-tmate@v3
188196
189197 - name : CMake
190198 run : |
191- # leverage ccache
192199 export PATH=/usr/lib/ccache:$PATH
193200
194201 mkdir build
@@ -282,8 +289,6 @@ jobs:
282289
283290 - name : Build
284291 run : |
285- # leverage ccache
286- export PATH=/usr/lib/ccache:$PATH
287292 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/lib64
288293
289294 pushd build
@@ -316,7 +321,7 @@ jobs:
316321
317322 - name : Setup tmate session
318323 if : false
319- uses : mxschmitt/action-tmate@v2
324+ uses : mxschmitt/action-tmate@v3
320325
321326 - name : Run Tests
322327 run : |
@@ -331,7 +336,7 @@ jobs:
331336
332337 - name : Setup tmate session
333338 if : false
334- uses : mxschmitt/action-tmate@v2
339+ uses : mxschmitt/action-tmate@v3
335340
336341 - name : Run Python Tests with Debug
337342 if : ${{ github.event_name == 'push' }}
@@ -379,7 +384,7 @@ jobs:
379384
380385 - name : Setup tmate session
381386 if : false
382- uses : mxschmitt/action-tmate@v2
387+ uses : mxschmitt/action-tmate@v3
383388
384389 - name : Run IO Tests
385390 run : |
@@ -413,7 +418,7 @@ jobs:
413418
414419 - name : Setup tmate session
415420 if : false
416- uses : mxschmitt/action-tmate@v2
421+ uses : mxschmitt/action-tmate@v3
417422
418423 - name : Upload Coverage
419424 if : runner.os == 'Linux'
0 commit comments