mirror of
https://github.com/lancedb/lancedb.git
synced 2025-12-26 22:59:57 +00:00
Building with Node 16 produced this error: ``` npm ERR! code ENOENT npm ERR! syscall chmod npm ERR! path /io/nodejs/node_modules/apache-arrow-15/bin/arrow2csv.cjs npm ERR! errno -2 npm ERR! enoent ENOENT: no such file or directory, chmod '/io/nodejs/node_modules/apache-arrow-15/bin/arrow2csv.cjs' npm ERR! enoent This is related to npm not being able to find a file. npm ERR! enoent ``` [CI Failure](https://github.com/lancedb/lancedb/actions/runs/10117131772/job/27981475770). This looks like it is https://github.com/apache/arrow/issues/43341 Upgrading to Node 18 makes this goes away. Since Node 18 requires glibc >= 2_28, we had to upgrade the manylinux version we are using. This is fine since we already state a minimum Node version of 18. This also upgrades the openssl version we bundle, as well as consolidates the build files.
22 lines
559 B
Bash
Executable File
22 lines
559 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
ARCH=${1:-x86_64}
|
|
|
|
# We pass down the current user so that when we later mount the local files
|
|
# into the container, the files are accessible by the current user.
|
|
pushd ci/manylinux_node
|
|
docker build \
|
|
-t lancedb-node-manylinux-$ARCH \
|
|
--build-arg="ARCH=$ARCH" \
|
|
--build-arg="DOCKER_USER=$(id -u)" \
|
|
--progress=plain \
|
|
.
|
|
popd
|
|
|
|
# We turn on memory swap to avoid OOM killer
|
|
docker run \
|
|
-v $(pwd):/io -w /io \
|
|
--memory-swap=-1 \
|
|
lancedb-node-manylinux-$ARCH \
|
|
bash ci/manylinux_node/build_lancedb.sh $ARCH
|