Compile with newer node.js #1099
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test and Prebuild | |
on: [push] | |
jobs: | |
build-test-macos: | |
#if: startsWith(github.ref, 'refs/tags/') | |
env: | |
LMDB_DATA_V1: ${{ contains(github.ref, '-v1') }} | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.x | |
- run: python3 -m pip install setuptools | |
- run: npm install | |
- run: npm run build | |
#- run: npm run deno-test | |
- run: npm test | |
if: ${{ !contains(github.ref, '-v1') }} | |
- run: npm run prebuild-macos | |
if: startsWith(github.ref, 'refs/tags/') | |
- run: npm run prebuild-macos | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
PREBUILD_ARCH: arm64 | |
- run: tar --create --format ustar --verbose --file=prebuild-darwin.tar -C prebuilds . | |
if: startsWith(github.ref, 'refs/tags/') | |
- name: Prebuild | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: prebuild-darwin.tar | |
build-test-win32: | |
#if: startsWith(github.ref, 'refs/tags/') | |
env: | |
LMDB_DATA_V1: ${{ contains(github.ref, '-v1') }} | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- run: npm install | |
- run: npm run build | |
- run: npm test | |
if: ${{ !contains(github.ref, '-v1') }} | |
- run: npm run prebuild-win32 | |
- run: tar --create --verbose --file=prebuild-win32.tar -C prebuilds . | |
if: startsWith(github.ref, 'refs/tags/') | |
- name: Prebuild | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: prebuild-win32.tar | |
build-centos-7: | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
LMDB_DATA_V1: ${{ contains(github.ref, '-v1') }} | |
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true # workaround for terrible checkout bug: https://github.com/actions/checkout/issues/1809 | |
ACTIONS_RUNNER_FORCED_INTERNAL_NODE_VERSION: node16 | |
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16 | |
runs-on: ubuntu-20.04 | |
container: quay.io/pypa/manylinux2014_x86_64 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- run: yum update -y && yum install -y python3 | |
- run: curl https://raw.githubusercontent.com/kriszyp/musl-bins/main/aarch64-linux-musl-cross.tgz --insecure --output aarch64-linux-musl-cross.tgz | |
- run: tar -xf aarch64-linux-musl-cross.tgz && pwd && ls | |
- run: curl https://raw.githubusercontent.com/kriszyp/musl-bins/main/armv7l-linux-musleabihf-cross.tgz --insecure --output armv7l-linux-musleabihf-cross.tgz | |
- run: tar -xf armv7l-linux-musleabihf-cross.tgz && pwd && ls | |
- run: curl https://raw.githubusercontent.com/kriszyp/musl-bins/main/x86_64-linux-musl-native.tgz --insecure --output x86_64-linux-musl-native.tgz | |
- run: tar -xf x86_64-linux-musl-native.tgz && pwd && ls | |
- run: npm install | |
- run: npm run prebuild-libc-musl | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
PREBUILD_LIBC: musl | |
PREBUILD_ARCH: arm64 | |
CC: ${PWD}/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc | |
CXX: ${PWD}/aarch64-linux-musl-cross/bin/aarch64-linux-musl-g++ | |
- run: npm run prebuild-libc-musl | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
PREBUILD_LIBC: musl | |
PREBUILD_ARCH: arm | |
PREBUILD_ARMV: 7 | |
CC: ${PWD}/armv7l-linux-musleabihf-cross/bin/armv7l-linux-musleabihf-gcc | |
CXX: ${PWD}/armv7l-linux-musleabihf-cross/bin/armv7l-linux-musleabihf-g++ | |
- run: npm run prebuild-libc-musl | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
PREBUILD_LIBC: musl | |
PREBUILD_ARCH: x64 | |
CC: ${PWD}/x86_64-linux-musl-native/bin/x86_64-linux-musl-gcc | |
CXX: ${PWD}/x86_64-linux-musl-native/bin/x86_64-linux-musl-g++ | |
- run: npm run prebuild-libc | |
- run: ls prebuilds/linux-x64 | |
#- run: cp prebuilds/linux-x64/node.abi93.glibc.node prebuilds/linux-x64/node.abi92.glibc.node | |
#- run: npm run prebuildify | |
# env: | |
# ENABLE_FAST_API_CALLS: true | |
- run: npm run build-js | |
- run: chmod 777 test | |
- run: npm test | |
if: ${{ !contains(github.ref, '-v1') }} | |
- run: tar --create --verbose --file=prebuild-linux.tar -C prebuilds . | |
- name: Prebuild | |
if: startsWith(github.ref, 'refs/tags/') | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: prebuild-linux.tar | |
test-deno: | |
if: ${{ !contains(github.ref, '-v1') }} | |
runs-on: ubuntu-20.04 | |
container: node:18 | |
steps: | |
- run: echo "LMDB_DATA_V1 is $LMDB_DATA_V1" | |
- uses: actions/checkout@v3 | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.x | |
#- run: sudo apt-get update | |
#- run: sudo apt-get install python | |
- run: npm install | |
- run: npm run build | |
- run: chmod 777 test | |
#- run: npm run deno-test | |
- run: npm test | |
env: | |
TEST_CJS: true | |
build-linux-arm: | |
#if: startsWith(github.ref, 'refs/tags/') | |
env: | |
LMDB_DATA_V1: ${{ contains(github.ref, '-v1') }} | |
runs-on: ubuntu-20.04 | |
#container: quay.io/pypa/manylinux_2_24_x86_64 | |
steps: | |
- run: sudo apt-get update | |
- run: sudo apt-get install -y gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf g++-aarch64-linux-gnu g++-arm-linux-gnueabihf | |
- run: ldd --version ldd | |
- uses: actions/checkout@v3 | |
- name: Setup node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- run: npm install | |
- run: npm run prebuild-libc | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
PREBUILD_ARCH: arm64 | |
CC: aarch64-linux-gnu-gcc | |
CXX: aarch64-linux-gnu-g++ | |
- run: npm run prebuild-libc-arm7 | |
env: | |
PREBUILD_ARCH: arm | |
PREBUILD_ARMV: 7 | |
CC: arm-linux-gnueabihf-gcc | |
CXX: arm-linux-gnueabihf-g++ | |
- run: tar --create --verbose --file=prebuild-linux-arm.tar -C prebuilds . | |
- name: Prebuild | |
if: startsWith(github.ref, 'refs/tags/') | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: prebuild-linux-arm.tar |