major poc #1116
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: PR | |
on: | |
pull_request: | |
branches: | |
- main | |
merge_group: | |
branches: | |
- main | |
env: | |
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.TS_IMMUTABLE_SDK_NX_TOKEN }} | |
jobs: | |
syncpack: | |
name: Syncpack | |
runs-on: ubuntu-latest-4-cores | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
fetch-depth: 0 | |
- name: setup | |
uses: ./.github/actions/setup | |
- name: Syncpack | |
run: pnpm syncpack:check | |
build-lint-test-typecheck-sdk: | |
name: Build, Lint, Test & Typecheck SDK | |
runs-on: ubuntu-latest-8-cores | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
fetch-depth: 0 | |
- name: setup | |
uses: ./.github/actions/setup | |
- name: Build, Lint, Test & Typecheck | |
run: pnpm --if-present nx affected -t build,lint,test,typecheck | |
build-lint-test-examples: | |
name: Build, Lint & Test Examples | |
runs-on: ubuntu-latest-8-cores | |
env: | |
NODE_OPTIONS: --max-old-space-size=14366 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
fetch-depth: 0 | |
- name: Setup | |
uses: ./.github/actions/setup | |
- name: Build SDK | |
run: pnpm build | |
- name: Prepare SDK | |
run: pnpm prepare:sdk | |
- name: Prepare examples | |
run: pnpm prepare:examples | |
- name: Update modules | |
run: pnpm install --frozen-lockfile=false | |
- name: Build examples | |
run: pnpm build:examples | |
- name: Lint examples | |
run: pnpm lint:examples | |
- name: Setup playwright | |
uses: ./.github/actions/setup-playwright | |
- name: Test examples | |
run: pnpm test:examples | |
func-tests: | |
name: Functional tests | |
runs-on: ubuntu-latest-8-cores | |
env: | |
# imx envs | |
NETWORK: sepolia | |
TEST_ALCHEMY_API_KEY: ${{ secrets.TEST_ALCHEMY_API_KEY }} | |
PUBLIC_API_URL: "https://api.sandbox.x.immutable.com/v1" | |
TEST_STARK_CONTRACT_ADDRESS: "0x2d5C349fD8464DA06a3f90b4B0E9195F3d1b7F98" | |
TEST_REGISTRATION_CONTRACT_ADDRESS: "0xDbA6129C02E69405622fAdc3d5A7f8d23eac3b97" | |
TEST_TOKEN_ADDRESS: "0xfA5539fBEd27887EEbb2515672D80412D1A3ADa3" | |
TEST_WALLET1_PRIVATE_KEY: ${{ secrets.TEST_WALLET1_PRIVATE_KEY }} | |
TEST_WALLET1_STARK_PRIVATE_KEY: ${{ secrets.TEST_WALLET1_STARK_PRIVATE_KEY }} | |
TEST_WALLET2_PRIVATE_KEY: ${{ secrets.TEST_WALLET2_PRIVATE_KEY }} | |
TEST_WALLET2_STARK_PRIVATE_KEY: ${{ secrets.TEST_WALLET2_STARK_PRIVATE_KEY }} | |
TEST_WALLET_BANKER_PRIVATE_KEY: ${{ secrets.TEST_WALLET_BANKER_PRIVATE_KEY }} | |
TEST_WALLET_BANKER_STARK_PRIVATE_KEY: ${{ secrets.TEST_WALLET_BANKER_STARK_PRIVATE_KEY }} | |
TEST_STARKEX_BATCH_SIZE: 500 | |
# zkevm envs | |
ZKEVM_ORDERBOOK_BANKER: ${{ secrets.ZKEVM_ORDERBOOK_BANKER }} | |
ZKEVM_ORDERBOOK_ERC721: "0xBE8B131f39825282Ace9eFf99C0Bb14972417b49" | |
ZKEVM_ORDERBOOK_ERC1155: "0x2efB9B7810B1d1520c0822aa20F1889ABd2c2146" | |
SEAPORT_CONTRACT_ADDRESS: "0x7d117aA8BD6D31c4fa91722f246388f38ab1942c" | |
ZONE_CONTRACT_ADDRESS: "0x1004f9615E79462c711Ff05a386BdbA91a7628C3" | |
ZKEVM_RPC_ENDPOINT: "https://rpc.testnet.immutable.com" | |
ORDERBOOK_MR_API_URL: "https://api.sandbox.immutable.com" | |
ZKEVM_CHAIN_NAME: "imtbl-zkevm-testnet" | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
fetch-depth: 0 | |
- name: setup | |
uses: ./.github/actions/setup | |
- name: Build SDK | |
run: pnpm build | |
- name: Prepare SDK | |
run: pnpm prepare:sdk | |
- name: Prepare tests | |
run: pnpm prepare:tests | |
- name: Run functional tests | |
run: pnpm --filter "@tests/*" --parallel func-test:ci |