|
@@ -28,7 +28,7 @@ jobs:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: 14
|
|
node-version: 14
|
|
check-latest: true
|
|
check-latest: true
|
|
@@ -67,11 +67,6 @@ jobs:
|
|
run: yarn install --frozen-lockfile --registry https://registry.npmjs.org --network-timeout 300000
|
|
run: yarn install --frozen-lockfile --registry https://registry.npmjs.org --network-timeout 300000
|
|
|
|
|
|
- name: 'Build'
|
|
- name: 'Build'
|
|
- if: matrix.os != 'macos-latest'
|
|
|
|
- run: yarn build
|
|
|
|
-
|
|
|
|
- - name: 'Build'
|
|
|
|
- if: matrix.os == 'macos-latest'
|
|
|
|
run: yarn build
|
|
run: yarn build
|
|
env:
|
|
env:
|
|
MACOSX_DEPLOYMENT_TARGET: '10.13'
|
|
MACOSX_DEPLOYMENT_TARGET: '10.13'
|
|
@@ -87,6 +82,76 @@ jobs:
|
|
cargo install cargo-cache --no-default-features --features ci-autoclean
|
|
cargo install cargo-cache --no-default-features --features ci-autoclean
|
|
cargo-cache
|
|
cargo-cache
|
|
|
|
|
|
|
|
+ build-windows-i686:
|
|
|
|
+ if: "!contains(github.event.head_commit.message, 'skip ci')"
|
|
|
|
+ name: stable - windows-i686 - node@10
|
|
|
|
+ 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 NodeJS path
|
|
|
|
+ run: |
|
|
|
|
+ echo "C:\\Program Files (x86)\\nodejs" >> $GITHUB_PATH
|
|
|
|
+ shell: bash
|
|
|
|
+
|
|
|
|
+ - name: NodeJS arch
|
|
|
|
+ run: node -e "console.log(process.arch)"
|
|
|
|
+
|
|
|
|
+ - name: Cache NPM dependencies
|
|
|
|
+ uses: actions/cache@v1
|
|
|
|
+ with:
|
|
|
|
+ path: node_modules
|
|
|
|
+ key: npm-cache-windows-i686-node@lts-${{ hashFiles('yarn.lock') }}
|
|
|
|
+
|
|
|
|
+ - name: Install dependencies
|
|
|
|
+ run: yarn install --frozen-lockfile --registry https://registry.npmjs.org --network-timeout 300000
|
|
|
|
+
|
|
|
|
+ - name: Install
|
|
|
|
+ uses: actions-rs/toolchain@v1
|
|
|
|
+ with:
|
|
|
|
+ toolchain: stable
|
|
|
|
+ profile: minimal
|
|
|
|
+ override: true
|
|
|
|
+
|
|
|
|
+ - name: Install i686 toolchain
|
|
|
|
+ run: rustup target add i686-pc-windows-msvc
|
|
|
|
+
|
|
|
|
+ - name: Generate Cargo.lock
|
|
|
|
+ uses: actions-rs/cargo@v1
|
|
|
|
+ with:
|
|
|
|
+ command: generate-lockfile
|
|
|
|
+
|
|
|
|
+ - name: Cache cargo registry
|
|
|
|
+ uses: actions/cache@v1
|
|
|
|
+ with:
|
|
|
|
+ path: ~/.cargo/registry
|
|
|
|
+ key: stable-windows-i686-node@lts-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
+
|
|
|
|
+ - name: Cache cargo index
|
|
|
|
+ uses: actions/cache@v1
|
|
|
|
+ with:
|
|
|
|
+ path: ~/.cargo/git
|
|
|
|
+ key: stable-windows-i686-node@lts-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
+
|
|
|
|
+ - name: Cross build i686
|
|
|
|
+ run: yarn build --target i686-pc-windows-msvc
|
|
|
|
+
|
|
|
|
+ - name: Test binary
|
|
|
|
+ run: yarn test
|
|
|
|
+
|
|
|
|
+ - name: Upload artifact
|
|
|
|
+ uses: actions/upload-artifact@v2
|
|
|
|
+ with:
|
|
|
|
+ name: bindings-win32-i686
|
|
|
|
+ path: ${{ env.APP_NAME }}.*.node
|
|
|
|
+
|
|
build-linux-musl:
|
|
build-linux-musl:
|
|
if: "!contains(github.event.head_commit.message, 'skip ci')"
|
|
if: "!contains(github.event.head_commit.message, 'skip ci')"
|
|
name: stable - linux-musl - node@10
|
|
name: stable - linux-musl - node@10
|
|
@@ -218,7 +283,7 @@ jobs:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: 14
|
|
node-version: 14
|
|
check-latest: true
|
|
check-latest: true
|
|
@@ -274,14 +339,14 @@ jobs:
|
|
path: ${{ env.APP_NAME }}.*.node
|
|
path: ${{ env.APP_NAME }}.*.node
|
|
|
|
|
|
build-apple-silicon:
|
|
build-apple-silicon:
|
|
- name: nightly - aarch64-apple-darwin - node@14
|
|
|
|
|
|
+ name: stable - aarch64-apple-darwin - node@14
|
|
runs-on: macos-latest
|
|
runs-on: macos-latest
|
|
|
|
|
|
steps:
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: 14
|
|
node-version: 14
|
|
check-latest: true
|
|
check-latest: true
|
|
@@ -289,7 +354,7 @@ jobs:
|
|
- name: Install
|
|
- name: Install
|
|
uses: actions-rs/toolchain@v1
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
with:
|
|
- toolchain: nightly
|
|
|
|
|
|
+ toolchain: stable
|
|
profile: minimal
|
|
profile: minimal
|
|
override: true
|
|
override: true
|
|
|
|
|
|
@@ -305,13 +370,13 @@ jobs:
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
with:
|
|
with:
|
|
path: ~/.cargo/registry
|
|
path: ~/.cargo/registry
|
|
- key: nightly-apple-aarch64-node@14-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
+ key: stable-apple-aarch64-node@14-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
- name: Cache cargo index
|
|
- name: Cache cargo index
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
with:
|
|
with:
|
|
path: ~/.cargo/git
|
|
path: ~/.cargo/git
|
|
- key: nightly-apple-aarch64-node@14-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
+ key: stable-apple-aarch64-node@14-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
- name: Cache NPM dependencies
|
|
- name: Cache NPM dependencies
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
@@ -354,13 +419,13 @@ jobs:
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
with:
|
|
with:
|
|
path: ~/.cargo/registry
|
|
path: ~/.cargo/registry
|
|
- key: nightly-apple-aarch64-node@14-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
+ key: stable-apple-aarch64-node@14-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
- name: Cache cargo index
|
|
- name: Cache cargo index
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
with:
|
|
with:
|
|
path: ~/.cargo/git
|
|
path: ~/.cargo/git
|
|
- key: nightly-apple-aarch64-node@14-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
+ key: stable-apple-aarch64-node@14-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }}
|
|
|
|
|
|
- name: Cache NPM dependencies
|
|
- name: Cache NPM dependencies
|
|
uses: actions/cache@v1
|
|
uses: actions/cache@v1
|
|
@@ -398,7 +463,7 @@ jobs:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: ${{ matrix.node }}
|
|
node-version: ${{ matrix.node }}
|
|
check-latest: true
|
|
check-latest: true
|
|
@@ -445,7 +510,7 @@ jobs:
|
|
key: npm-cache-alpine-node@${{ matrix.node }}-${{ hashFiles('yarn.lock') }}
|
|
key: npm-cache-alpine-node@${{ matrix.node }}-${{ hashFiles('yarn.lock') }}
|
|
|
|
|
|
- name: 'Install dependencies'
|
|
- name: 'Install dependencies'
|
|
- run: yarn install --frozen-lockfile --ignore-scripts --registry https://registry.npmjs.org
|
|
|
|
|
|
+ run: yarn install --frozen-lockfile --ignore-scripts --registry https://registry.npmjs.org --network-timeout 300000
|
|
|
|
|
|
- name: Download artifacts
|
|
- name: Download artifacts
|
|
uses: actions/download-artifact@v2
|
|
uses: actions/download-artifact@v2
|
|
@@ -477,7 +542,7 @@ jobs:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: ${{ matrix.node }}
|
|
node-version: ${{ matrix.node }}
|
|
check-latest: true
|
|
check-latest: true
|
|
@@ -517,6 +582,7 @@ jobs:
|
|
- test
|
|
- test
|
|
- test-musl
|
|
- test-musl
|
|
- test-aarch64
|
|
- test-aarch64
|
|
|
|
+ - build-windows-i686
|
|
- build-apple-silicon
|
|
- build-apple-silicon
|
|
- build-linux-arm7
|
|
- build-linux-arm7
|
|
- build-android-aarch64
|
|
- build-android-aarch64
|
|
@@ -535,6 +601,7 @@ jobs:
|
|
- test
|
|
- test
|
|
- test-musl
|
|
- test-musl
|
|
- test-aarch64
|
|
- test-aarch64
|
|
|
|
+ - build-windows-i686
|
|
- build-apple-silicon
|
|
- build-apple-silicon
|
|
- build-linux-arm7
|
|
- build-linux-arm7
|
|
- build-android-aarch64
|
|
- build-android-aarch64
|
|
@@ -543,7 +610,7 @@ jobs:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
- name: Setup node
|
|
- name: Setup node
|
|
- uses: actions/setup-node@v2-beta
|
|
|
|
|
|
+ uses: actions/setup-node@v2
|
|
with:
|
|
with:
|
|
node-version: 14
|
|
node-version: 14
|
|
check-latest: true
|
|
check-latest: true
|