From 426411d3a3c7457f553d0c0daea9b0c43caf9ee1 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Wed, 29 Jan 2025 12:59:38 -0500 Subject: [PATCH 1/9] ci: self-hosted runners for benchmarks --- .github/workflows/benchmarks.yml | 43 +++++++++++++++++++ .github/workflows/codespaces.yml | 20 --------- .github/workflows/main.yml | 43 ++++++++++++++++++- .github/workflows/run-tests.yml | 1 + .github/workflows/update-attributions.yml | 2 +- .../wait-for-circleci-workflow-status.yml | 3 +- test/e2e/webdriver/chrome.js | 5 +++ 7 files changed, 94 insertions(+), 23 deletions(-) create mode 100644 .github/workflows/benchmarks.yml delete mode 100644 .github/workflows/codespaces.yml diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml new file mode 100644 index 000000000000..23fb10db576e --- /dev/null +++ b/.github/workflows/benchmarks.yml @@ -0,0 +1,43 @@ +on: + workflow_call: + inputs: + name: + required: true + type: string + command: + required: true + type: string + +jobs: + benchmarks: + name: ${{ inputs.name }} + runs-on: gha-mm-scale-set-ubuntu-22.04-amd64-med + container: + image: cimg/node:22.13-browsers + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup environment + uses: metamask/github-tools/.github/actions/setup-environment@benchmarks + + - name: Download artifact prep-build-test-webpack + uses: actions/download-artifact@v4 + with: + path: ./dist/ + pattern: prep-build-test-webpack + merge-multiple: true + + # Xvfb initializes a virtual "screen" where the browser opens + - name: Configure Xvfb + run: Xvfb -ac :99 -screen 0 1280x1024x16 & + + - name: Run the benchmark + run: ${{ inputs.command }} + + - name: Upload Artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.name }} + path: test-artifacts/chrome/benchmark/ + retention-days: 5 diff --git a/.github/workflows/codespaces.yml b/.github/workflows/codespaces.yml deleted file mode 100644 index 5d37ba2d3dc3..000000000000 --- a/.github/workflows/codespaces.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: 'Codespaces: update yarn cache' - -on: - push: - branches: - - 'codespaces**' - - 'main' - paths: - - '**/yarn.lock' - -jobs: - yarn-cache: - name: Generate cache image - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5adec1fc7358..43518edef343 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -6,6 +6,7 @@ on: - main - master - Version-v* + - trigger-ci* pull_request: types: - opened @@ -16,7 +17,7 @@ on: jobs: lint-workflows: name: Lint workflows - uses: metamask/github-tools/.github/workflows/lint-workflows.yml@c534f265e02af2f2422a3c686bb09a11bfbf4cc2 + uses: metamask/github-tools/.github/workflows/lint-workflows.yml@benchmarks test-lint-shellcheck: name: Test lint shellcheck @@ -66,10 +67,46 @@ jobs: name: Validate lavamoat policy webapp uses: ./.github/workflows/validate-lavamoat-policy-webapp.yml + prep-build-test-webpack: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup environment + uses: metamask/github-tools/.github/actions/setup-environment@main + + - run: yarn webpack --test --no-lavamoat --no-cache --browser=chrome --lockdown --sentry --snow --env production + env: + SEGMENT_PROD_WRITE_KEY: '-' # A fake key just to make the build succeed + + - name: Upload artifact prep-build-test-webpack + uses: actions/upload-artifact@v4 + with: + name: prep-build-test-webpack + path: ./dist/ + retention-days: 1 + run-tests: name: Run tests uses: ./.github/workflows/run-tests.yml + run-pageload-benchmark: + name: Run Benchmarks # So that the level 1 name will be "Run Benchmarks" in the GitHub Actions UI + needs: prep-build-test-webpack + uses: ./.github/workflows/benchmarks.yml + with: + name: run-pageload-benchmark # The level 2 name + command: 'yarn benchmark:chrome --out test-artifacts/chrome/benchmark/pageload.json --retries 2' + + run-user-actions-benchmark: + name: Run Benchmarks # So that the level 1 name will be "Run Benchmarks" in the GitHub Actions UI + needs: prep-build-test-webpack + uses: ./.github/workflows/benchmarks.yml + with: + name: run-user-actions-benchmark # The level 2 name + command: 'yarn user-actions-benchmark:chrome --out test-artifacts/chrome/benchmark/user_actions.json --retries 2' + wait-for-circleci-workflow-status: name: Wait for CircleCI workflow status uses: ./.github/workflows/wait-for-circleci-workflow-status.yml @@ -112,6 +149,8 @@ jobs: secrets: PR_COMMENT_TOKEN: ${{ secrets.PR_COMMENT_TOKEN }} + # Explanation for all-jobs-completed and all-jobs-pass being separate: + # https://github.com/MetaMask/metamask-module-template/pull/151 all-jobs-completed: name: All jobs completed runs-on: ubuntu-latest @@ -128,6 +167,8 @@ jobs: - validate-lavamoat-policy-build - validate-lavamoat-policy-webapp - run-tests + # - run-pageload-benchmark # Will enable this as a required job in a later PR + # - run-user-actions-benchmark # Will enable this as a required job in a later PR - wait-for-circleci-workflow-status - build-storybook - build-beta diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 3cb7c50e573a..508fb92a0590 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -98,6 +98,7 @@ jobs: uses: actions/download-artifact@v4 with: path: coverage + pattern: coverage-* merge-multiple: true - name: Merge coverage reports diff --git a/.github/workflows/update-attributions.yml b/.github/workflows/update-attributions.yml index 3e107d324216..dee8a4dbb0f4 100644 --- a/.github/workflows/update-attributions.yml +++ b/.github/workflows/update-attributions.yml @@ -182,4 +182,4 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - ACTION_RUN_URL: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" + ACTION_RUN_URL: '${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}' diff --git a/.github/workflows/wait-for-circleci-workflow-status.yml b/.github/workflows/wait-for-circleci-workflow-status.yml index 30efc6d35776..9c3c58f3aabc 100644 --- a/.github/workflows/wait-for-circleci-workflow-status.yml +++ b/.github/workflows/wait-for-circleci-workflow-status.yml @@ -30,7 +30,8 @@ jobs: done fi - if [ "$workflow_status" != "success" ]; then + # The "not_run" only happens when you're developing CI workflows and testing weird cases + if [ "$workflow_status" != "success" ] && [ "$workflow_status" != "not_run" ]; then echo "::error::Workflow status is '$workflow_status'. Exiting with error." exit 1 fi diff --git a/test/e2e/webdriver/chrome.js b/test/e2e/webdriver/chrome.js index fa56c107439e..93b0c5376047 100644 --- a/test/e2e/webdriver/chrome.js +++ b/test/e2e/webdriver/chrome.js @@ -61,6 +61,11 @@ class ChromeDriver { args.push('--disable-gpu'); } + // It will crash if you don't do this, but there might be another way around it + if (process.env.GITHUB_ACTION) { + args.push('--no-sandbox'); + } + if (isHeadless('SELENIUM')) { // TODO: Remove notice and consider non-experimental when results are consistent console.warn( From f379e7803838a9a4013246daf1278a8ec1681869 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 11 Feb 2025 15:12:43 -0500 Subject: [PATCH 2/9] responding to reviews --- .github/workflows/benchmark-matrix.yml | 48 +++++++++++++++++++++++ .github/workflows/benchmarks.yml | 43 --------------------- .github/workflows/main.yml | 49 ++++++++++++++++-------- .github/workflows/test-circular-deps.yml | 18 --------- 4 files changed, 80 insertions(+), 78 deletions(-) create mode 100644 .github/workflows/benchmark-matrix.yml delete mode 100644 .github/workflows/benchmarks.yml delete mode 100644 .github/workflows/test-circular-deps.yml diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml new file mode 100644 index 000000000000..d5cf7c3e9d69 --- /dev/null +++ b/.github/workflows/benchmark-matrix.yml @@ -0,0 +1,48 @@ +on: + workflow_call: + +env: + COMMANDS: | + [ + 'yarn benchmark:chrome --out test-artifacts/chrome/benchmark/pageload.json --retries 2', + 'yarn user-actions-benchmark:chrome --out test-artifacts/chrome/benchmark/user_actions.json --retries 2', + ] + +jobs: + benchmarks: + runs-on: ubuntu-latest + container: + image: cimg/node:22.13-browsers + strategy: + matrix: + buildType: [browserify, webpack] + testType: [pageload, userActions] + name: ${{ matrix.buildType }}-${{ matrix.testType }} + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup environment + uses: metamask/github-tools/.github/actions/setup-environment@main + + - name: Download artifact prep-build-test-webpack + uses: actions/download-artifact@v4 + with: + path: ./dist/ + pattern: prep-build-test-${{ matrix.buildType }} + merge-multiple: true + + # Xvfb initializes a virtual "screen" where the browser opens + - name: Configure Xvfb + run: Xvfb -ac :99 -screen 0 1280x1024x16 & + + - name: Run the benchmark + # Choose a benchmark command from env.COMMANDS + run: ${{ matrix.testType == 'pageload' && fromJson(env.COMMANDS)[0] || fromJson(env.COMMANDS)[1] }} + + - name: Upload Artifact + uses: actions/upload-artifact@v4 + with: + name: benchmark-${{ matrix.buildType }}-${{ matrix.testType }} + path: test-artifacts/chrome/benchmark/ + retention-days: 30 diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml deleted file mode 100644 index 23fb10db576e..000000000000 --- a/.github/workflows/benchmarks.yml +++ /dev/null @@ -1,43 +0,0 @@ -on: - workflow_call: - inputs: - name: - required: true - type: string - command: - required: true - type: string - -jobs: - benchmarks: - name: ${{ inputs.name }} - runs-on: gha-mm-scale-set-ubuntu-22.04-amd64-med - container: - image: cimg/node:22.13-browsers - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@benchmarks - - - name: Download artifact prep-build-test-webpack - uses: actions/download-artifact@v4 - with: - path: ./dist/ - pattern: prep-build-test-webpack - merge-multiple: true - - # Xvfb initializes a virtual "screen" where the browser opens - - name: Configure Xvfb - run: Xvfb -ac :99 -screen 0 1280x1024x16 & - - - name: Run the benchmark - run: ${{ inputs.command }} - - - name: Upload Artifact - uses: actions/upload-artifact@v4 - with: - name: ${{ inputs.name }} - path: test-artifacts/chrome/benchmark/ - retention-days: 5 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 43518edef343..b6c273544111 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ on: jobs: lint-workflows: name: Lint workflows - uses: metamask/github-tools/.github/workflows/lint-workflows.yml@benchmarks + uses: metamask/github-tools/.github/workflows/lint-workflows.yml@main test-lint-shellcheck: name: Test lint shellcheck @@ -29,7 +29,16 @@ jobs: test-circular-deps: name: Test circular deps - uses: ./.github/workflows/test-circular-deps.yml + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup environment + uses: metamask/github-tools/.github/actions/setup-environment@main + + - name: Check circular dependencies + run: yarn circular-deps:check test-lint-changelog: name: Test lint changelog @@ -67,6 +76,24 @@ jobs: name: Validate lavamoat policy webapp uses: ./.github/workflows/validate-lavamoat-policy-webapp.yml + prep-build-test-browserify: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup environment + uses: metamask/github-tools/.github/actions/setup-environment@main + + - run: yarn build:test + + - name: Upload artifact prep-build-test-webpack + uses: actions/upload-artifact@v4 + with: + name: prep-build-test-browserify + path: ./dist/ + retention-days: 1 + prep-build-test-webpack: runs-on: ubuntu-latest steps: @@ -91,21 +118,9 @@ jobs: name: Run tests uses: ./.github/workflows/run-tests.yml - run-pageload-benchmark: - name: Run Benchmarks # So that the level 1 name will be "Run Benchmarks" in the GitHub Actions UI - needs: prep-build-test-webpack - uses: ./.github/workflows/benchmarks.yml - with: - name: run-pageload-benchmark # The level 2 name - command: 'yarn benchmark:chrome --out test-artifacts/chrome/benchmark/pageload.json --retries 2' - - run-user-actions-benchmark: - name: Run Benchmarks # So that the level 1 name will be "Run Benchmarks" in the GitHub Actions UI - needs: prep-build-test-webpack - uses: ./.github/workflows/benchmarks.yml - with: - name: run-user-actions-benchmark # The level 2 name - command: 'yarn user-actions-benchmark:chrome --out test-artifacts/chrome/benchmark/user_actions.json --retries 2' + run-benchmark-matrix: + uses: ./.github/workflows/benchmark-matrix.yml + needs: [prep-build-test-browserify, prep-build-test-webpack] wait-for-circleci-workflow-status: name: Wait for CircleCI workflow status diff --git a/.github/workflows/test-circular-deps.yml b/.github/workflows/test-circular-deps.yml deleted file mode 100644 index 5f3024c3f81a..000000000000 --- a/.github/workflows/test-circular-deps.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: Test Circular Dependencies - -on: - workflow_call: - -jobs: - test-circular-deps: - name: Test circular dependencies - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main - - - name: Check circular dependencies - run: yarn circular-deps:check \ No newline at end of file From c15e0e219a9629610219ac15e2f6f42876ba4ab5 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 11 Feb 2025 22:12:22 -0500 Subject: [PATCH 3/9] needs: run-benchmark-matrix --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b6c273544111..50ad9a48dc87 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -182,8 +182,7 @@ jobs: - validate-lavamoat-policy-build - validate-lavamoat-policy-webapp - run-tests - # - run-pageload-benchmark # Will enable this as a required job in a later PR - # - run-user-actions-benchmark # Will enable this as a required job in a later PR + # - run-benchmark-matrix # Will enable this as a required job in a later PR - wait-for-circleci-workflow-status - build-storybook - build-beta From ba554438726350cbb3f17b30fc7d7601c178ce40 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Fri, 14 Feb 2025 15:38:57 -0500 Subject: [PATCH 4/9] ubuntu-22.04 and headless=new --- .github/workflows/benchmark-matrix.yml | 8 +------- test/e2e/webdriver/chrome.js | 7 +------ 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml index d5cf7c3e9d69..68ea9f4df85a 100644 --- a/.github/workflows/benchmark-matrix.yml +++ b/.github/workflows/benchmark-matrix.yml @@ -10,9 +10,7 @@ env: jobs: benchmarks: - runs-on: ubuntu-latest - container: - image: cimg/node:22.13-browsers + runs-on: ubuntu-22.04 strategy: matrix: buildType: [browserify, webpack] @@ -32,10 +30,6 @@ jobs: pattern: prep-build-test-${{ matrix.buildType }} merge-multiple: true - # Xvfb initializes a virtual "screen" where the browser opens - - name: Configure Xvfb - run: Xvfb -ac :99 -screen 0 1280x1024x16 & - - name: Run the benchmark # Choose a benchmark command from env.COMMANDS run: ${{ matrix.testType == 'pageload' && fromJson(env.COMMANDS)[0] || fromJson(env.COMMANDS)[1] }} diff --git a/test/e2e/webdriver/chrome.js b/test/e2e/webdriver/chrome.js index 93b0c5376047..32a55bfc6dee 100644 --- a/test/e2e/webdriver/chrome.js +++ b/test/e2e/webdriver/chrome.js @@ -61,12 +61,7 @@ class ChromeDriver { args.push('--disable-gpu'); } - // It will crash if you don't do this, but there might be another way around it - if (process.env.GITHUB_ACTION) { - args.push('--no-sandbox'); - } - - if (isHeadless('SELENIUM')) { + if (process.env.GITHUB_ACTION || isHeadless('SELENIUM')) { // TODO: Remove notice and consider non-experimental when results are consistent console.warn( '*** Running e2e tests in headless mode is experimental and some tests are known to fail for unknown reasons', From 8135785c3414c5d8af4049e9fe25b973a8ae7081 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Sat, 15 Feb 2025 00:04:42 -0500 Subject: [PATCH 5/9] replaced all setup-environment@main and lint-workflows.yml@main with @hash --- .github/workflows/add-release-label.yml | 2 +- .github/workflows/benchmark-matrix.yml | 2 +- .github/workflows/build-beta.yml | 2 +- .github/workflows/build-storybook.yml | 2 +- .github/workflows/check-attributions.yml | 2 +- .github/workflows/check-pr-labels.yml | 2 +- .github/workflows/check-template-and-add-labels.yml | 2 +- .github/workflows/close-bug-report.yml | 2 +- .github/workflows/fitness-functions.yml | 2 +- .github/workflows/main.yml | 8 ++++---- .github/workflows/publish-prerelease.yml | 2 +- .github/workflows/run-tests.yml | 8 ++++---- .github/workflows/test-deps-audit.yml | 2 +- .github/workflows/test-deps-depcheck.yml | 2 +- .github/workflows/test-lint-changelog.yml | 2 +- .github/workflows/test-lint-lockfile.yml | 2 +- .github/workflows/test-lint.yml | 2 +- .github/workflows/test-storybook.yml | 2 +- .github/workflows/test-yarn-dedupe.yml | 2 +- .github/workflows/update-attributions.yml | 4 ++-- .github/workflows/update-lavamoat-policies.yml | 8 ++++---- .github/workflows/validate-lavamoat-allow-scripts.yml | 2 +- .github/workflows/validate-lavamoat-policy-build.yml | 2 +- .github/workflows/validate-lavamoat-policy-webapp.yml | 2 +- .github/workflows/validate-page-object-usage.yml | 4 ++-- 25 files changed, 36 insertions(+), 36 deletions(-) diff --git a/.github/workflows/add-release-label.yml b/.github/workflows/add-release-label.yml index 2e34ad491b44..d95fb7c15f97 100644 --- a/.github/workflows/add-release-label.yml +++ b/.github/workflows/add-release-label.yml @@ -18,7 +18,7 @@ jobs: fetch-depth: 0 # This is needed to checkout all branches - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Get the next semver version id: get-next-semver-version diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml index 68ea9f4df85a..b1207bc4fb3d 100644 --- a/.github/workflows/benchmark-matrix.yml +++ b/.github/workflows/benchmark-matrix.yml @@ -21,7 +21,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Download artifact prep-build-test-webpack uses: actions/download-artifact@v4 diff --git a/.github/workflows/build-beta.yml b/.github/workflows/build-beta.yml index 98a291edbb4f..edfc0d11c133 100644 --- a/.github/workflows/build-beta.yml +++ b/.github/workflows/build-beta.yml @@ -42,7 +42,7 @@ jobs: - name: Setup environment if: ${{ steps.needs-beta-build.outputs.NEEDS_BETA_BUILD == 'true' }} - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Run beta build if: ${{ steps.needs-beta-build.outputs.NEEDS_BETA_BUILD == 'true' }} diff --git a/.github/workflows/build-storybook.yml b/.github/workflows/build-storybook.yml index e28b32556dbe..ada12e81b79c 100644 --- a/.github/workflows/build-storybook.yml +++ b/.github/workflows/build-storybook.yml @@ -15,7 +15,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Build storybook run: yarn storybook:build diff --git a/.github/workflows/check-attributions.yml b/.github/workflows/check-attributions.yml index cadaf0d1141b..1291f1919f64 100644 --- a/.github/workflows/check-attributions.yml +++ b/.github/workflows/check-attributions.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Check attributions changes run: yarn attributions:check diff --git a/.github/workflows/check-pr-labels.yml b/.github/workflows/check-pr-labels.yml index cc492c09319e..7685c7b61ac8 100644 --- a/.github/workflows/check-pr-labels.yml +++ b/.github/workflows/check-pr-labels.yml @@ -21,7 +21,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Check PR has required labels env: diff --git a/.github/workflows/check-template-and-add-labels.yml b/.github/workflows/check-template-and-add-labels.yml index e9c1c2844ca5..9e515e04c1d5 100644 --- a/.github/workflows/check-template-and-add-labels.yml +++ b/.github/workflows/check-template-and-add-labels.yml @@ -14,7 +14,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Check template and add labels id: check-template-and-add-labels diff --git a/.github/workflows/close-bug-report.yml b/.github/workflows/close-bug-report.yml index 46dcd0a9e9ff..01860bc5a895 100644 --- a/.github/workflows/close-bug-report.yml +++ b/.github/workflows/close-bug-report.yml @@ -16,7 +16,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Close release bug report issue env: diff --git a/.github/workflows/fitness-functions.yml b/.github/workflows/fitness-functions.yml index f8e24692e8fe..b9efb78559f4 100644 --- a/.github/workflows/fitness-functions.yml +++ b/.github/workflows/fitness-functions.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 # This is needed to checkout all branches - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Run fitness functions env: diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 50ad9a48dc87..0f5d7ca225d5 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ on: jobs: lint-workflows: name: Lint workflows - uses: metamask/github-tools/.github/workflows/lint-workflows.yml@main + uses: metamask/github-tools/.github/workflows/lint-workflows.yml@04f91563e5e048d4e34527dc3007f633759e2899 test-lint-shellcheck: name: Test lint shellcheck @@ -35,7 +35,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Check circular dependencies run: yarn circular-deps:check @@ -83,7 +83,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - run: yarn build:test @@ -101,7 +101,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - run: yarn webpack --test --no-lavamoat --no-cache --browser=chrome --lockdown --sentry --snow --env production env: diff --git a/.github/workflows/publish-prerelease.yml b/.github/workflows/publish-prerelease.yml index f630bca8193d..803c52ead718 100644 --- a/.github/workflows/publish-prerelease.yml +++ b/.github/workflows/publish-prerelease.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 # This is needed to get merge base to calculate bundle size diff - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Get merge base commit hash id: get-merge-base diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 508fb92a0590..64870444c1bd 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -22,7 +22,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: test:unit:coverage run: yarn test:unit:coverage --shard=${{ matrix.shard }}/${{ strategy.job-total }} @@ -43,7 +43,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: test:unit:webpack:coverage run: yarn test:unit:webpack:coverage @@ -64,7 +64,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: test:integration:coverage run: yarn test:integration:coverage @@ -92,7 +92,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Download artifacts uses: actions/download-artifact@v4 diff --git a/.github/workflows/test-deps-audit.yml b/.github/workflows/test-deps-audit.yml index 271746da2429..6cc794c35b7d 100644 --- a/.github/workflows/test-deps-audit.yml +++ b/.github/workflows/test-deps-audit.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Run audit run: yarn audit diff --git a/.github/workflows/test-deps-depcheck.yml b/.github/workflows/test-deps-depcheck.yml index 3860c485f25b..fb23a6fc93c0 100644 --- a/.github/workflows/test-deps-depcheck.yml +++ b/.github/workflows/test-deps-depcheck.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Run depcheck run: yarn depcheck diff --git a/.github/workflows/test-lint-changelog.yml b/.github/workflows/test-lint-changelog.yml index 9e8ee0e992c8..57291ffb1dd7 100644 --- a/.github/workflows/test-lint-changelog.yml +++ b/.github/workflows/test-lint-changelog.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Validate changelog # For a `pull_request` event, the branch is `github.head_ref``. diff --git a/.github/workflows/test-lint-lockfile.yml b/.github/workflows/test-lint-lockfile.yml index cc84318624ce..9153b14183ce 100644 --- a/.github/workflows/test-lint-lockfile.yml +++ b/.github/workflows/test-lint-lockfile.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Lint lockfile run: yarn lint:lockfile diff --git a/.github/workflows/test-lint.yml b/.github/workflows/test-lint.yml index df40a3a7ef27..2b1258021a68 100644 --- a/.github/workflows/test-lint.yml +++ b/.github/workflows/test-lint.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Lint run: yarn lint diff --git a/.github/workflows/test-storybook.yml b/.github/workflows/test-storybook.yml index 8e3ddba53587..bcbf11fdd874 100644 --- a/.github/workflows/test-storybook.yml +++ b/.github/workflows/test-storybook.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Install Playwright browsers run: yarn exec playwright install chromium diff --git a/.github/workflows/test-yarn-dedupe.yml b/.github/workflows/test-yarn-dedupe.yml index 40bda1dfb3d2..de9a9561be68 100644 --- a/.github/workflows/test-yarn-dedupe.yml +++ b/.github/workflows/test-yarn-dedupe.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Detect yarn lock deduplications run: yarn dedupe --check diff --git a/.github/workflows/update-attributions.yml b/.github/workflows/update-attributions.yml index dee8a4dbb0f4..3fe93c535a8b 100644 --- a/.github/workflows/update-attributions.yml +++ b/.github/workflows/update-attributions.yml @@ -59,7 +59,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Get commit SHA id: commit-sha run: echo "COMMIT_SHA=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT" @@ -81,7 +81,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Generate Attributions run: yarn attributions:generate - name: Cache attributions file diff --git a/.github/workflows/update-lavamoat-policies.yml b/.github/workflows/update-lavamoat-policies.yml index 09ab6b304a6a..e584ab371fd5 100644 --- a/.github/workflows/update-lavamoat-policies.yml +++ b/.github/workflows/update-lavamoat-policies.yml @@ -59,7 +59,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Get commit SHA id: commit-sha run: echo "COMMIT_SHA=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT" @@ -78,7 +78,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Update LavaMoat build policy run: yarn lavamoat:build:auto - name: Cache build policy @@ -107,7 +107,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Restore build policy uses: actions/cache/restore@v4 with: @@ -264,4 +264,4 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - ACTION_RUN_URL: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" + ACTION_RUN_URL: '${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}' diff --git a/.github/workflows/validate-lavamoat-allow-scripts.yml b/.github/workflows/validate-lavamoat-allow-scripts.yml index 637a2d9aeb54..2abd0f939d0b 100644 --- a/.github/workflows/validate-lavamoat-allow-scripts.yml +++ b/.github/workflows/validate-lavamoat-allow-scripts.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Validate allow-scripts config run: yarn allow-scripts auto diff --git a/.github/workflows/validate-lavamoat-policy-build.yml b/.github/workflows/validate-lavamoat-policy-build.yml index 4524cc26a546..38fa443a6257 100644 --- a/.github/workflows/validate-lavamoat-policy-build.yml +++ b/.github/workflows/validate-lavamoat-policy-build.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Validate lavamoat build policy run: yarn lavamoat:build:auto diff --git a/.github/workflows/validate-lavamoat-policy-webapp.yml b/.github/workflows/validate-lavamoat-policy-webapp.yml index 37ff9ede00fc..268a1fde89d0 100644 --- a/.github/workflows/validate-lavamoat-policy-webapp.yml +++ b/.github/workflows/validate-lavamoat-policy-webapp.yml @@ -15,7 +15,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Validate lavamoat ${{ matrix.build-type }} policy run: yarn lavamoat:webapp:auto:ci --build-types=${{ matrix.build-type }} diff --git a/.github/workflows/validate-page-object-usage.yml b/.github/workflows/validate-page-object-usage.yml index 71296ef47540..0fcea1bcb096 100644 --- a/.github/workflows/validate-page-object-usage.yml +++ b/.github/workflows/validate-page-object-usage.yml @@ -17,7 +17,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@main + uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 - name: Run E2E Page Object Usage Validation env: @@ -26,4 +26,4 @@ jobs: BRANCH: ${{ github.head_ref || github.ref_name }} HEAD_COMMIT_HASH: ${{ github.event.pull_request.head.sha || github.sha }} run: | - yarn validate-e2e-page-object-usage \ No newline at end of file + yarn validate-e2e-page-object-usage From 61028ec611719062310d0571b157895abcdfbf1a Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 18 Feb 2025 13:02:59 -0500 Subject: [PATCH 6/9] env.COMMANDS as JSON removed "Will enable this as a required job in a later PR" multiline list new github-tools hash --- .github/workflows/add-release-label.yml | 2 +- .github/workflows/benchmark-matrix.yml | 12 ++++++------ .github/workflows/build-beta.yml | 2 +- .github/workflows/build-storybook.yml | 2 +- .github/workflows/check-attributions.yml | 2 +- .github/workflows/check-pr-labels.yml | 2 +- .github/workflows/check-template-and-add-labels.yml | 2 +- .github/workflows/close-bug-report.yml | 2 +- .github/workflows/fitness-functions.yml | 2 +- .github/workflows/main.yml | 13 +++++++------ .github/workflows/publish-prerelease.yml | 2 +- .github/workflows/run-tests.yml | 8 ++++---- .github/workflows/test-deps-audit.yml | 2 +- .github/workflows/test-deps-depcheck.yml | 2 +- .github/workflows/test-lint-changelog.yml | 2 +- .github/workflows/test-lint-lockfile.yml | 2 +- .github/workflows/test-lint.yml | 2 +- .github/workflows/test-storybook.yml | 2 +- .github/workflows/test-yarn-dedupe.yml | 2 +- .github/workflows/update-attributions.yml | 4 ++-- .github/workflows/update-lavamoat-policies.yml | 6 +++--- .../workflows/validate-lavamoat-allow-scripts.yml | 2 +- .../workflows/validate-lavamoat-policy-build.yml | 2 +- .../workflows/validate-lavamoat-policy-webapp.yml | 2 +- .github/workflows/validate-page-object-usage.yml | 2 +- 25 files changed, 42 insertions(+), 41 deletions(-) diff --git a/.github/workflows/add-release-label.yml b/.github/workflows/add-release-label.yml index d95fb7c15f97..53f73c730696 100644 --- a/.github/workflows/add-release-label.yml +++ b/.github/workflows/add-release-label.yml @@ -18,7 +18,7 @@ jobs: fetch-depth: 0 # This is needed to checkout all branches - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Get the next semver version id: get-next-semver-version diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml index b1207bc4fb3d..f1aac4f5c1de 100644 --- a/.github/workflows/benchmark-matrix.yml +++ b/.github/workflows/benchmark-matrix.yml @@ -3,10 +3,10 @@ on: env: COMMANDS: | - [ - 'yarn benchmark:chrome --out test-artifacts/chrome/benchmark/pageload.json --retries 2', - 'yarn user-actions-benchmark:chrome --out test-artifacts/chrome/benchmark/user_actions.json --retries 2', - ] + { + pageload: 'yarn benchmark:chrome --out test-artifacts/chrome/benchmark/pageload.json --retries 2', + userActions: 'yarn user-actions-benchmark:chrome --out test-artifacts/chrome/benchmark/user_actions.json --retries 2', + } jobs: benchmarks: @@ -21,7 +21,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Download artifact prep-build-test-webpack uses: actions/download-artifact@v4 @@ -32,7 +32,7 @@ jobs: - name: Run the benchmark # Choose a benchmark command from env.COMMANDS - run: ${{ matrix.testType == 'pageload' && fromJson(env.COMMANDS)[0] || fromJson(env.COMMANDS)[1] }} + run: ${{ fromJson(env.COMMANDS)[matrix.testType] }} - name: Upload Artifact uses: actions/upload-artifact@v4 diff --git a/.github/workflows/build-beta.yml b/.github/workflows/build-beta.yml index edfc0d11c133..c39228d30a69 100644 --- a/.github/workflows/build-beta.yml +++ b/.github/workflows/build-beta.yml @@ -42,7 +42,7 @@ jobs: - name: Setup environment if: ${{ steps.needs-beta-build.outputs.NEEDS_BETA_BUILD == 'true' }} - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Run beta build if: ${{ steps.needs-beta-build.outputs.NEEDS_BETA_BUILD == 'true' }} diff --git a/.github/workflows/build-storybook.yml b/.github/workflows/build-storybook.yml index ada12e81b79c..56ae72f4f02c 100644 --- a/.github/workflows/build-storybook.yml +++ b/.github/workflows/build-storybook.yml @@ -15,7 +15,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Build storybook run: yarn storybook:build diff --git a/.github/workflows/check-attributions.yml b/.github/workflows/check-attributions.yml index 1291f1919f64..af9bd7e1b886 100644 --- a/.github/workflows/check-attributions.yml +++ b/.github/workflows/check-attributions.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Check attributions changes run: yarn attributions:check diff --git a/.github/workflows/check-pr-labels.yml b/.github/workflows/check-pr-labels.yml index 7685c7b61ac8..e564e0543aad 100644 --- a/.github/workflows/check-pr-labels.yml +++ b/.github/workflows/check-pr-labels.yml @@ -21,7 +21,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Check PR has required labels env: diff --git a/.github/workflows/check-template-and-add-labels.yml b/.github/workflows/check-template-and-add-labels.yml index 9e515e04c1d5..232b5e5d8a63 100644 --- a/.github/workflows/check-template-and-add-labels.yml +++ b/.github/workflows/check-template-and-add-labels.yml @@ -14,7 +14,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Check template and add labels id: check-template-and-add-labels diff --git a/.github/workflows/close-bug-report.yml b/.github/workflows/close-bug-report.yml index 01860bc5a895..328c5b4429b6 100644 --- a/.github/workflows/close-bug-report.yml +++ b/.github/workflows/close-bug-report.yml @@ -16,7 +16,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Close release bug report issue env: diff --git a/.github/workflows/fitness-functions.yml b/.github/workflows/fitness-functions.yml index b9efb78559f4..0bb23232aaa1 100644 --- a/.github/workflows/fitness-functions.yml +++ b/.github/workflows/fitness-functions.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 # This is needed to checkout all branches - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Run fitness functions env: diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0f5d7ca225d5..c2d7636da1ac 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ on: jobs: lint-workflows: name: Lint workflows - uses: metamask/github-tools/.github/workflows/lint-workflows.yml@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/workflows/lint-workflows.yml@1d657e262aea7e3f216754febb624831527d2565 test-lint-shellcheck: name: Test lint shellcheck @@ -35,7 +35,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Check circular dependencies run: yarn circular-deps:check @@ -83,7 +83,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - run: yarn build:test @@ -101,7 +101,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - run: yarn webpack --test --no-lavamoat --no-cache --browser=chrome --lockdown --sentry --snow --env production env: @@ -120,7 +120,9 @@ jobs: run-benchmark-matrix: uses: ./.github/workflows/benchmark-matrix.yml - needs: [prep-build-test-browserify, prep-build-test-webpack] + needs: + - prep-build-test-browserify + - prep-build-test-webpack wait-for-circleci-workflow-status: name: Wait for CircleCI workflow status @@ -182,7 +184,6 @@ jobs: - validate-lavamoat-policy-build - validate-lavamoat-policy-webapp - run-tests - # - run-benchmark-matrix # Will enable this as a required job in a later PR - wait-for-circleci-workflow-status - build-storybook - build-beta diff --git a/.github/workflows/publish-prerelease.yml b/.github/workflows/publish-prerelease.yml index 803c52ead718..84cee5279c6c 100644 --- a/.github/workflows/publish-prerelease.yml +++ b/.github/workflows/publish-prerelease.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 # This is needed to get merge base to calculate bundle size diff - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Get merge base commit hash id: get-merge-base diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 64870444c1bd..8307bdf833fd 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -22,7 +22,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: test:unit:coverage run: yarn test:unit:coverage --shard=${{ matrix.shard }}/${{ strategy.job-total }} @@ -43,7 +43,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: test:unit:webpack:coverage run: yarn test:unit:webpack:coverage @@ -64,7 +64,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: test:integration:coverage run: yarn test:integration:coverage @@ -92,7 +92,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Download artifacts uses: actions/download-artifact@v4 diff --git a/.github/workflows/test-deps-audit.yml b/.github/workflows/test-deps-audit.yml index 6cc794c35b7d..4001735c6ad2 100644 --- a/.github/workflows/test-deps-audit.yml +++ b/.github/workflows/test-deps-audit.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Run audit run: yarn audit diff --git a/.github/workflows/test-deps-depcheck.yml b/.github/workflows/test-deps-depcheck.yml index fb23a6fc93c0..baf3c13f41a3 100644 --- a/.github/workflows/test-deps-depcheck.yml +++ b/.github/workflows/test-deps-depcheck.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Run depcheck run: yarn depcheck diff --git a/.github/workflows/test-lint-changelog.yml b/.github/workflows/test-lint-changelog.yml index 57291ffb1dd7..8f014f4c8065 100644 --- a/.github/workflows/test-lint-changelog.yml +++ b/.github/workflows/test-lint-changelog.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Validate changelog # For a `pull_request` event, the branch is `github.head_ref``. diff --git a/.github/workflows/test-lint-lockfile.yml b/.github/workflows/test-lint-lockfile.yml index 9153b14183ce..153a13c3fc3b 100644 --- a/.github/workflows/test-lint-lockfile.yml +++ b/.github/workflows/test-lint-lockfile.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Lint lockfile run: yarn lint:lockfile diff --git a/.github/workflows/test-lint.yml b/.github/workflows/test-lint.yml index 2b1258021a68..205377a376c2 100644 --- a/.github/workflows/test-lint.yml +++ b/.github/workflows/test-lint.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Lint run: yarn lint diff --git a/.github/workflows/test-storybook.yml b/.github/workflows/test-storybook.yml index bcbf11fdd874..89cd695e1413 100644 --- a/.github/workflows/test-storybook.yml +++ b/.github/workflows/test-storybook.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Install Playwright browsers run: yarn exec playwright install chromium diff --git a/.github/workflows/test-yarn-dedupe.yml b/.github/workflows/test-yarn-dedupe.yml index de9a9561be68..2d9c9864bbc6 100644 --- a/.github/workflows/test-yarn-dedupe.yml +++ b/.github/workflows/test-yarn-dedupe.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Detect yarn lock deduplications run: yarn dedupe --check diff --git a/.github/workflows/update-attributions.yml b/.github/workflows/update-attributions.yml index 3fe93c535a8b..85ba21f468b5 100644 --- a/.github/workflows/update-attributions.yml +++ b/.github/workflows/update-attributions.yml @@ -59,7 +59,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Get commit SHA id: commit-sha run: echo "COMMIT_SHA=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT" @@ -81,7 +81,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Generate Attributions run: yarn attributions:generate - name: Cache attributions file diff --git a/.github/workflows/update-lavamoat-policies.yml b/.github/workflows/update-lavamoat-policies.yml index e584ab371fd5..d138733937cb 100644 --- a/.github/workflows/update-lavamoat-policies.yml +++ b/.github/workflows/update-lavamoat-policies.yml @@ -59,7 +59,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Get commit SHA id: commit-sha run: echo "COMMIT_SHA=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT" @@ -78,7 +78,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Update LavaMoat build policy run: yarn lavamoat:build:auto - name: Cache build policy @@ -107,7 +107,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.LAVAMOAT_UPDATE_TOKEN }} PR_NUMBER: ${{ github.event.issue.number }} - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Restore build policy uses: actions/cache/restore@v4 with: diff --git a/.github/workflows/validate-lavamoat-allow-scripts.yml b/.github/workflows/validate-lavamoat-allow-scripts.yml index 2abd0f939d0b..df680b2bb5d0 100644 --- a/.github/workflows/validate-lavamoat-allow-scripts.yml +++ b/.github/workflows/validate-lavamoat-allow-scripts.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Validate allow-scripts config run: yarn allow-scripts auto diff --git a/.github/workflows/validate-lavamoat-policy-build.yml b/.github/workflows/validate-lavamoat-policy-build.yml index 38fa443a6257..eed9d3f471bd 100644 --- a/.github/workflows/validate-lavamoat-policy-build.yml +++ b/.github/workflows/validate-lavamoat-policy-build.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Validate lavamoat build policy run: yarn lavamoat:build:auto diff --git a/.github/workflows/validate-lavamoat-policy-webapp.yml b/.github/workflows/validate-lavamoat-policy-webapp.yml index 268a1fde89d0..2daa15f00cb9 100644 --- a/.github/workflows/validate-lavamoat-policy-webapp.yml +++ b/.github/workflows/validate-lavamoat-policy-webapp.yml @@ -15,7 +15,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Validate lavamoat ${{ matrix.build-type }} policy run: yarn lavamoat:webapp:auto:ci --build-types=${{ matrix.build-type }} diff --git a/.github/workflows/validate-page-object-usage.yml b/.github/workflows/validate-page-object-usage.yml index 0fcea1bcb096..c44c96067900 100644 --- a/.github/workflows/validate-page-object-usage.yml +++ b/.github/workflows/validate-page-object-usage.yml @@ -17,7 +17,7 @@ jobs: uses: actions/checkout@v4 - name: Setup environment - uses: metamask/github-tools/.github/actions/setup-environment@04f91563e5e048d4e34527dc3007f633759e2899 + uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - name: Run E2E Page Object Usage Validation env: From dfdcfc084059e6eb99f3c968fd564dc6878302e3 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 18 Feb 2025 13:16:03 -0500 Subject: [PATCH 7/9] default retention-days --- .github/workflows/benchmark-matrix.yml | 1 - .github/workflows/main.yml | 2 -- 2 files changed, 3 deletions(-) diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml index f1aac4f5c1de..3244f720f351 100644 --- a/.github/workflows/benchmark-matrix.yml +++ b/.github/workflows/benchmark-matrix.yml @@ -39,4 +39,3 @@ jobs: with: name: benchmark-${{ matrix.buildType }}-${{ matrix.testType }} path: test-artifacts/chrome/benchmark/ - retention-days: 30 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c2d7636da1ac..5aabf1e20a62 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -92,7 +92,6 @@ jobs: with: name: prep-build-test-browserify path: ./dist/ - retention-days: 1 prep-build-test-webpack: runs-on: ubuntu-latest @@ -112,7 +111,6 @@ jobs: with: name: prep-build-test-webpack path: ./dist/ - retention-days: 1 run-tests: name: Run tests From 2d7f1eb36bfd09af606877db0ccc5ef739b1f929 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 18 Feb 2025 13:28:31 -0500 Subject: [PATCH 8/9] Apply suggestions from itsyoboieltr code review Co-authored-by: Norbert Elter <72046715+itsyoboieltr@users.noreply.github.com> --- .github/workflows/benchmark-matrix.yml | 2 +- .github/workflows/main.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/benchmark-matrix.yml index 3244f720f351..5ab185ef77c8 100644 --- a/.github/workflows/benchmark-matrix.yml +++ b/.github/workflows/benchmark-matrix.yml @@ -23,7 +23,7 @@ jobs: - name: Setup environment uses: metamask/github-tools/.github/actions/setup-environment@1d657e262aea7e3f216754febb624831527d2565 - - name: Download artifact prep-build-test-webpack + - name: Download artifact prep-build-test-${{ matrix.buildType }} uses: actions/download-artifact@v4 with: path: ./dist/ diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5aabf1e20a62..ccae94d835cc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -87,7 +87,7 @@ jobs: - run: yarn build:test - - name: Upload artifact prep-build-test-webpack + - name: Upload artifact prep-build-test-browserify uses: actions/upload-artifact@v4 with: name: prep-build-test-browserify From 891d0a418890199b37bb041e706fcef7978d304e Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 18 Feb 2025 13:40:35 -0500 Subject: [PATCH 9/9] rename to run-benchmarks.yml --- .github/workflows/main.yml | 4 ++-- .../workflows/{benchmark-matrix.yml => run-benchmarks.yml} | 0 2 files changed, 2 insertions(+), 2 deletions(-) rename .github/workflows/{benchmark-matrix.yml => run-benchmarks.yml} (100%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ccae94d835cc..b61f2a3a7655 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -116,8 +116,8 @@ jobs: name: Run tests uses: ./.github/workflows/run-tests.yml - run-benchmark-matrix: - uses: ./.github/workflows/benchmark-matrix.yml + run-benchmarks: + uses: ./.github/workflows/run-benchmarks.yml needs: - prep-build-test-browserify - prep-build-test-webpack diff --git a/.github/workflows/benchmark-matrix.yml b/.github/workflows/run-benchmarks.yml similarity index 100% rename from .github/workflows/benchmark-matrix.yml rename to .github/workflows/run-benchmarks.yml