diff --git a/.github/workflows/build_native.yml b/.github/workflows/build_native.yml index 2e8037256377..d098cb061281 100644 --- a/.github/workflows/build_native.yml +++ b/.github/workflows/build_native.yml @@ -53,7 +53,7 @@ jobs: id: binary-cache uses: actions/cache@v2 with: - path: packages/next/native/** + path: packages/next/native/next-swc.${{ matrix.name }}.node key: next-swc-nightly-2021-08-12-${{ matrix.target }}-${{ hashFiles('.github/workflows/build_native.yml', 'packages/next/build/swc/**') }} - name: Cross build aarch64 setup if: ${{ matrix.target == 'aarch64-apple-darwin' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} @@ -90,334 +90,9 @@ jobs: cargo install cargo-cache --no-default-features --features ci-autoclean cargo-cache - build-windows-i686: - name: next-swc - windows-i686 - node@14 - runs-on: windows-latest - env: - CARGO_PROFILE_RELEASE_CODEGEN_UNITS: 32 - CARGO_PROFILE_RELEASE_LTO: 'false' - steps: - - uses: actions/checkout@v2 - - - name: Install node x86 - run: | - choco install nodejs-lts --x86 -y --force - refreshenv - - name: Set 32bit Node.js path - run: | - echo "C:\\Program Files (x86)\\nodejs" >> $GITHUB_PATH - shell: bash - - - name: Node.js arch - run: node -e "console.log(process.arch)" - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: i686-pc-windows-msvc - - - name: Build - shell: bash - run: yarn build-native --target i686-pc-windows-msvc - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-windows-aarch64: - name: next-swc - windows-aarch64 - node@14 - runs-on: windows-latest - steps: - - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: aarch64-pc-windows-msvc - - - name: Build - shell: bash - run: yarn build-native --target aarch64-pc-windows-msvc - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-linux-musl: - name: next-swc - linux-musl - node@lts - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - - name: Login to registry - run: | - docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD $DOCKER_REGISTRY_URL - env: - DOCKER_REGISTRY_URL: ghcr.io - DOCKER_USERNAME: ${{ github.actor }} - DOCKER_PASSWORD: ${{ secrets.GITHUB_TOKEN }} - - - name: Cache - uses: actions/cache@v2 - with: - path: | - target/ - key: linux-musl-publish-integration - - - name: Pull docker image - run: | - docker pull ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine - docker tag ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine builder - - - name: 'Build' - run: | - docker run --rm -v $(pwd)/packages/next:/swc -w /swc builder sh -c "yarn build-native" - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-linux-aarch64: - name: next-swc - aarch64-unknown-linux-gnu - node@14 - runs-on: ubuntu-18.04 - steps: - - run: docker run --rm --privileged multiarch/qemu-user-static:register --reset - - - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: aarch64-unknown-linux-gnu - - - name: Cache - uses: actions/cache@v2 - with: - path: | - target/ - key: aarch64-linux-gnu-publish-integration - - - name: Install cross compile toolchain - run: | - sudo apt-get update - sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu -y - - - name: Cross build aarch64 - run: yarn build-native --target aarch64-unknown-linux-gnu - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-linux-aarch64-musl: - name: next-swc - aarch64-unknown-linux-musl - node@14 - runs-on: ubuntu-18.04 - steps: - - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: aarch64-unknown-linux-musl - - - name: Cache - uses: actions/cache@v2 - with: - path: | - target/ - key: aarch64-linux-musl-publish-integration - - - name: Install cross compile toolchain - run: | - sudo apt-get update - sudo apt-get install gcc-aarch64-linux-gnu -y - - - name: Cross build aarch64 - run: yarn build-native --target aarch64-unknown-linux-musl - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-linux-arm7: - name: next-swc - arm7-unknown-linux-gnu - node@14 - runs-on: ubuntu-18.04 - steps: - - run: docker run --rm --privileged multiarch/qemu-user-static:register --reset - - - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: armv7-unknown-linux-gnueabihf - - - name: Cache - uses: actions/cache@v2 - with: - path: | - target/ - key: arm7-linux-gnu-publish-integration - - - name: Install cross compile toolchain - run: | - sudo apt-get update - sudo apt-get install gcc-arm-linux-gnueabihf -y - - - name: Cross build aarch64 - run: yarn build-native --target armv7-unknown-linux-gnueabihf - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-android-aarch64: - name: next-swc - Android - aarch64 - runs-on: macos-latest - steps: - - uses: actions/checkout@v2 - - - name: Setup node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: nightly-2021-08-12 - override: true - target: aarch64-linux-android - - - name: Build - shell: bash - run: | - export CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER="${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android24-clang" - yarn build-native --target aarch64-linux-android - working-directory: packages/next - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - - build-freebsd: - runs-on: macos-10.15 - name: next-swc - freebsd - steps: - - uses: actions/checkout@v2 - - name: Build - id: build - uses: vmactions/freebsd-vm@v0.1.5 - 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: 6000 - prepare: | - pkg install -y curl node14 - curl -qL https://www.npmjs.com/install.sh | sh - npm install -g yarn - curl https://sh.rustup.rs -sSf --output rustup.sh - sh rustup.sh -y --profile minimal --default-toolchain stable - source /usr/local/cargo/env - 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 - cargo build --release -p next-swc - yarn build-native - rm -rf node_modules - rm -rf target - working-directory: packages/next - - - name: 'List files' - run: ls -la - - - name: Upload artifact - uses: actions/upload-artifact@v2 - with: - name: next-swc-binaries - path: packages/next/native/next-swc.*.node - commit: needs: - build-native - - build-windows-i686 - - build-windows-aarch64 - - build-linux-musl - - build-linux-arm7 - - build-linux-aarch64 - - build-android-aarch64 - - build-freebsd - - build-linux-aarch64-musl runs-on: ubuntu-18.04 steps: diff --git a/.github/workflows/build_test_deploy.yml b/.github/workflows/build_test_deploy.yml index 52d107a03297..aea981876230 100644 --- a/.github/workflows/build_test_deploy.yml +++ b/.github/workflows/build_test_deploy.yml @@ -408,7 +408,16 @@ jobs: if: ${{ needs.build.outputs.isRelease == 'true' }} name: Potentially publish release runs-on: ubuntu-latest - needs: [build, build-native] + needs: + - build + - build-native + - build-windows-i686 + - build-windows-aarch64 + - build-linux-musl + - build-linux-arm7 + - build-linux-aarch64 + - build-android-aarch64 + - build-linux-aarch64-musl env: NPM_TOKEN: ${{ secrets.NPM_TOKEN_ELEVATED }} steps: @@ -514,7 +523,7 @@ jobs: uses: actions/cache@v2 if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} with: - path: packages/next/native/next-swc.*.node + path: packages/next/native/next-swc.${{ matrix.name }}.node key: next-swc-nightly-2021-08-12-${{ matrix.target }}-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} - name: Cross build aarch64 setup if: ${{ matrix.target == 'aarch64-apple-darwin' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} @@ -570,3 +579,389 @@ jobs: profile: minimal - run: cd packages/next/build/swc && cargo test if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + + build-windows-i686: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - windows-i686 - node@14 + runs-on: windows-latest + env: + CARGO_PROFILE_RELEASE_CODEGEN_UNITS: 32 + CARGO_PROFILE_RELEASE_LTO: 'false' + steps: + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Install node x86 + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + choco install nodejs-lts --x86 -y --force + refreshenv + - name: Set 32bit Node.js path + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + echo "C:\\Program Files (x86)\\nodejs" >> $GITHUB_PATH + shell: bash + + - name: Node.js arch + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: node -e "console.log(process.arch)" + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: i686-pc-windows-msvc + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.win32-ia32-msvc.node + key: next-swc-nightly-2021-08-12-win32-ia32-msvc-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Build + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + shell: bash + run: yarn build-native --target i686-pc-windows-msvc + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.win32-ia32-msvc.node + + build-windows-aarch64: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - windows-aarch64 - node@14 + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Setup node + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: aarch64-pc-windows-msvc + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.win32-arm64-msvc.node + key: next-swc-nightly-2021-08-12-win32-arm64-msvc-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Build + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + shell: bash + run: yarn build-native --target aarch64-pc-windows-msvc + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.win32-arm64-msvc.node + + build-linux-musl: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - linux-musl - node@lts + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Login to registry + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD $DOCKER_REGISTRY_URL + env: + DOCKER_REGISTRY_URL: ghcr.io + DOCKER_USERNAME: ${{ github.actor }} + DOCKER_PASSWORD: ${{ secrets.GITHUB_TOKEN }} + + - name: Cache + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/cache@v2 + with: + path: | + target/ + key: linux-musl-publish-integration + + - name: Pull docker image + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + docker pull ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine + docker tag ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine builder + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.linux-x64-musl.node + key: next-swc-nightly-2021-08-12-linux-x64-musl-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: 'Build' + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + docker run --rm -v $(pwd)/packages/next:/swc -w /swc builder sh -c "yarn build-native" + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.linux-x64-musl.node + + build-linux-aarch64: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - aarch64-unknown-linux-gnu - node@14 + runs-on: ubuntu-18.04 + steps: + - run: docker run --rm --privileged multiarch/qemu-user-static:register --reset + + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Setup node + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: aarch64-unknown-linux-gnu + + - name: Cache + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/cache@v2 + with: + path: | + target/ + key: aarch64-linux-gnu-publish-integration + + - name: Install cross compile toolchain + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + sudo apt-get update + sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu -y + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.linux-arm64-gnu.node + key: next-swc-nightly-2021-08-12-linux-arm64-gnu-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Cross build aarch64 + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: yarn build-native --target aarch64-unknown-linux-gnu + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.linux-arm64-gnu.node + + build-linux-aarch64-musl: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - aarch64-unknown-linux-musl - node@14 + runs-on: ubuntu-18.04 + steps: + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Setup node + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: aarch64-unknown-linux-musl + + - name: Cache + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/cache@v2 + with: + path: | + target/ + key: aarch64-linux-musl-publish-integration + + - name: Install cross compile toolchain + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + sudo apt-get update + sudo apt-get install gcc-aarch64-linux-gnu -y + + - name: Cache native binary + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.linux-arm64-musl.node + key: next-swc-nightly-2021-08-12-linux-arm64-musl-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Cross build aarch64 + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: yarn build-native --target aarch64-unknown-linux-musl + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.linux-arm64-musl.node + + build-linux-arm7: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - arm7-unknown-linux-gnu - node@14 + runs-on: ubuntu-18.04 + steps: + - run: docker run --rm --privileged multiarch/qemu-user-static:register --reset + + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Setup node + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: armv7-unknown-linux-gnueabihf + + - name: Cache + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/cache@v2 + with: + path: | + target/ + key: arm7-linux-gnu-publish-integration + + - name: Install cross compile toolchain + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: | + sudo apt-get update + sudo apt-get install gcc-arm-linux-gnueabihf -y + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.linux-arm-gnueabihf.node + key: next-swc-nightly-2021-08-12-linux-arm-gnueabihf-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Cross build aarch64 + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + run: yarn build-native --target armv7-unknown-linux-gnueabihf + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.linux-arm-gnueabihf.node + + build-android-aarch64: + if: ${{ needs.build.outputs.isRelease == 'true' }} + name: next-swc - Android - aarch64 + runs-on: macos-latest + steps: + - uses: actions/checkout@v2 + + - run: echo ::set-output name=DOCS_CHANGE::$(node skip-docs-change.js echo 'not-docs-only-change') + id: docs-change + + - name: Setup node + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install Rust + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly-2021-08-12 + override: true + target: aarch64-linux-android + + - name: Cache native binary + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + id: binary-cache + uses: actions/cache@v2 + with: + path: packages/next/native/next-swc.android-arm64.node + key: next-swc-nightly-2021-08-12-android-arm64-${{ hashFiles('.github/workflows/build_test_deploy.yml', 'packages/next/build/swc/**') }} + + - name: Build + if: ${{ steps.binary-cache.outputs.cache-hit != 'true' && steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + shell: bash + run: | + export CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER="${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android24-clang" + yarn build-native --target aarch64-linux-android + working-directory: packages/next + + - name: Upload artifact + if: ${{ steps.docs-change.outputs.DOCS_CHANGE != 'docs only change' }} + uses: actions/upload-artifact@v2 + with: + name: next-swc-binaries + path: packages/next/native/next-swc.android-arm64.node diff --git a/packages/next/build/swc/npm/android-arm64/README.md b/packages/next/build/swc/npm/android-arm64/README.md new file mode 100644 index 000000000000..4b204578351a --- /dev/null +++ b/packages/next/build/swc/npm/android-arm64/README.md @@ -0,0 +1,3 @@ +# `@next/swc-android-arm64` + +This is the **android-arm64** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/android-arm64/package.json b/packages/next/build/swc/npm/android-arm64/package.json new file mode 100644 index 000000000000..7d85660dc10a --- /dev/null +++ b/packages/next/build/swc/npm/android-arm64/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-android-arm64", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.android-arm64.node", + "files": [ + "next-swc.android-arm64.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/linux-arm-gnueabihf/README.md b/packages/next/build/swc/npm/linux-arm-gnueabihf/README.md new file mode 100644 index 000000000000..499a9b79845a --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm-gnueabihf/README.md @@ -0,0 +1,3 @@ +# `@next/swc-linux-arm-gnueabihf` + +This is the **linux-arm-gnueabihf** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/linux-arm-gnueabihf/package.json b/packages/next/build/swc/npm/linux-arm-gnueabihf/package.json new file mode 100644 index 000000000000..1a4e75c6d741 --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm-gnueabihf/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-linux-arm-gnueabihf", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.linux-arm-gnueabihf.node", + "files": [ + "next-swc.linux-arm-gnueabihf.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/linux-arm64-gnu/README.md b/packages/next/build/swc/npm/linux-arm64-gnu/README.md new file mode 100644 index 000000000000..240f5f63cbc7 --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm64-gnu/README.md @@ -0,0 +1,3 @@ +# `@next/swc-linux-arm64-gnu` + +This is the **linux-arm64-gnu** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/linux-arm64-gnu/package.json b/packages/next/build/swc/npm/linux-arm64-gnu/package.json new file mode 100644 index 000000000000..943fadca419a --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm64-gnu/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-linux-arm64-gnu", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.linux-arm64-gnu.node", + "files": [ + "next-swc.linux-arm64-gnu.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/linux-arm64-musl/README.md b/packages/next/build/swc/npm/linux-arm64-musl/README.md new file mode 100644 index 000000000000..698bb30249cf --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm64-musl/README.md @@ -0,0 +1,3 @@ +# `@next/swc-linux-arm64-musl` + +This is the **linux-arm64-musl** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/linux-arm64-musl/package.json b/packages/next/build/swc/npm/linux-arm64-musl/package.json new file mode 100644 index 000000000000..9c1599027232 --- /dev/null +++ b/packages/next/build/swc/npm/linux-arm64-musl/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-linux-arm64-musl", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.linux-arm64-musl.node", + "files": [ + "next-swc.linux-arm64-musl.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/linux-x64-musl/README.md b/packages/next/build/swc/npm/linux-x64-musl/README.md new file mode 100644 index 000000000000..b0539af01d0f --- /dev/null +++ b/packages/next/build/swc/npm/linux-x64-musl/README.md @@ -0,0 +1,3 @@ +# `@next/swc-linux-x64-musl` + +This is the **linux-x64-musl** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/linux-x64-musl/package.json b/packages/next/build/swc/npm/linux-x64-musl/package.json new file mode 100644 index 000000000000..cc0454363fea --- /dev/null +++ b/packages/next/build/swc/npm/linux-x64-musl/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-linux-x64-musl", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.linux-x64-musl.node", + "files": [ + "next-swc.linux-x64-musl.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/win32-arm64-msvc/README.md b/packages/next/build/swc/npm/win32-arm64-msvc/README.md new file mode 100644 index 000000000000..0b52c876cd94 --- /dev/null +++ b/packages/next/build/swc/npm/win32-arm64-msvc/README.md @@ -0,0 +1,3 @@ +# `@next/swc-win32-arm64-msvc` + +This is the **win32-arm64-msvc** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/win32-arm64-msvc/package.json b/packages/next/build/swc/npm/win32-arm64-msvc/package.json new file mode 100644 index 000000000000..bac4ae7b70c9 --- /dev/null +++ b/packages/next/build/swc/npm/win32-arm64-msvc/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-win32-arm64-msvc", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.win32-arm64-msvc.node", + "files": [ + "next-swc.win32-arm64-msvc.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/build/swc/npm/win32-ia32-msvc/README.md b/packages/next/build/swc/npm/win32-ia32-msvc/README.md new file mode 100644 index 000000000000..5c784edce72c --- /dev/null +++ b/packages/next/build/swc/npm/win32-ia32-msvc/README.md @@ -0,0 +1,3 @@ +# `@next/swc-win32-ia32-msvc` + +This is the **win32-ia32-msvc** binary for `@next/swc` diff --git a/packages/next/build/swc/npm/win32-ia32-msvc/package.json b/packages/next/build/swc/npm/win32-ia32-msvc/package.json new file mode 100644 index 000000000000..bc14acf351a3 --- /dev/null +++ b/packages/next/build/swc/npm/win32-ia32-msvc/package.json @@ -0,0 +1,18 @@ +{ + "name": "@next/swc-win32-ia32-msvc", + "version": "0.0.0", + "os": [ + "darwin" + ], + "cpu": [ + "arm64" + ], + "main": "next-swc.win32-ia32-msvc.node", + "files": [ + "next-swc.win32-ia32-msvc.node" + ], + "license": "MIT", + "engines": { + "node": ">= 10" + } +} diff --git a/packages/next/native/next-swc.android-arm64.node b/packages/next/native/next-swc.android-arm64.node deleted file mode 100644 index 9b05e4c4df90..000000000000 Binary files a/packages/next/native/next-swc.android-arm64.node and /dev/null differ diff --git a/packages/next/native/next-swc.darwin-arm64.node b/packages/next/native/next-swc.darwin-arm64.node index 90855bfacfac..59b5536d2167 100644 Binary files a/packages/next/native/next-swc.darwin-arm64.node and b/packages/next/native/next-swc.darwin-arm64.node differ diff --git a/packages/next/native/next-swc.darwin-x64.node b/packages/next/native/next-swc.darwin-x64.node index 11bf8da00b7a..29044c9f5034 100644 Binary files a/packages/next/native/next-swc.darwin-x64.node and b/packages/next/native/next-swc.darwin-x64.node differ diff --git a/packages/next/native/next-swc.linux-arm-gnueabihf.node b/packages/next/native/next-swc.linux-arm-gnueabihf.node deleted file mode 100644 index c3109666c2db..000000000000 Binary files a/packages/next/native/next-swc.linux-arm-gnueabihf.node and /dev/null differ diff --git a/packages/next/native/next-swc.linux-arm64-gnu.node b/packages/next/native/next-swc.linux-arm64-gnu.node deleted file mode 100644 index 3140431fe1ff..000000000000 Binary files a/packages/next/native/next-swc.linux-arm64-gnu.node and /dev/null differ diff --git a/packages/next/native/next-swc.linux-arm64-musl.node b/packages/next/native/next-swc.linux-arm64-musl.node deleted file mode 100644 index be4b570f401b..000000000000 Binary files a/packages/next/native/next-swc.linux-arm64-musl.node and /dev/null differ diff --git a/packages/next/native/next-swc.linux-x64-gnu.node b/packages/next/native/next-swc.linux-x64-gnu.node index c858cd0adf06..7d000595b893 100644 Binary files a/packages/next/native/next-swc.linux-x64-gnu.node and b/packages/next/native/next-swc.linux-x64-gnu.node differ diff --git a/packages/next/native/next-swc.linux-x64-musl.node b/packages/next/native/next-swc.linux-x64-musl.node deleted file mode 100644 index 84a76481f904..000000000000 Binary files a/packages/next/native/next-swc.linux-x64-musl.node and /dev/null differ diff --git a/packages/next/native/next-swc.win32-arm64-msvc.node b/packages/next/native/next-swc.win32-arm64-msvc.node deleted file mode 100644 index 3a70f81509c4..000000000000 Binary files a/packages/next/native/next-swc.win32-arm64-msvc.node and /dev/null differ diff --git a/packages/next/native/next-swc.win32-ia32-msvc.node b/packages/next/native/next-swc.win32-ia32-msvc.node deleted file mode 100644 index 792a4d2cd962..000000000000 Binary files a/packages/next/native/next-swc.win32-ia32-msvc.node and /dev/null differ diff --git a/packages/next/native/next-swc.win32-x64-msvc.node b/packages/next/native/next-swc.win32-x64-msvc.node index 769cdfe024bc..1fb5bc784e40 100644 Binary files a/packages/next/native/next-swc.win32-x64-msvc.node and b/packages/next/native/next-swc.win32-x64-msvc.node differ