From 827721dde6669cc1c0f6189ab2d123bd58068def Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 02:04:01 -0330 Subject: [PATCH 01/11] ci: Migrate metamaskbot PR comment Migrate the `metamaskbot` PR comment from CircleCI to GitHub Actions. CircleCI is still used for artifact storage for linked artifacts. Relates to #28572 These changes were extracted from #29256 --- .circleci/config.yml | 8 --- .github/workflows/main.yml | 9 +++ .github/workflows/publish-prerelease.yml | 73 +++++++++++++++++++++++ development/metamaskbot-build-announce.js | 27 ++++----- 4 files changed, 95 insertions(+), 22 deletions(-) create mode 100644 .github/workflows/publish-prerelease.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 60bb80eaf449..61493189a8b6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1426,14 +1426,6 @@ jobs: - store_artifacts: path: development/ts-migration-dashboard/build/final destination: ts-migration-dashboard - - run: - name: Set branch parent commit env var - command: | - echo "export PARENT_COMMIT=$(git merge-base origin/HEAD HEAD)" >> $BASH_ENV - source $BASH_ENV - - run: - name: build:announce - command: ./development/metamaskbot-build-announce.js job-publish-release: executor: node-browsers-small diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ee29c54e94ac..2b64d6379825 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -64,6 +64,15 @@ jobs: name: Wait for CircleCI workflow status uses: ./.github/workflows/wait-for-circleci-workflow-status.yml + publish-prerelease: + name: Publish prerelease + if: ${{ github.event_name == 'pull_request' }} + needs: + - wait-for-circleci-workflow-status + uses: ./.github/workflows/publish-prerelease.yml + secrets: + PR_COMMENT_TOKEN: ${{ secrets.PR_COMMENT_TOKEN }} + all-jobs-completed: name: All jobs completed runs-on: ubuntu-latest diff --git a/.github/workflows/publish-prerelease.yml b/.github/workflows/publish-prerelease.yml new file mode 100644 index 000000000000..316b3c568629 --- /dev/null +++ b/.github/workflows/publish-prerelease.yml @@ -0,0 +1,73 @@ +name: Publish prerelease + +on: + workflow_call: + secrets: + PR_COMMENT_TOKEN: + required: true + +jobs: + publish-prerelease: + name: Publish prerelease + 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: Get merge base commit hash + id: get-merge-base + env: + BASE_REF: ${{ github.event.pull_request.base.ref }} + run: | + merge_base="$(git merge-base "origin/${BASE_REF}" HEAD)" + echo "Merge base is '${merge_base}'" + echo "MERGE_BASE=${merge_base}" >> "$GITHUB_OUTPUT" + + - name: Get CircleCI job details + id: get-circleci-job-details + env: + REPOSITORY: ${{ github.repository }} + BRANCH: ${{ github.head_ref }} + HEAD_COMMIT_HASH: ${{ github.event.pull_request.head.sha }} + run: | + pipeline_id=$(curl --silent "https://circleci.com/api/v2/project/gh/$OWNER/$REPOSITORY/pipeline?branch=$BRANCH" | jq -r ".items | map(select(.vcs.revision == \"${HEAD_COMMIT_HASH}\" )) | first | .id") + workflow_id=$(curl --silent "https://circleci.com/api/v2/pipeline/$pipeline_id/workflow" | jq -r ".items[0].id") + job_details=$(curl --silent "https://circleci.com/api/v2/workflow/$workflow_id/job" | jq -r '.items[] | select(.name == "job-publish-prerelease")') + build_num=$(echo "$job_details" | jq -r '.job_number') + + echo 'CIRCLE_BUILD_NUM='"$build_num" >> "$GITHUB_OUTPUT" + job_id=$(echo "$job_details" | jq -r '.id') + echo 'CIRCLE_WORKFLOW_JOB_ID='"$job_id" >> "$GITHUB_OUTPUT" + + echo "Getting artifacts from pipeline '${pipeline_id}', workflow '${workflow_id}', build number '${build_num}', job ID '${job_id}'" + + - name: Get CircleCI job artifacts + env: + CIRCLE_WORKFLOW_JOB_ID: ${{ steps.get-circleci-job-details.outputs.CIRCLE_WORKFLOW_JOB_ID }} + run: | + for platform in chrome firefox; do + pageload=$(curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/test-artifacts/${platform}/benchmark/pageload.json") + mkdir -p "test-artifacts/${platform}/benchmark" + echo "${pageload}" > "test-artifacts/${platform}/benchmark/pageload.json" + done + + bundle_size=$(curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/test-artifacts/chrome/bundle_size.json") + mkdir -p "test-artifacts/chrome" + echo "${bundle_size}" > "test-artifacts/chrome/bundle_size.json" + + stories=$(curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/storybook/stories.json") + mkdir "storybook-build" + echo "${stories}" > "storybook-build/stories.json" + + - name: Publish prerelease + env: + PR_COMMENT_TOKEN: ${{ secrets.PR_COMMENT_TOKEN }} + PR_NUMBER: ${{ github.event.pull_request.number }} + HEAD_COMMIT_HASH: ${{ github.event.pull_request.head.sha }} + MERGE_BASE_COMMIT_HASH: ${{ steps.get-merge-base.outputs.MERGE_BASE }} + CIRCLE_BUILD_NUM: ${{ steps.get-circleci-job-details.outputs.CIRCLE_BUILD_NUM }} + CIRCLE_WORKFLOW_JOB_ID: ${{ steps.get-circleci-job-details.outputs.CIRCLE_WORKFLOW_JOB_ID }} + run: ./development/metamaskbot-build-announce.js diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index f85d64faa887..e67913d79e2f 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -40,27 +40,26 @@ function getPercentageChange(from, to) { async function start() { const { - GITHUB_COMMENT_TOKEN, - CIRCLE_PULL_REQUEST, - CIRCLE_SHA1, + PR_COMMENT_TOKEN, + PR_NUMBER, + HEAD_COMMIT_HASH, + MERGE_BASE_COMMIT_HASH, CIRCLE_BUILD_NUM, CIRCLE_WORKFLOW_JOB_ID, - PARENT_COMMIT, } = process.env; - console.log('CIRCLE_PULL_REQUEST', CIRCLE_PULL_REQUEST); - console.log('CIRCLE_SHA1', CIRCLE_SHA1); + console.log('PR_NUMBER', PR_NUMBER); + console.log('HEAD_COMMIT_HASH', HEAD_COMMIT_HASH); + console.log('MERGE_BASE_COMMIT_HASH', MERGE_BASE_COMMIT_HASH); console.log('CIRCLE_BUILD_NUM', CIRCLE_BUILD_NUM); console.log('CIRCLE_WORKFLOW_JOB_ID', CIRCLE_WORKFLOW_JOB_ID); - console.log('PARENT_COMMIT', PARENT_COMMIT); - if (!CIRCLE_PULL_REQUEST) { - console.warn(`No pull request detected for commit "${CIRCLE_SHA1}"`); + if (!PR_NUMBER) { + console.warn(`No pull request detected for commit "${HEAD_COMMIT_HASH}"`); return; } - const CIRCLE_PR_NUMBER = CIRCLE_PULL_REQUEST.split('/').pop(); - const SHORT_SHA1 = CIRCLE_SHA1.slice(0, 7); + const SHORT_SHA1 = HEAD_COMMIT_HASH.slice(0, 7); const BUILD_LINK_BASE = `https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0`; // build the github comment content @@ -328,7 +327,7 @@ async function start() { }; const devSizes = Object.keys(prSizes).reduce((sizes, part) => { - sizes[part] = devBundleSizeStats[PARENT_COMMIT][part] || 0; + sizes[part] = devBundleSizeStats[MERGE_BASE_COMMIT_HASH][part] || 0; return sizes; }, {}); @@ -379,7 +378,7 @@ async function start() { } const JSON_PAYLOAD = JSON.stringify({ body: commentBody }); - const POST_COMMENT_URI = `https://api.github.com/repos/metamask/metamask-extension/issues/${CIRCLE_PR_NUMBER}/comments`; + const POST_COMMENT_URI = `https://api.github.com/repos/metamask/metamask-extension/issues/${PR_NUMBER}/comments`; console.log(`Announcement:\n${commentBody}`); console.log(`Posting to: ${POST_COMMENT_URI}`); @@ -388,7 +387,7 @@ async function start() { body: JSON_PAYLOAD, headers: { 'User-Agent': 'metamaskbot', - Authorization: `token ${GITHUB_COMMENT_TOKEN}`, + Authorization: `token ${PR_COMMENT_TOKEN}`, }, }); if (!response.ok) { From 9702cb8bf0bb8a1078587f26b990ae458886c943 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 02:58:18 -0330 Subject: [PATCH 02/11] Temporarily disable e2e tests --- .circleci/config.yml | 130 +++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 65 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 61493189a8b6..027bb00be71f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -180,62 +180,62 @@ workflows: - prep-build-ts-migration-dashboard: requires: - prep-deps - - test-e2e-chrome-webpack: - <<: *main_master_rc_only - requires: - - prep-build-test-webpack - - get-changed-files-with-git-diff - - test-e2e-chrome: - requires: - - prep-build-test - - get-changed-files-with-git-diff - - test-e2e-firefox: - <<: *main_master_rc_only - requires: - - prep-build-test-mv2 - - get-changed-files-with-git-diff - - test-e2e-chrome-rpc: - requires: - - prep-build-test - - get-changed-files-with-git-diff - - test-api-specs: - requires: - - prep-build-test - - get-changed-files-with-git-diff - - test-e2e-chrome-multiple-providers: - requires: - - prep-build-test - - get-changed-files-with-git-diff - - test-e2e-chrome-flask: - requires: - - prep-build-test-flask - - get-changed-files-with-git-diff - - test-e2e-firefox-flask: - <<: *main_master_rc_only - requires: - - prep-build-test-flask-mv2 - - test-e2e-chrome-mmi: - requires: - - prep-build-test-mmi - - get-changed-files-with-git-diff - - test-e2e-mmi-playwright: - requires: - - prep-build-test-mmi-playwright - - test-e2e-swap-playwright - OPTIONAL: - requires: - - prep-build - - test-e2e-chrome-rpc-mmi: - requires: - - prep-build-test-mmi - - get-changed-files-with-git-diff - - test-e2e-chrome-vault-decryption: - filters: - branches: - only: - - main - - /^Version-v(\d+)[.](\d+)[.](\d+)/ - requires: - - prep-build + # - test-e2e-chrome-webpack: + # <<: *main_master_rc_only + # requires: + # - prep-build-test-webpack + # - get-changed-files-with-git-diff + # - test-e2e-chrome: + # requires: + # - prep-build-test + # - get-changed-files-with-git-diff + # - test-e2e-firefox: + # <<: *main_master_rc_only + # requires: + # - prep-build-test-mv2 + # - get-changed-files-with-git-diff + # - test-e2e-chrome-rpc: + # requires: + # - prep-build-test + # - get-changed-files-with-git-diff + # - test-api-specs: + # requires: + # - prep-build-test + # - get-changed-files-with-git-diff + # - test-e2e-chrome-multiple-providers: + # requires: + # - prep-build-test + # - get-changed-files-with-git-diff + # - test-e2e-chrome-flask: + # requires: + # - prep-build-test-flask + # - get-changed-files-with-git-diff + # - test-e2e-firefox-flask: + # <<: *main_master_rc_only + # requires: + # - prep-build-test-flask-mv2 + # - test-e2e-chrome-mmi: + # requires: + # - prep-build-test-mmi + # - get-changed-files-with-git-diff + # - test-e2e-mmi-playwright: + # requires: + # - prep-build-test-mmi-playwright + # - test-e2e-swap-playwright - OPTIONAL: + # requires: + # - prep-build + # - test-e2e-chrome-rpc-mmi: + # requires: + # - prep-build-test-mmi + # - get-changed-files-with-git-diff + # - test-e2e-chrome-vault-decryption: + # filters: + # branches: + # only: + # - main + # - /^Version-v(\d+)[.](\d+)[.](\d+)/ + # requires: + # - prep-build - test-storybook: requires: - prep-deps @@ -277,15 +277,15 @@ workflows: - validate-source-maps-mmi - test-mozilla-lint-mv2 - test-mozilla-lint-flask-mv2 - - test-e2e-chrome - - test-e2e-chrome-multiple-providers - - test-e2e-firefox - - test-e2e-chrome-flask - - test-e2e-firefox-flask - - test-e2e-chrome-mmi - - test-e2e-chrome-rpc-mmi - - test-e2e-chrome-vault-decryption - - test-e2e-chrome-webpack + # - test-e2e-chrome + # - test-e2e-chrome-multiple-providers + # - test-e2e-firefox + # - test-e2e-chrome-flask + # - test-e2e-firefox-flask + # - test-e2e-chrome-mmi + # - test-e2e-chrome-rpc-mmi + # - test-e2e-chrome-vault-decryption + # - test-e2e-chrome-webpack - test-storybook - benchmark: requires: From 54816d1b3e49a7ba1e5f445747f7b2fd8aef3b0a Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 02:59:23 -0330 Subject: [PATCH 03/11] Fetch entire git history --- .github/workflows/publish-prerelease.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/publish-prerelease.yml b/.github/workflows/publish-prerelease.yml index 316b3c568629..22a7c7a9c87f 100644 --- a/.github/workflows/publish-prerelease.yml +++ b/.github/workflows/publish-prerelease.yml @@ -13,6 +13,8 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + with: + 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 From f1da431de422532dbf88c3f71063c30e5dd769f8 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 09:42:16 -0330 Subject: [PATCH 04/11] Fix benchmark artifact processing --- .github/workflows/publish-prerelease.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish-prerelease.yml b/.github/workflows/publish-prerelease.yml index 22a7c7a9c87f..9b4e460d546a 100644 --- a/.github/workflows/publish-prerelease.yml +++ b/.github/workflows/publish-prerelease.yml @@ -50,11 +50,8 @@ jobs: env: CIRCLE_WORKFLOW_JOB_ID: ${{ steps.get-circleci-job-details.outputs.CIRCLE_WORKFLOW_JOB_ID }} run: | - for platform in chrome firefox; do - pageload=$(curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/test-artifacts/${platform}/benchmark/pageload.json") - mkdir -p "test-artifacts/${platform}/benchmark" - echo "${pageload}" > "test-artifacts/${platform}/benchmark/pageload.json" - done + mkdir -p "test-artifacts/chrome/benchmark" + curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/test-artifacts/chrome/benchmark/pageload.json" > "test-artifacts/chrome/benchmark/pageload.json" bundle_size=$(curl --silent --location "https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/0/test-artifacts/chrome/bundle_size.json") mkdir -p "test-artifacts/chrome" From bdb20cb1c322ad11dbe0c04c0cc2d33c1db79949 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 09:48:39 -0330 Subject: [PATCH 05/11] Fix highlight script (no local main branch) --- development/highlights/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/highlights/index.js b/development/highlights/index.js index 2616d602633e..9efd3073d031 100644 --- a/development/highlights/index.js +++ b/development/highlights/index.js @@ -9,7 +9,7 @@ async function getHighlights({ artifactBase }) { // here we assume the PR base branch ("target") is `main` in lieu of doing // a query against the github api which requires an access token // see https://discuss.circleci.com/t/how-to-retrieve-a-pull-requests-base-branch-name-github/36911 - const changedFiles = await getChangedFiles({ target: 'main' }); + const changedFiles = await getChangedFiles({ target: 'origin/main' }); console.log(`detected changed files vs main:`); for (const filename of changedFiles) { console.log(` ${filename}`); From b2f84d2652690b3ec0d2b60c3c781da155a529e0 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 09:55:17 -0330 Subject: [PATCH 06/11] Ensure flask test build is available to prepublish --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 027bb00be71f..619679761271 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -304,6 +304,7 @@ workflows: - trigger-beta-build - prep-build-mmi - prep-build-flask + - prep-build-test-flask - prep-build-flask-mv2 - prep-build-storybook - prep-build-ts-migration-dashboard From daf0b48703336a2211f7a376c1a0885f1f5406ff Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 10:39:27 -0330 Subject: [PATCH 07/11] Build bundles without glob --- development/metamaskbot-build-announce.js | 48 +++++++++++++---------- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index e67913d79e2f..969a2cbfad05 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -5,7 +5,6 @@ const path = require('path'); // Fetch is part of node js in future versions, thus triggering no-shadow // eslint-disable-next-line no-shadow const fetch = require('node-fetch'); -const glob = require('fast-glob'); const VERSION = require('../package.json').version; const { getHighlights } = require('./highlights'); @@ -38,6 +37,17 @@ function getPercentageChange(from, to) { return parseFloat(((to - from) / Math.abs(from)) * 100).toFixed(2); } +/** + * Check whether an artifact exists, + * + * @param {string} url - The URL of the artifact to check. + * @returns True if the artifact exists, false if it doesn't + */ +async function artifactExists(url) { + const response = await fetch(url, { method: 'HEAD' }); + return response.ok; +} + async function start() { const { PR_COMMENT_TOKEN, @@ -111,30 +121,26 @@ async function start() { // links to bundle browser builds const bundles = {}; - const fileType = '.html'; const sourceMapRoot = '/build-artifacts/source-map-explorer/'; - const bundleFiles = await glob(`.${sourceMapRoot}*${fileType}`); - - bundleFiles.forEach((bundleFile) => { - const fileName = bundleFile.split(sourceMapRoot)[1]; - const bundleName = fileName.split(fileType)[0]; - const url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileName}`; - let fileRoot = bundleName; - let fileIndex = bundleName.match(/-[0-9]{1,}$/u)?.index; - - if (fileIndex) { - fileRoot = bundleName.slice(0, fileIndex); - fileIndex = bundleName.slice(fileIndex + 1, bundleName.length); - } - - const link = `${fileIndex || fileRoot}`; + const fileRoots = [ + 'background', + 'common', + 'ui', + 'content-script', + 'offscreen', + ]; - if (fileRoot in bundles) { + for (const fileRoot of fileRoots) { + let fileIndex = 0; + let url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileRoot}-${fileIndex}.html`; + while (await artifactExists(url)) { + const link = `${fileIndex}`; bundles[fileRoot].push(link); - } else { - bundles[fileRoot] = [link]; + + fileIndex += 1; + url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileRoot}-${fileIndex}.html`; } - }); + } const bundleMarkup = `
    ${Object.keys(bundles) .map((key) => `
  • ${key}: ${bundles[key].join(', ')}
  • `) From e9bb798fdaff304ac047d5e2b700b4772f790e9b Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 15:23:20 -0330 Subject: [PATCH 08/11] Add debug logs --- development/metamaskbot-build-announce.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index 969a2cbfad05..2897a3eca4e3 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -133,13 +133,16 @@ async function start() { for (const fileRoot of fileRoots) { let fileIndex = 0; let url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileRoot}-${fileIndex}.html`; + console.log(`Verifying ${url}`); while (await artifactExists(url)) { const link = `${fileIndex}`; bundles[fileRoot].push(link); fileIndex += 1; url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileRoot}-${fileIndex}.html`; + console.log(`Verifying ${url}`); } + console.log(`Not found: ${url}`); } const bundleMarkup = `
      ${Object.keys(bundles) From d25e35ade9c993057cb1d8b3c44eb440f1ed9a83 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 15:58:44 -0330 Subject: [PATCH 09/11] Fix bundle validation --- development/metamaskbot-build-announce.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index 2897a3eca4e3..33f84610f8e4 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -44,7 +44,9 @@ function getPercentageChange(from, to) { * @returns True if the artifact exists, false if it doesn't */ async function artifactExists(url) { - const response = await fetch(url, { method: 'HEAD' }); + // Using a regular GET request here rather than HEAD because for some reason CircleCI always + // returns 404 for HEAD requests. + const response = await fetch(url); return response.ok; } From e10477e1f16577b9c0d0bc0740d297330a47a740 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 16:46:19 -0330 Subject: [PATCH 10/11] Initialize bundle entries --- development/metamaskbot-build-announce.js | 1 + 1 file changed, 1 insertion(+) diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index 33f84610f8e4..d449c8ce7259 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -133,6 +133,7 @@ async function start() { ]; for (const fileRoot of fileRoots) { + bundles[fileRoot] = []; let fileIndex = 0; let url = `${BUILD_LINK_BASE}${sourceMapRoot}${fileRoot}-${fileIndex}.html`; console.log(`Verifying ${url}`); From 2727f61d559e07256aec43dffef5b505b15efb3e Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 20 Dec 2024 17:18:55 -0330 Subject: [PATCH 11/11] Undo temporary CircleCI config changes --- .circleci/config.yml | 131 +++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 66 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 619679761271..61493189a8b6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -180,62 +180,62 @@ workflows: - prep-build-ts-migration-dashboard: requires: - prep-deps - # - test-e2e-chrome-webpack: - # <<: *main_master_rc_only - # requires: - # - prep-build-test-webpack - # - get-changed-files-with-git-diff - # - test-e2e-chrome: - # requires: - # - prep-build-test - # - get-changed-files-with-git-diff - # - test-e2e-firefox: - # <<: *main_master_rc_only - # requires: - # - prep-build-test-mv2 - # - get-changed-files-with-git-diff - # - test-e2e-chrome-rpc: - # requires: - # - prep-build-test - # - get-changed-files-with-git-diff - # - test-api-specs: - # requires: - # - prep-build-test - # - get-changed-files-with-git-diff - # - test-e2e-chrome-multiple-providers: - # requires: - # - prep-build-test - # - get-changed-files-with-git-diff - # - test-e2e-chrome-flask: - # requires: - # - prep-build-test-flask - # - get-changed-files-with-git-diff - # - test-e2e-firefox-flask: - # <<: *main_master_rc_only - # requires: - # - prep-build-test-flask-mv2 - # - test-e2e-chrome-mmi: - # requires: - # - prep-build-test-mmi - # - get-changed-files-with-git-diff - # - test-e2e-mmi-playwright: - # requires: - # - prep-build-test-mmi-playwright - # - test-e2e-swap-playwright - OPTIONAL: - # requires: - # - prep-build - # - test-e2e-chrome-rpc-mmi: - # requires: - # - prep-build-test-mmi - # - get-changed-files-with-git-diff - # - test-e2e-chrome-vault-decryption: - # filters: - # branches: - # only: - # - main - # - /^Version-v(\d+)[.](\d+)[.](\d+)/ - # requires: - # - prep-build + - test-e2e-chrome-webpack: + <<: *main_master_rc_only + requires: + - prep-build-test-webpack + - get-changed-files-with-git-diff + - test-e2e-chrome: + requires: + - prep-build-test + - get-changed-files-with-git-diff + - test-e2e-firefox: + <<: *main_master_rc_only + requires: + - prep-build-test-mv2 + - get-changed-files-with-git-diff + - test-e2e-chrome-rpc: + requires: + - prep-build-test + - get-changed-files-with-git-diff + - test-api-specs: + requires: + - prep-build-test + - get-changed-files-with-git-diff + - test-e2e-chrome-multiple-providers: + requires: + - prep-build-test + - get-changed-files-with-git-diff + - test-e2e-chrome-flask: + requires: + - prep-build-test-flask + - get-changed-files-with-git-diff + - test-e2e-firefox-flask: + <<: *main_master_rc_only + requires: + - prep-build-test-flask-mv2 + - test-e2e-chrome-mmi: + requires: + - prep-build-test-mmi + - get-changed-files-with-git-diff + - test-e2e-mmi-playwright: + requires: + - prep-build-test-mmi-playwright + - test-e2e-swap-playwright - OPTIONAL: + requires: + - prep-build + - test-e2e-chrome-rpc-mmi: + requires: + - prep-build-test-mmi + - get-changed-files-with-git-diff + - test-e2e-chrome-vault-decryption: + filters: + branches: + only: + - main + - /^Version-v(\d+)[.](\d+)[.](\d+)/ + requires: + - prep-build - test-storybook: requires: - prep-deps @@ -277,15 +277,15 @@ workflows: - validate-source-maps-mmi - test-mozilla-lint-mv2 - test-mozilla-lint-flask-mv2 - # - test-e2e-chrome - # - test-e2e-chrome-multiple-providers - # - test-e2e-firefox - # - test-e2e-chrome-flask - # - test-e2e-firefox-flask - # - test-e2e-chrome-mmi - # - test-e2e-chrome-rpc-mmi - # - test-e2e-chrome-vault-decryption - # - test-e2e-chrome-webpack + - test-e2e-chrome + - test-e2e-chrome-multiple-providers + - test-e2e-firefox + - test-e2e-chrome-flask + - test-e2e-firefox-flask + - test-e2e-chrome-mmi + - test-e2e-chrome-rpc-mmi + - test-e2e-chrome-vault-decryption + - test-e2e-chrome-webpack - test-storybook - benchmark: requires: @@ -304,7 +304,6 @@ workflows: - trigger-beta-build - prep-build-mmi - prep-build-flask - - prep-build-test-flask - prep-build-flask-mv2 - prep-build-storybook - prep-build-ts-migration-dashboard