From 3fa53f2b14ce178b6dec4f78fe9c37082e0717bc Mon Sep 17 00:00:00 2001 From: skdhg <46562212+skdhg@users.noreply.github.com> Date: Sat, 16 Dec 2023 01:43:35 +0545 Subject: [PATCH] ci: freebsd update --- .github/workflows/CI.yml | 101 ++++++++++++++++++++------------------- 1 file changed, 53 insertions(+), 48 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 692dda6..cd72346 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -162,54 +162,59 @@ jobs: name: bindings-${{ matrix.settings.target }} path: ${{ env.APP_NAME }}.*.node if-no-files-found: error - # build-freebsd: - # runs-on: macos-12 - # name: Build FreeBSD - # steps: - # - uses: actions/checkout@v4 - # - name: Build - # id: build - # uses: cross-platform-actions/action@v0.21.0 - # env: - # DEBUG: napi:* - # RUSTUP_IO_THREADS: 1 - # with: - # operating_system: freebsd - # version: '13.2' - # memory: 13G - # cpu_count: 3 - # environment_variables: DEBUG RUSTUP_IO_THREADS - # shell: bash - # prepare: | - # sudo pkg install -y -f curl node libnghttp2 npm - # sudo npm install -g yarn --ignore-scripts - # curl https://sh.rustup.rs -sSf --output rustup.sh - # sh rustup.sh -y --profile minimal --default-toolchain stable - # source "$HOME/.cargo/env" - # echo "~~~~ rustc --version ~~~~" - # rustc --version - # echo "~~~~ node -v ~~~~" - # node -v - # echo "~~~~ yarn --version ~~~~" - # yarn --version - # pwd - # ls -lah - # whoami - # env - # freebsd-version - # yarn install - # yarn build - # strip -x *.node - # yarn test - # rm -rf node_modules - # rm -rf target - # rm -rf .yarn/cache - # - name: Upload artifact - # uses: actions/upload-artifact@v3 - # with: - # name: bindings-freebsd - # path: ${{ env.APP_NAME }}.*.node - # if-no-files-found: error + build-freebsd: + runs-on: macos-12 + name: Build FreeBSD + steps: + - uses: actions/checkout@v3 + with: + submodules: true + - name: Build + id: build + uses: vmactions/freebsd-vm@v0 + env: + DEBUG: napi:* + RUSTUP_HOME: /usr/local/rustup + CARGO_HOME: /usr/local/cargo + RUSTUP_IO_THREADS: 1 + with: + envs: DEBUG RUSTUP_HOME CARGO_HOME RUSTUP_IO_THREADS + usesh: true + mem: 3000 + prepare: | + pkg install -y -f curl node libnghttp2 llvm cmake # Install the llvm package to fix the libclang error + curl -qL https://www.npmjs.com/install.sh | sh + npm install --location=global --ignore-scripts yarn + curl https://sh.rustup.rs -sSf --output rustup.sh + sh rustup.sh -y --profile minimal --default-toolchain beta + rustup component add rustfmt + export PATH="/usr/local/cargo/bin:$PATH" + echo "~~~~ rustc --version ~~~~" + rustc --version + echo "~~~~ node -v ~~~~" + node -v + echo "~~~~ yarn --version ~~~~" + yarn --version + run: | + export PATH="/usr/local/cargo/bin:$PATH" + pwd + ls -lah + whoami + env + freebsd-version + yarn install + yarn build + strip -x *.node + yarn test + rm -rf node_modules + rm -rf target + rm -rf .yarn/cache + - name: Upload artifact + uses: actions/upload-artifact@v3 + with: + name: bindings-freebsd + path: ${{ env.APP_NAME }}.*.node + if-no-files-found: error test-macOS-windows-binding: name: Test bindings on ${{ matrix.settings.target }} - node@${{ matrix.node }} needs: