From 3dd456ff86a7b63dc1dcbd059a265805081041ac Mon Sep 17 00:00:00 2001 From: Mario Date: Mon, 12 Aug 2024 11:26:18 +0200 Subject: [PATCH] feat(tooling-ci): Cleanup tooling CI workflows (#1732) * feat(tooling-ci): Remove running e2e tests agains devnet/testnet branches * feat(tooling-ci): Remove dispatch to 'operations' repo from changesets * feat(tooling-ci): Ignore 'apps-ui-kit' in changesets * feat(tooling-ci): Disable wallet e2e tests so they dont hang the CI (to be fixed separately) * feat(tooling-ci): Delete steps about wallet e2e tests from e2e workflow * feat(tooling-ci): Ignore apps-backend in changesets --- .changeset/config.json | 2 + .github/actions/ts-e2e/action.yml | 85 ------------------------------- .github/workflows/changesets.yml | 11 ---- .github/workflows/e2e.yml | 76 --------------------------- 4 files changed, 2 insertions(+), 172 deletions(-) delete mode 100644 .github/actions/ts-e2e/action.yml diff --git a/.changeset/config.json b/.changeset/config.json index 48011abf215..fdfee77bdfc 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -12,8 +12,10 @@ "iota-wallet", "iota-explorer", "wallet-dashboard", + "apps-backend", "@iota/core", "@iota/ui", + "@iota/apps-ui-kit", "sponsored-transactions", "kiosk-demo", "kiosk-cli" diff --git a/.github/actions/ts-e2e/action.yml b/.github/actions/ts-e2e/action.yml deleted file mode 100644 index 41ad6bd2dca..00000000000 --- a/.github/actions/ts-e2e/action.yml +++ /dev/null @@ -1,85 +0,0 @@ -name: Detect Changes in Turbo Workspace -description: Run e2e tests with specified branch - -inputs: - ref: - description: "The branch to checkout and run e2e tests on" - required: true - -runs: - using: composite - steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1 - with: - ref: ${{ inputs.ref }} - # Disabled for now as it makes test runs take longer - # - uses: bmwill/rust-cache@v1 # Fork of 'Swatinem/rust-cache' which allows caching additional paths - - uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # pin@v4.0.0 - - # TODO: we don't upload any releases to S3 yet - # - name: Check s3 if binaries have been uploaded already - # continue-on-error: true - # id: check_s3 - # run: | - # echo "Checking if s3 binaries have been built for ${{ github.sha }}" - # echo "s3_file_exist=$(curl -Is https://iota-releases.s3.us-east-1.amazonaws.com/${{ github.sha }}/debug/iota-test-validator | head -n 1 | grep '200 OK')" >> $GITHUB_ENV - # shell: bash - - - name: cargo build - if: env.s3_file_exist == '' # if empty, we have not built and uploaded this binary to s3 yet - run: | - cargo build --bin iota-test-validator --bin iota - shell: bash - - # TODO: we don't upload any releases to S3 yet - # - name: Download from S3 - # if: env.s3_file_exist != '' # only download if the s3 file exists - # working-directory: ./target/debug - # run: | - # mkdir -p $PWD/target/debug - # wget -O target/debug/iota-test-validator https://iota-releases.s3.us-east-1.amazonaws.com/${{ github.sha }}/debug/iota-test-validator - # chmod +x $PWD/target/debug/iota-test-validator - # wget -O target/debug/iota-test-validator https://iota-releases.s3.us-east-1.amazonaws.com/${{ github.sha }}/debug/iota - # chmod +x $PWD/target/debug/iota - # shell: bash - - # checkout current branch - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1 - with: - clean: false - - - name: Install Nodejs - uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # pin@v4.0.2 - with: - node-version: "18" - cache: "pnpm" - - name: Install dependencies - run: pnpm install --frozen-lockfile - shell: bash - - name: Build explorer - run: pnpm turbo --filter=iota-explorer build - shell: bash - - name: Install Playwright Browsers - run: pnpm --filter iota-explorer playwright install --with-deps chromium - shell: bash - - - name: Set env - run: | - echo "E2E_RUN_LOCAL_NET_CMD=(RUST_LOG=\"consensus=off\" $(echo $PWD/target/debug/iota-test-validator) --with-indexer --pg-port 5432 --pg-db-name iota_indexer_v2 --graphql-host 127.0.0.1 --graphql-port 9125)" >> $GITHUB_ENV - echo "VITE_IOTA_BIN=$PWD/target/debug/iota" >> $GITHUB_ENV - shell: bash - - - name: Run TS SDK e2e tests - run: pnpm dlx concurrently --kill-others --success command-1 "$E2E_RUN_LOCAL_NET_CMD" 'pnpm --filter @iota/iota.js --filter @iota/graphql-transport test:e2e' - shell: bash - - - name: Run Explorer e2e tests - run: pnpm --filter iota-explorer playwright test - shell: bash - - - uses: actions/upload-artifact@v3 - if: always() - with: - name: playwright-report-explorer - path: apps/explorer/playwright-report/ - retention-days: 30 diff --git a/.github/workflows/changesets.yml b/.github/workflows/changesets.yml index 746b80233f4..4c991f0bd91 100644 --- a/.github/workflows/changesets.yml +++ b/.github/workflows/changesets.yml @@ -10,17 +10,6 @@ on: concurrency: ${{ github.workflow }}-${{ github.ref }} jobs: - release: - runs-on: self-hosted - steps: - - name: Dispatch Changesets To Operations - uses: peter-evans/repository-dispatch@ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 # pin@v3.0.0 - with: - repository: iotaledger/iota-operations - token: ${{ secrets.CHANGESETS_DEPLOY_DISPATCH }} - event-type: changesets - client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}' - version: runs-on: self-hosted steps: diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 0ceaa0fefef..9181fdc105f 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -48,8 +48,6 @@ jobs: - 5432:5432 steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1 - # Disabled for now as it makes test runs take longer - # - uses: bmwill/rust-cache@v1 # Fork of 'Swatinem/rust-cache' which allows caching additional paths - uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # pin@v4.0.0 - run: cargo build --bin iota-test-validator --bin iota --profile dev - name: Install Nodejs @@ -89,77 +87,3 @@ jobs: name: playwright-report-explorer path: apps/explorer/playwright-report/ retention-days: 30 - - - name: Run Local net - run: cargo run --bin iota-test-validator -- --epoch-duration-ms 10000 & - - name: Build Wallet - # need to run Wallet e2e when its upstream(TS SDK and Rust) or itself is changed - if: ${{ needs.diff.outputs.isWallet == 'true' || needs.diff.outputs.isRust == 'true' || needs.diff.outputs.isTypescriptSDK == 'true'}} - run: pnpm wallet build - - name: Run Wallet e2e tests - if: ${{ needs.diff.outputs.isWallet == 'true' || needs.diff.outputs.isRust == 'true' || needs.diff.outputs.isTypescriptSDK == 'true'}} - run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- pnpm --filter iota-wallet playwright test - - uses: actions/upload-artifact@v3 - if: always() - with: - name: playwright-report-wallet - path: apps/wallet/playwright-report/ - retention-days: 30 - - # Run e2e test against localnet built on the devnet branch for backward compatibility check - local_devnet_branch: - name: Local Network Built on devnet branch - needs: diff - # TODO: add wallet e2e to the `if` condition when available - if: needs.diff.outputs.isExplorer == 'true' || needs.diff.outputs.isTypescriptSDK == 'true' - runs-on: self-hosted - services: - postgres: - image: postgres - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: postgrespw - POSTGRES_DB: iota_indexer_v2 - POSTGRES_HOST_AUTH_METHOD: trust - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 5432:5432 - steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1 - - name: Run E2E Test Runner with devnet branch - uses: "./.github/actions/ts-e2e" - with: - ref: devnet - - # Run e2e test against localnet built on the Testnet branch for backward compatibility check - local_testnet_branch: - name: Local Network Built on testnet branch - needs: diff - # TODO: add wallet e2e to the `if` condition when available - if: needs.diff.outputs.isExplorer == 'true' || needs.diff.outputs.isTypescriptSDK == 'true' - runs-on: self-hosted - services: - postgres: - image: postgres - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: postgrespw - POSTGRES_DB: iota_indexer_v2 - POSTGRES_HOST_AUTH_METHOD: trust - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 5432:5432 - steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1 - - name: Run E2E Test Runner with testnet branch - uses: "./.github/actions/ts-e2e" - with: - ref: testnet