From 814dedf035cbc86c501ad0ff759bd0a4e1cb777d Mon Sep 17 00:00:00 2001 From: Artem Makhortov <13339874+artmakh@users.noreply.github.com> Date: Thu, 29 Aug 2024 17:38:51 +0700 Subject: [PATCH] chore(ci): Migrate jobs to new github runners (#2742) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What ❔ Migrating jobs to new github runners ## Why ❔ Streamlining naming convention ## Checklist - [x] PR title corresponds to the body of PR (we generate changelog entries from PRs). - [ ] Tests for the changes have been added / updated. - [ ] Documentation comments have been added / updated. - [ ] Code has been formatted via `zk fmt` and `zk lint`. --------- Co-authored-by: Artem Makhortov <152957193+amakhortov@users.noreply.github.com> --- .../workflows/build-contract-verifier-template.yml | 5 +++-- .github/workflows/build-core-template.yml | 5 +++-- .github/workflows/build-local-node-docker.yml | 2 +- .github/workflows/build-prover-fri-gpu-gar.yml | 2 +- .github/workflows/build-prover-template.yml | 5 +++-- .github/workflows/build-tee-prover-template.yml | 2 +- .github/workflows/ci-common-reusable.yml | 2 +- .github/workflows/ci-core-lint-reusable.yml | 3 +-- .github/workflows/ci-core-reusable.yml | 8 ++++---- .github/workflows/ci-docs-reusable.yml | 3 ++- .github/workflows/ci-prover-reusable.yml | 4 ++-- .github/workflows/ci-zk-toolbox-reusable.yml | 11 ++++------- .github/workflows/release-please-cargo-lock.yml | 1 + .github/workflows/release-stable-en.yml | 5 +++-- .github/workflows/vm-perf-comparison.yml | 2 +- .github/workflows/vm-perf-to-prometheus.yml | 2 +- .github/workflows/zk-environment-publish.yml | 7 ++++--- core/tests/ts-integration/jest.config.json | 1 + core/tests/ts-integration/package.json | 2 +- .../zk_supervisor/src/commands/test/integration.rs | 2 +- 20 files changed, 39 insertions(+), 35 deletions(-) diff --git a/.github/workflows/build-contract-verifier-template.yml b/.github/workflows/build-contract-verifier-template.yml index 2b24801d065..db7c4ba387f 100644 --- a/.github/workflows/build-contract-verifier-template.yml +++ b/.github/workflows/build-contract-verifier-template.yml @@ -28,7 +28,7 @@ jobs: name: Build and Push Docker Images env: IMAGE_TAG_SUFFIX: ${{ inputs.image_tag_suffix }} - runs-on: ${{ fromJSON('["matterlabs-ci-runner", "matterlabs-ci-runner-arm"]')[contains(matrix.platforms, 'arm')] }} + runs-on: ${{ fromJSON('["matterlabs-ci-runner-high-performance", "matterlabs-ci-runner-arm"]')[contains(matrix.platforms, 'arm')] }} strategy: matrix: components: @@ -149,7 +149,8 @@ jobs: create_manifest: name: Create release manifest - runs-on: matterlabs-ci-runner + # TODO: After migraton switch to CI + runs-on: matterlabs-default-infra-runners needs: build-images if: ${{ inputs.action == 'push' }} strategy: diff --git a/.github/workflows/build-core-template.yml b/.github/workflows/build-core-template.yml index 4ead6cb746d..7e5dcc10a93 100644 --- a/.github/workflows/build-core-template.yml +++ b/.github/workflows/build-core-template.yml @@ -33,7 +33,7 @@ jobs: name: Build and Push Docker Images env: IMAGE_TAG_SUFFIX: ${{ inputs.image_tag_suffix }}${{ (inputs.en_alpha_release && matrix.components == 'external-node') && '-alpha' || '' }} - runs-on: ${{ fromJSON('["matterlabs-ci-runner", "matterlabs-ci-runner-arm"]')[contains(matrix.platforms, 'arm')] }} + runs-on: ${{ fromJSON('["matterlabs-ci-runner-high-performance", "matterlabs-ci-runner-arm"]')[contains(matrix.platforms, 'arm')] }} strategy: matrix: components: @@ -158,7 +158,8 @@ jobs: create_manifest: name: Create release manifest - runs-on: matterlabs-ci-runner + # TODO: After migraton switch to CI + runs-on: matterlabs-default-infra-runners needs: build-images if: ${{ inputs.action == 'push' }} strategy: diff --git a/.github/workflows/build-local-node-docker.yml b/.github/workflows/build-local-node-docker.yml index e5e8fb69fb1..7f36f28f286 100644 --- a/.github/workflows/build-local-node-docker.yml +++ b/.github/workflows/build-local-node-docker.yml @@ -16,7 +16,7 @@ on: jobs: build-images: name: Local Node - Build and Push Docker Image - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-high-performance] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: diff --git a/.github/workflows/build-prover-fri-gpu-gar.yml b/.github/workflows/build-prover-fri-gpu-gar.yml index 9740cafd967..b13fca82445 100644 --- a/.github/workflows/build-prover-fri-gpu-gar.yml +++ b/.github/workflows/build-prover-fri-gpu-gar.yml @@ -19,7 +19,7 @@ on: jobs: build-gar-prover-fri-gpu: name: Build prover FRI GPU GAR - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-high-performance] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: diff --git a/.github/workflows/build-prover-template.yml b/.github/workflows/build-prover-template.yml index 7591c45b49e..84e1b4f0f5d 100644 --- a/.github/workflows/build-prover-template.yml +++ b/.github/workflows/build-prover-template.yml @@ -45,7 +45,7 @@ jobs: RUNNER_COMPOSE_FILE: "docker-compose-runner-nightly.yml" ERA_BELLMAN_CUDA_RELEASE: ${{ inputs.ERA_BELLMAN_CUDA_RELEASE }} CUDA_ARCH: ${{ inputs.CUDA_ARCH }} - runs-on: [ matterlabs-ci-runner ] + runs-on: [ matterlabs-ci-runner-high-performance ] strategy: matrix: component: @@ -171,7 +171,8 @@ jobs: env: IMAGE_TAG_SUFFIX: ${{ inputs.image_tag_suffix }} PROTOCOL_VERSION: ${{ needs.build-images.outputs.protocol_version }} - runs-on: matterlabs-ci-runner + # TODO: After migraton switch to CI + runs-on: matterlabs-default-infra-runners if: ${{ inputs.action == 'push' }} strategy: matrix: diff --git a/.github/workflows/build-tee-prover-template.yml b/.github/workflows/build-tee-prover-template.yml index e05f368aa8b..21c7f9340ba 100644 --- a/.github/workflows/build-tee-prover-template.yml +++ b/.github/workflows/build-tee-prover-template.yml @@ -26,7 +26,7 @@ jobs: name: Build and Push Docker Images env: IMAGE_TAG_SUFFIX: ${{ inputs.image_tag_suffix }} - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-high-performance] steps: - uses: actions/checkout@v4 if: ${{ github.event_name == 'workflow_dispatch' }} diff --git a/.github/workflows/ci-common-reusable.yml b/.github/workflows/ci-common-reusable.yml index 191c6918063..d4667a273ef 100644 --- a/.github/workflows/ci-common-reusable.yml +++ b/.github/workflows/ci-common-reusable.yml @@ -4,7 +4,7 @@ on: jobs: build: - runs-on: [matterlabs-ci-runner] + runs-on: matterlabs-ci-runner-highmem-long env: RUNNER_COMPOSE_FILE: "docker-compose-runner-nightly.yml" diff --git a/.github/workflows/ci-core-lint-reusable.yml b/.github/workflows/ci-core-lint-reusable.yml index c8173ddcfbe..3c26f717ee8 100644 --- a/.github/workflows/ci-core-lint-reusable.yml +++ b/.github/workflows/ci-core-lint-reusable.yml @@ -4,8 +4,7 @@ on: jobs: code_lint: - runs-on: [ matterlabs-ci-runner ] - + runs-on: matterlabs-ci-runner-highmem-long steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: diff --git a/.github/workflows/ci-core-reusable.yml b/.github/workflows/ci-core-reusable.yml index 51550f87a34..028d1f8913d 100644 --- a/.github/workflows/ci-core-reusable.yml +++ b/.github/workflows/ci-core-reusable.yml @@ -13,7 +13,7 @@ jobs: name: lint uses: ./.github/workflows/ci-core-lint-reusable.yml unit-tests: - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 @@ -70,7 +70,7 @@ jobs: ci_run zk f cargo test --release -p vm-benchmark --bench oneshot --bench batch loadtest: - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-high-performance] strategy: fail-fast: false matrix: @@ -148,7 +148,7 @@ jobs: env: SERVER_COMPONENTS: "api,tree,eth,state_keeper,housekeeper,commitment_generator,vm_runner_protective_reads,vm_runner_bwip,vm_playground,da_dispatcher${{ matrix.consensus && ',consensus' || '' }}${{ matrix.base_token == 'Custom' && ',base_token_ratio_persister' || '' }}" - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: @@ -317,7 +317,7 @@ jobs: consensus: [false, true] base_token: ["Eth", "Custom"] deployment_mode: ["Rollup", "Validium"] - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] env: SERVER_COMPONENTS: "api,tree,eth,state_keeper,housekeeper,commitment_generator,vm_runner_protective_reads,vm_runner_bwip,da_dispatcher${{ matrix.consensus && ',consensus' || '' }}${{ matrix.base_token == 'Custom' && ',base_token_ratio_persister' || '' }}" diff --git a/.github/workflows/ci-docs-reusable.yml b/.github/workflows/ci-docs-reusable.yml index 82ef312c983..03a95d2a999 100644 --- a/.github/workflows/ci-docs-reusable.yml +++ b/.github/workflows/ci-docs-reusable.yml @@ -4,7 +4,8 @@ on: jobs: lint: - runs-on: [matterlabs-ci-runner] + # TODO: After migraton switch to CI + runs-on: matterlabs-default-infra-runners steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 diff --git a/.github/workflows/ci-prover-reusable.yml b/.github/workflows/ci-prover-reusable.yml index b61a61b709d..d1d4a9ab96b 100644 --- a/.github/workflows/ci-prover-reusable.yml +++ b/.github/workflows/ci-prover-reusable.yml @@ -3,7 +3,7 @@ on: workflow_call: jobs: lint: - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] env: RUNNER_COMPOSE_FILE: "docker-compose-runner-nightly.yml" @@ -34,7 +34,7 @@ jobs: run: ci_run bash -c "cd prover && cargo fmt --check" unit-tests: - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] env: RUNNER_COMPOSE_FILE: "docker-compose-runner-nightly.yml" diff --git a/.github/workflows/ci-zk-toolbox-reusable.yml b/.github/workflows/ci-zk-toolbox-reusable.yml index e70876230b2..9248ef1c1be 100644 --- a/.github/workflows/ci-zk-toolbox-reusable.yml +++ b/.github/workflows/ci-zk-toolbox-reusable.yml @@ -11,8 +11,7 @@ jobs: uses: ./.github/workflows/ci-core-lint-reusable.yml build: - runs-on: [ matterlabs-ci-runner ] - + runs-on: [matterlabs-ci-runner-high-performance] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: @@ -48,9 +47,8 @@ jobs: compression-level: 0 tests: - runs-on: [ matterlabs-ci-runner ] - needs: [ build ] - + runs-on: [matterlabs-ci-runner-high-performance] + needs: [build] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 with: @@ -83,7 +81,7 @@ jobs: ci_run git config --global --add safe.directory /usr/src/zksync ci_run git config --global --add safe.directory /usr/src/zksync/contracts/system-contracts ci_run git config --global --add safe.directory /usr/src/zksync/contracts - + ci_run zk_inception ecosystem init --deploy-paymaster --deploy-erc20 \ --deploy-ecosystem --l1-rpc-url=http://reth:8545 \ --server-db-url=postgres://postgres:notsecurepassword@postgres:5432 \ @@ -115,7 +113,6 @@ jobs: --prover-db-url=postgres://postgres:notsecurepassword@postgres:5432 \ --prover-db-name=zksync_prover_localhost_rollup - - name: Run server run: | ci_run zk_inception server --ignore-prerequisites &>server.log & diff --git a/.github/workflows/release-please-cargo-lock.yml b/.github/workflows/release-please-cargo-lock.yml index bdb5906716c..8c8036dfa47 100644 --- a/.github/workflows/release-please-cargo-lock.yml +++ b/.github/workflows/release-please-cargo-lock.yml @@ -6,6 +6,7 @@ on: name: release-please-update-cargo-lock jobs: update_cargo_lock: + # TODO: After migraton switch to CI runs-on: [matterlabs-default-infra-runners] steps: diff --git a/.github/workflows/release-stable-en.yml b/.github/workflows/release-stable-en.yml index b68f36c3e6f..222d033069d 100644 --- a/.github/workflows/release-stable-en.yml +++ b/.github/workflows/release-stable-en.yml @@ -10,7 +10,8 @@ on: jobs: release: - runs-on: [matterlabs-ci-runner] + # TODO: After migraton switch to CI + runs-on: [matterlabs-default-infra-runners] steps: - name: Login to Docker registries run: | @@ -42,7 +43,7 @@ jobs: docker pull $alpha_tag docker tag $alpha_tag $tag docker push $tag - + platform_tags+=" --amend $tag" done for manifest in "${repo}:${tag_name}" "${repo}:2.0-${tag_name}"; do diff --git a/.github/workflows/vm-perf-comparison.yml b/.github/workflows/vm-perf-comparison.yml index da88b07779f..db729cbadc0 100644 --- a/.github/workflows/vm-perf-comparison.yml +++ b/.github/workflows/vm-perf-comparison.yml @@ -8,7 +8,7 @@ on: jobs: vm-benchmarks: name: Run VM benchmarks - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] steps: - name: checkout base branch diff --git a/.github/workflows/vm-perf-to-prometheus.yml b/.github/workflows/vm-perf-to-prometheus.yml index 3cfd4e4deb8..4d90b2a24eb 100644 --- a/.github/workflows/vm-perf-to-prometheus.yml +++ b/.github/workflows/vm-perf-to-prometheus.yml @@ -12,7 +12,7 @@ concurrency: vm-benchmarks jobs: vm-benchmarks: name: Run VM benchmarks - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-highmem-long] steps: - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4 diff --git a/.github/workflows/zk-environment-publish.yml b/.github/workflows/zk-environment-publish.yml index 5036533abf7..7e232475b14 100644 --- a/.github/workflows/zk-environment-publish.yml +++ b/.github/workflows/zk-environment-publish.yml @@ -76,7 +76,7 @@ jobs: fail-fast: false matrix: include: - - runner: matterlabs-ci-runner + - runner: matterlabs-ci-runner-high-performance arch: amd64 - runner: matterlabs-ci-runner-arm arch: arm64 @@ -129,7 +129,8 @@ jobs: packages: write contents: read needs: [changed_files, get_short_sha, zk_environment] - runs-on: matterlabs-ci-runner + # TODO: After migraton switch to CI + runs-on: [matterlabs-default-infra-runners] steps: - name: Login to DockerHub uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 @@ -188,7 +189,7 @@ jobs: packages: write contents: read needs: changed_files - runs-on: [matterlabs-ci-runner] + runs-on: [matterlabs-ci-runner-high-performance] strategy: matrix: cuda_version: ['11_8', '12_0'] diff --git a/core/tests/ts-integration/jest.config.json b/core/tests/ts-integration/jest.config.json index 109e7a1e008..cf23d389d0e 100644 --- a/core/tests/ts-integration/jest.config.json +++ b/core/tests/ts-integration/jest.config.json @@ -1,4 +1,5 @@ { + "maxWorkers": "70%", "reporters": [ "default", "github-actions" diff --git a/core/tests/ts-integration/package.json b/core/tests/ts-integration/package.json index 03bd84bb3f4..3f92cecb4a5 100644 --- a/core/tests/ts-integration/package.json +++ b/core/tests/ts-integration/package.json @@ -4,7 +4,7 @@ "license": "MIT", "private": true, "scripts": { - "test": "zk f jest --forceExit --testTimeout 60000", + "test": "zk f jest --detectOpenHandles --verbose --testTimeout 60000", "long-running-test": "zk f jest", "fee-test": "RUN_FEE_TEST=1 zk f jest -- fees.test.ts", "api-test": "zk f jest -- api/web3.test.ts api/debug.test.ts", diff --git a/zk_toolbox/crates/zk_supervisor/src/commands/test/integration.rs b/zk_toolbox/crates/zk_supervisor/src/commands/test/integration.rs index f44559fe4e0..c789dda9f54 100644 --- a/zk_toolbox/crates/zk_supervisor/src/commands/test/integration.rs +++ b/zk_toolbox/crates/zk_supervisor/src/commands/test/integration.rs @@ -20,7 +20,7 @@ pub fn run(shell: &Shell, args: IntegrationArgs) -> anyhow::Result<()> { build_repository(shell, &ecosystem_config)?; build_test_contracts(shell, &ecosystem_config)?; - let mut command = cmd!(shell, "yarn jest --forceExit --testTimeout 60000") + let mut command = cmd!(shell, "yarn jest --detectOpenHandles --testTimeout 60000") .env("CHAIN_NAME", ecosystem_config.default_chain); if args.external_node {