Skip to content

Commit 8aca9ac

Browse files
committed
ci: Test Red ArrowFormat
1 parent fbb87ef commit 8aca9ac

1 file changed

Lines changed: 79 additions & 2 deletions

File tree

.github/workflows/test.yaml

Lines changed: 79 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ on:
1919
- "dependabot/**"
2020
pull_request:
2121
jobs:
22-
test:
23-
name: Test
22+
unit:
23+
name: Unit test
2424
runs-on: ${{ matrix.runs-on }}
2525
strategy:
2626
fail-fast: false
@@ -65,3 +65,80 @@ jobs:
6565
- name: Test
6666
run: |
6767
bundle exec rake
68+
apache-arrow:
69+
name: Apache Arrow
70+
runs-on: ubuntu-latest
71+
env:
72+
GI_TYPELIB_PATH: /tmp/local/lib/girepository-1.0
73+
LD_LIBRARY_PATH: /tmp/local/lib
74+
PKG_CONFIG_PATH: /tmp/local/lib/pkgconfig
75+
steps:
76+
- uses: actions/checkout@v6
77+
- uses: actions/checkout@v6
78+
with:
79+
repository: apache/arrow
80+
path: apache-arrow
81+
- uses: ruby/setup-ruby@v1
82+
with:
83+
ruby-version: ruby
84+
bundler-cache: true
85+
- name: Install dependencies
86+
run: |
87+
sudo apt update
88+
sudo apt install -y -V \
89+
ccache \
90+
flatbuffers-compiler \
91+
rapidjson-dev \
92+
libgirepository1.0-dev \
93+
libxsimd-dev \
94+
meson
95+
- name: Cache ccache
96+
uses: actions/cache@v5
97+
with:
98+
path: .ccache/
99+
key: ccache-apache-arrow-${{ hashFiles('apache-arrow/cpp/**', 'apache-arrow/c_glib/**', 'apache-arrow/ruby/red-arrow/ext/**') }}
100+
restore-keys: ccache-apache-arrow-
101+
- name: Install Red FlatBuffers
102+
run: |
103+
bundle exec rake install
104+
- name: Configure Apache Arrow C++
105+
run: |
106+
cmake \
107+
-S apache-arrow/cpp \
108+
-B apache-arrow/cpp.build \
109+
--preset ninja-debug-minimal \
110+
-D ARROW_COMPUTE=ON \
111+
-D ARROW_CSV=ON \
112+
-D ARROW_JSON=ON \
113+
-D CMAKE_INSTALL_PREFIX=/tmp/local \
114+
-D CMAKE_INSTALL_LIBDIR=lib
115+
- name: Build Apache Arrow C++
116+
run: |
117+
cmake --build apache-arrow/cpp.build
118+
- name: Install Apache Arrow C++
119+
run: |
120+
cmake --install apache-arrow/cpp.build
121+
- name: Configure Apache Arrow GLib
122+
run: |
123+
meson setup \
124+
--cmake-prefix-path=/tmp/local \
125+
--libdir=lib \
126+
--pkg-config-path=/tmp/local/lib/pkgconfig \
127+
--prefix=/tmp/local \
128+
apache-arrow/c_glib.build \
129+
apache-arrow/c_glib
130+
- name: Build Apache Arrow GLib
131+
run: |
132+
meson compile -C apache-arrow/c_glib.build
133+
- name: Install Apache Arrow C++
134+
run: |
135+
meson install -C apache-arrow/c_glib.build
136+
- name: Build Red Arrow
137+
run: |
138+
cd apache-arrow/ruby/red-arrow
139+
ruby extconf.rb --eanble-debug-build
140+
make -j$(nproc)
141+
- name: Run Red ArrowFormat tests
142+
run: |
143+
cd apache-arrow/ruby/red-arrow-format
144+
ruby test/run.rb

0 commit comments

Comments
 (0)