From 4b34d91124100e0e8adeecab7155642677ac0d67 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Wed, 24 Jul 2024 17:49:41 -0400 Subject: [PATCH 01/11] ci: enable VNC over ssh --- .circleci/config.yml | 6 ++++++ .circleci/scripts/enable-vnc.sh | 21 +++++++++++++++++++++ docs/ssh-to-circleci.md | 30 ++++++++++++++++++++++++++++++ package.json | 2 +- 4 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 .circleci/scripts/enable-vnc.sh create mode 100644 docs/ssh-to-circleci.md diff --git a/.circleci/config.yml b/.circleci/config.yml index ae81189b5626..8c8942712506 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -88,6 +88,12 @@ aliases: git checkout -B "$CIRCLE_BRANCH" "$CIRCLE_SHA1" fi + # Piggyback on this alias to enable VNC connections + # The if statement will only be true on node-browsers executors + if [ "${SHELL}" != "/bin/bash" ]; then + cp ~/project/.circleci/scripts/enable-vnc.sh ~/.bashrc + fi + # Check if MMI Optional tests should run - &check-mmi-optional name: Check if MMI Optional tests should run diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh new file mode 100644 index 000000000000..4c2205713d0c --- /dev/null +++ b/.circleci/scripts/enable-vnc.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +# This script is based on the documentation from CircleCI, which does not work as written +# https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc + +set -e +set -u +set -o pipefail + +cd ~/project + +if [ ! -f installed.lock ]; then + touch installed.lock + + sudo apt update + sudo apt install -y fluxbox tigervnc-standalone-server + + export DISPLAY=:1 + tigervncserver -SecurityTypes none -desktop fluxbox + fbsetbg -c app/images/icon-512.png +fi diff --git a/docs/ssh-to-circleci.md b/docs/ssh-to-circleci.md new file mode 100644 index 000000000000..37932fcdc5eb --- /dev/null +++ b/docs/ssh-to-circleci.md @@ -0,0 +1,30 @@ +# Debugging E2E tests by connecting to CircleCI over SSH and VNC + +Developers often say "I can't reproduce this CI failure locally, but it fails on CircleCI." + +If you find yourself in that situation, one option is to use Codespaces, which can reproduce some of these failures, and is a little bit easier to use. + +The other NEW option is to SSH into CircleCI and use VNC. + +1. You must be logged into CircleCI and have access to metamask-extension +2. "Rerun job with SSH" [Documentation](https://circleci.com/docs/ssh-access-jobs/) +3. Look for this instruction + + ``` + You can now SSH into this box if your SSH public key is added: + $ ssh -p xxxxx xxx.xxx.xxx.xxx + ``` + +4. Copy the command that CircleCI gives you and add `-L 5902:localhost:5901` (this will tunnel the VNC connection over SSH) +5. When you login to SSH, it automatically executes `/.circleci/scripts/enable-vnc.sh` to set up the connection +6. Use your favorite VNC viewer on your local machine to connect to `localhost:5902` + - Mac: Finder menu > GO > Connect to server (or + K), then use `vnc://localhost:5902` + - Linux: `tigervnc-viewer` is a good package to match the server + - Windows: [RealVNC Viewer](https://www.realvnc.com/en/connect/download/viewer/windows/) or [TightVNC](https://www.tightvnc.com/download.php) +7. Run your E2E tests as usual and watch the browser open in VNC + +### Notes: + +- **Warning:** Be careful with parallelism. If you run "Rerun job with SSH" on a job that has `parallelism: 24`, it will rerun all 24 VMs with SSH. +- **Warning:** The original E2E tests are probably still running in the background, but they are not displayed in the VNC window. You may want to kill their process. In a future version, we may be able to display them in VNC. +- This procedure was based on the documentation from CircleCI, which does not work as written https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc_ diff --git a/package.json b/package.json index 11312e201d33..6fa268a2b520 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "dist:mmi:debug": "yarn dist --build-type mmi --apply-lavamoat=false --snow=false", "build": "yarn lavamoat:build", "build:dev": "node development/build/index.js", - "start:test": "SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 yarn build:dev testDev", + "start:test": "SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 yarn build:dev testDev --apply-lavamoat=false", "start:test:flask": "yarn start:test --build-type flask", "start:test:mv2:flask": "ENABLE_MV3=false SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 yarn build:dev testDev --build-type flask --apply-lavamoat=false --snow=false", "start:test:mv2": "ENABLE_MV3=false BLOCKAID_FILE_CDN=static.cx.metamask.io/api/v1/confirmations/ppom SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 yarn build:dev testDev --apply-lavamoat=false --snow=false", From 944aea8894baca80733152e7e254c570be1f9d76 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Thu, 25 Jul 2024 10:50:46 -0400 Subject: [PATCH 02/11] Apply suggestions from code review Co-authored-by: Charly Chevalier --- .circleci/config.yml | 2 +- .circleci/scripts/enable-vnc.sh | 26 +++++++++++++++++++------- docs/ssh-to-circleci.md | 8 +++++--- 3 files changed, 25 insertions(+), 11 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 8c8942712506..c2468408c88f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -91,7 +91,7 @@ aliases: # Piggyback on this alias to enable VNC connections # The if statement will only be true on node-browsers executors if [ "${SHELL}" != "/bin/bash" ]; then - cp ~/project/.circleci/scripts/enable-vnc.sh ~/.bashrc + echo "bash ${CIRCLE_WORKING_DIRECTORY}/.circleci/scripts/enable-vnc.sh" >> ~/.bashrc fi # Check if MMI Optional tests should run diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index 4c2205713d0c..55547a6265a3 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -7,15 +7,27 @@ set -e set -u set -o pipefail -cd ~/project - -if [ ! -f installed.lock ]; then - touch installed.lock +cd "${CIRCLE_WORKING_DIRECTORY}" +readonly LOCK_FILE="installed.lock" +if [ ! -f "${LOCK_FILE}" ]; then sudo apt update - sudo apt install -y fluxbox tigervnc-standalone-server + # Install a WM + VNC server + # NOTE: `gxmessage` is required for `fbsetbg` + sudo apt install -y gxmessage fluxbox tigervnc-standalone-server - export DISPLAY=:1 - tigervncserver -SecurityTypes none -desktop fluxbox + touch "${LOCK_FILE}" +fi + +# Required to target the main X display +export DISPLAY=:1 + +# Background +if [ ! -f ~/.fluxbox/lastwallpaper ]; then fbsetbg -c app/images/icon-512.png fi + +# Start VNC server +if ! pgrep tigervncserver > /dev/null; then + tigervncserver -SecurityTypes none -desktop fluxbox +fi \ No newline at end of file diff --git a/docs/ssh-to-circleci.md b/docs/ssh-to-circleci.md index 37932fcdc5eb..323e25b8b5e6 100644 --- a/docs/ssh-to-circleci.md +++ b/docs/ssh-to-circleci.md @@ -25,6 +25,8 @@ The other NEW option is to SSH into CircleCI and use VNC. ### Notes: -- **Warning:** Be careful with parallelism. If you run "Rerun job with SSH" on a job that has `parallelism: 24`, it will rerun all 24 VMs with SSH. -- **Warning:** The original E2E tests are probably still running in the background, but they are not displayed in the VNC window. You may want to kill their process. In a future version, we may be able to display them in VNC. -- This procedure was based on the documentation from CircleCI, which does not work as written https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc_ +This procedure was based on the documentation from CircleCI, which does not work as written [here](https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc). + +> [!WARNING] +> - Be careful with parallelism. If you run "Rerun job with SSH" on a job that has `parallelism: 24`, it will rerun all 24 VMs with SSH. +> - The original E2E tests are probably still running in the background, but they are not displayed in the VNC window. You may want to kill their process. In a future version, we may be able to display them in VNC. From 8479c07edffeec72e4755070fd9183a2c4b57943 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Thu, 25 Jul 2024 11:25:52 -0400 Subject: [PATCH 03/11] cd "${HOME}/project" --- .circleci/scripts/enable-vnc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index 55547a6265a3..56bb1a31280e 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -7,7 +7,7 @@ set -e set -u set -o pipefail -cd "${CIRCLE_WORKING_DIRECTORY}" +cd "${HOME}/project" readonly LOCK_FILE="installed.lock" if [ ! -f "${LOCK_FILE}" ]; then From 01f9210b0b7ab33414cd4af7a4503e8efb002c49 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Thu, 25 Jul 2024 11:50:50 -0400 Subject: [PATCH 04/11] source instead of bash --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c2468408c88f..65c574bec46e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -91,7 +91,7 @@ aliases: # Piggyback on this alias to enable VNC connections # The if statement will only be true on node-browsers executors if [ "${SHELL}" != "/bin/bash" ]; then - echo "bash ${CIRCLE_WORKING_DIRECTORY}/.circleci/scripts/enable-vnc.sh" >> ~/.bashrc + echo "source ${CIRCLE_WORKING_DIRECTORY}/.circleci/scripts/enable-vnc.sh" >> ~/.bashrc fi # Check if MMI Optional tests should run From 1fcdf665c495cf9f4db8e6e666925d63c500d171 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Thu, 25 Jul 2024 12:18:11 -0400 Subject: [PATCH 05/11] always set bg --- .circleci/scripts/enable-vnc.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index 56bb1a31280e..9aa411de102e 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -23,9 +23,7 @@ fi export DISPLAY=:1 # Background -if [ ! -f ~/.fluxbox/lastwallpaper ]; then - fbsetbg -c app/images/icon-512.png -fi +fbsetbg -c app/images/icon-512.png # Start VNC server if ! pgrep tigervncserver > /dev/null; then From 30c6fcb2394169d932eade409c130d75e3496856 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Mon, 29 Jul 2024 14:51:56 -0400 Subject: [PATCH 06/11] trying to fix DISPLAY issues --- .circleci/config.yml | 3 ++- .circleci/scripts/enable-vnc.sh | 15 ++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 65c574bec46e..2a4308ae32d7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -91,7 +91,8 @@ aliases: # Piggyback on this alias to enable VNC connections # The if statement will only be true on node-browsers executors if [ "${SHELL}" != "/bin/bash" ]; then - echo "source ${CIRCLE_WORKING_DIRECTORY}/.circleci/scripts/enable-vnc.sh" >> ~/.bashrc + export DISPLAY=:1.0 + cat ${HOME}/project/.circleci/scripts/enable-vnc.sh >> ~/.bashrc fi # Check if MMI Optional tests should run diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index 9aa411de102e..4e6aaddd4314 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -6,9 +6,13 @@ set -e set -u set -o pipefail +set -x cd "${HOME}/project" +# Required to target the main X display +export DISPLAY=:1.0 + readonly LOCK_FILE="installed.lock" if [ ! -f "${LOCK_FILE}" ]; then sudo apt update @@ -19,13 +23,10 @@ if [ ! -f "${LOCK_FILE}" ]; then touch "${LOCK_FILE}" fi -# Required to target the main X display -export DISPLAY=:1 - -# Background -fbsetbg -c app/images/icon-512.png - # Start VNC server if ! pgrep tigervncserver > /dev/null; then tigervncserver -SecurityTypes none -desktop fluxbox -fi \ No newline at end of file +fi + +# Background +fbsetbg -c "${HOME}/project/app/images/icon-512.png" From 55b0ce29b815a8a532788232904674fd45d99017 Mon Sep 17 00:00:00 2001 From: Harika Jetpoluru <153644847+hjetpoluru@users.noreply.github.com> Date: Wed, 21 Aug 2024 12:23:54 -0400 Subject: [PATCH 07/11] Update ssh-to-circleci.md --- docs/ssh-to-circleci.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/ssh-to-circleci.md b/docs/ssh-to-circleci.md index 323e25b8b5e6..9f1c456140e9 100644 --- a/docs/ssh-to-circleci.md +++ b/docs/ssh-to-circleci.md @@ -16,12 +16,13 @@ The other NEW option is to SSH into CircleCI and use VNC. ``` 4. Copy the command that CircleCI gives you and add `-L 5902:localhost:5901` (this will tunnel the VNC connection over SSH) -5. When you login to SSH, it automatically executes `/.circleci/scripts/enable-vnc.sh` to set up the connection -6. Use your favorite VNC viewer on your local machine to connect to `localhost:5902` +5. Enter this in a terminal for example `ssh -p xxxxx xxx.xxx.xxx.xxx -L 5902:localhost:5901` +6. When you login to SSH, it automatically executes `/.circleci/scripts/enable-vnc.sh` to set up the connection +7. Use your favorite VNC viewer on your local machine to connect to `localhost:5902` - Mac: Finder menu > GO > Connect to server (or + K), then use `vnc://localhost:5902` - Linux: `tigervnc-viewer` is a good package to match the server - Windows: [RealVNC Viewer](https://www.realvnc.com/en/connect/download/viewer/windows/) or [TightVNC](https://www.tightvnc.com/download.php) -7. Run your E2E tests as usual and watch the browser open in VNC +8. Run your E2E tests as usual and watch the browser open in VNC ### Notes: From c1e2f902b7a68594623ebc55bb1810b60dca9b93 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Fri, 23 Aug 2024 00:36:19 -0400 Subject: [PATCH 08/11] now with x11vnc --- .circleci/scripts/enable-vnc.sh | 16 +++++----------- .circleci/scripts/test-run-e2e.sh | 19 +++++++++++++++++++ docs/ssh-to-circleci.md | 20 ++++++++++---------- 3 files changed, 34 insertions(+), 21 deletions(-) diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index 4e6aaddd4314..ef675d217f90 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -10,23 +10,17 @@ set -x cd "${HOME}/project" -# Required to target the main X display -export DISPLAY=:1.0 readonly LOCK_FILE="installed.lock" if [ ! -f "${LOCK_FILE}" ]; then sudo apt update - # Install a WM + VNC server - # NOTE: `gxmessage` is required for `fbsetbg` - sudo apt install -y gxmessage fluxbox tigervnc-standalone-server + # Install a VNC server + sudo apt install -y x11vnc touch "${LOCK_FILE}" fi # Start VNC server -if ! pgrep tigervncserver > /dev/null; then - tigervncserver -SecurityTypes none -desktop fluxbox -fi - -# Background -fbsetbg -c "${HOME}/project/app/images/icon-512.png" +if ! pgrep x11vnc > /dev/null; then + x11vnc -display $DISPLAY -bg -forever -nopw -quiet -listen localhost -xkb -rfbport 5901 -passwd password +fi \ No newline at end of file diff --git a/.circleci/scripts/test-run-e2e.sh b/.circleci/scripts/test-run-e2e.sh index ff23712349ba..a46f35675d0f 100755 --- a/.circleci/scripts/test-run-e2e.sh +++ b/.circleci/scripts/test-run-e2e.sh @@ -11,4 +11,23 @@ then exit 1 fi +# Skip running e2e tests if we're doing "Rerun job with SSH" and we're not on the first node +if [[ $(netstat -tnlp | grep -F 'circleci-agent') && "$CIRCLE_NODE_INDEX" != 0 ]]; then + printf '"Rerun job with SSH" and not on the first node, shutting down\n' + circleci-agent step halt + exit 1 +fi + +# Run the actual test command from the parameters +timeout 20m "$@" --retries 1 + +# Error code 124 means the command timed out +if [ $? -eq 124 ]; then + # Once deleted, if someone tries to "Rerun failed tests" the result will be + # "Error: can not rerun failed tests: no failed tests could be found" + echo 'Timeout error, deleting the test results' + rm -rf test/test-results/e2e + exit 124 +fi + exit 0 diff --git a/docs/ssh-to-circleci.md b/docs/ssh-to-circleci.md index 9f1c456140e9..49fce5d816b5 100644 --- a/docs/ssh-to-circleci.md +++ b/docs/ssh-to-circleci.md @@ -15,19 +15,19 @@ The other NEW option is to SSH into CircleCI and use VNC. $ ssh -p xxxxx xxx.xxx.xxx.xxx ``` -4. Copy the command that CircleCI gives you and add `-L 5902:localhost:5901` (this will tunnel the VNC connection over SSH) -5. Enter this in a terminal for example `ssh -p xxxxx xxx.xxx.xxx.xxx -L 5902:localhost:5901` +4. Copy the command that CircleCI gives you and append `-L 5901:localhost:5901` (this will tunnel the VNC connection over SSH) +5. Enter this in a terminal, for example `ssh -p xxxxx xxx.xxx.xxx.xxx -L 5901:localhost:5901` 6. When you login to SSH, it automatically executes `/.circleci/scripts/enable-vnc.sh` to set up the connection -7. Use your favorite VNC viewer on your local machine to connect to `localhost:5902` - - Mac: Finder menu > GO > Connect to server (or + K), then use `vnc://localhost:5902` +7. Use your favorite VNC viewer on your local machine to connect to `localhost:5901` + - Mac: In the Terminal, run `open vnc://localhost:5901` - Linux: `tigervnc-viewer` is a good package to match the server - Windows: [RealVNC Viewer](https://www.realvnc.com/en/connect/download/viewer/windows/) or [TightVNC](https://www.tightvnc.com/download.php) -8. Run your E2E tests as usual and watch the browser open in VNC +8. The VNC password is simply `password` +9. The normal E2E tests will already be running, and you can watch them run +10. If you want to stop the normal tests and run your own tests, run `pkill timeout` (this works because .circleci/scripts/test-run-e2e.sh runs the `timeout` command) ### Notes: -This procedure was based on the documentation from CircleCI, which does not work as written [here](https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc). - -> [!WARNING] -> - Be careful with parallelism. If you run "Rerun job with SSH" on a job that has `parallelism: 24`, it will rerun all 24 VMs with SSH. -> - The original E2E tests are probably still running in the background, but they are not displayed in the VNC window. You may want to kill their process. In a future version, we may be able to display them in VNC. +- This procedure was based on the documentation from CircleCI [here](https://circleci.com/docs/browser-testing/#interacting-with-the-browser-over-vnc). The way they wrote it doesn't really work correctly, but we fixed it. +- If you run "Rerun job with SSH" on a job that has `parallelism: 24`, it will rerun all 24 VMs, but quickly shut down all but the first one. +- **Advanced Usage:** If you don't want to run the `.bashrc` when you connect, append this to the SSH command `-t bash --norc --noprofile` From 1cb0c3ae81fcd13b9e19c403fae23914f59ced59 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Fri, 23 Aug 2024 00:55:04 -0400 Subject: [PATCH 09/11] fix shellcheck --- .circleci/config.yml | 1 - .circleci/scripts/enable-vnc.sh | 2 +- .circleci/scripts/test-run-e2e.sh | 6 ++++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c4ba521264b8..68c7bbf12bc4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -91,7 +91,6 @@ aliases: # Piggyback on this alias to enable VNC connections # The if statement will only be true on node-browsers executors if [ "${SHELL}" != "/bin/bash" ]; then - export DISPLAY=:1.0 cat ${HOME}/project/.circleci/scripts/enable-vnc.sh >> ~/.bashrc fi diff --git a/.circleci/scripts/enable-vnc.sh b/.circleci/scripts/enable-vnc.sh index e1cf1cee369e..164334289c8c 100644 --- a/.circleci/scripts/enable-vnc.sh +++ b/.circleci/scripts/enable-vnc.sh @@ -21,5 +21,5 @@ fi # Start VNC server if ! pgrep x11vnc > /dev/null; then - x11vnc -display $DISPLAY -bg -forever -nopw -quiet -listen localhost -xkb -rfbport 5901 -passwd password + x11vnc -display "$DISPLAY" -bg -forever -nopw -quiet -listen localhost -xkb -rfbport 5901 -passwd password fi diff --git a/.circleci/scripts/test-run-e2e.sh b/.circleci/scripts/test-run-e2e.sh index a46f35675d0f..5d71a6f561b0 100755 --- a/.circleci/scripts/test-run-e2e.sh +++ b/.circleci/scripts/test-run-e2e.sh @@ -12,7 +12,8 @@ then fi # Skip running e2e tests if we're doing "Rerun job with SSH" and we're not on the first node -if [[ $(netstat -tnlp | grep -F 'circleci-agent') && "$CIRCLE_NODE_INDEX" != 0 ]]; then +if netstat -tnlp | grep -q 'circleci-agent' && [ "$CIRCLE_NODE_INDEX" -ne 0 ] +then printf '"Rerun job with SSH" and not on the first node, shutting down\n' circleci-agent step halt exit 1 @@ -22,7 +23,8 @@ fi timeout 20m "$@" --retries 1 # Error code 124 means the command timed out -if [ $? -eq 124 ]; then +if [ $? -eq 124 ] +then # Once deleted, if someone tries to "Rerun failed tests" the result will be # "Error: can not rerun failed tests: no failed tests could be found" echo 'Timeout error, deleting the test results' From 68280c6cb6ccc101561b234db9264c28c53d1b48 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Thu, 29 Aug 2024 14:05:26 -0400 Subject: [PATCH 10/11] Update docs/ssh-to-circleci.md Co-authored-by: seaona <54408225+seaona@users.noreply.github.com> --- docs/ssh-to-circleci.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ssh-to-circleci.md b/docs/ssh-to-circleci.md index 49fce5d816b5..03a1a283aa99 100644 --- a/docs/ssh-to-circleci.md +++ b/docs/ssh-to-circleci.md @@ -8,7 +8,7 @@ The other NEW option is to SSH into CircleCI and use VNC. 1. You must be logged into CircleCI and have access to metamask-extension 2. "Rerun job with SSH" [Documentation](https://circleci.com/docs/ssh-access-jobs/) -3. Look for this instruction +3. Look for this instruction inside the `Enable SSH` section ``` You can now SSH into this box if your SSH public key is added: From fe75660b3ba392ee8c8ec3df8c3e975a1ad7bc59 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Fri, 30 Aug 2024 12:55:51 -0400 Subject: [PATCH 11/11] shallow-git-clone-and-enable-vnc --- .circleci/config.yml | 112 +++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 8434e8627a93..25e99cee682e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -62,7 +62,7 @@ exclude_develop_master_rc: &exclude_develop_master_rc - /^Version-v(\d+)[.](\d+)[.](\d+)/ aliases: # Shallow Git Clone - - &shallow-git-clone + - &shallow-git-clone-and-enable-vnc name: Shallow Git Clone command: | #!/bin/bash @@ -382,7 +382,7 @@ jobs: trigger-beta-build: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -464,7 +464,7 @@ jobs: prep-deps: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - run: name: Save Yarn version @@ -501,7 +501,7 @@ jobs: get-changed-files-with-git-diff: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -516,7 +516,7 @@ jobs: validate-locales-only: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -525,7 +525,7 @@ jobs: validate-lavamoat-allow-scripts: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -539,7 +539,7 @@ jobs: validate-lavamoat-policy-build: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -556,7 +556,7 @@ jobs: build-type: type: string steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -570,7 +570,7 @@ jobs: prep-build: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -607,7 +607,7 @@ jobs: prep-build-mv2: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -650,7 +650,7 @@ jobs: prep-build-mmi: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -694,7 +694,7 @@ jobs: prep-build-flask: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -735,7 +735,7 @@ jobs: prep-build-flask-mv2: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -776,7 +776,7 @@ jobs: prep-build-test-flask: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -798,7 +798,7 @@ jobs: prep-build-test-flask-mv2: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -820,7 +820,7 @@ jobs: prep-build-test-mmi: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -842,7 +842,7 @@ jobs: prep-build-test-mmi-playwright: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -871,7 +871,7 @@ jobs: prep-build-test: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -895,7 +895,7 @@ jobs: prep-build-test-mv2: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -919,7 +919,7 @@ jobs: prep-build-test-webpack: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - attach_workspace: at: . - run: @@ -939,7 +939,7 @@ jobs: prep-build-storybook: executor: node-linux-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -954,7 +954,7 @@ jobs: prep-build-ts-migration-dashboard: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -969,7 +969,7 @@ jobs: test-yarn-dedupe: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -980,7 +980,7 @@ jobs: test-lint: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -994,7 +994,7 @@ jobs: test-storybook: executor: node-browsers-medium-plus steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1017,7 +1017,7 @@ jobs: test-lint-lockfile: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1031,7 +1031,7 @@ jobs: test-lint-changelog: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1058,7 +1058,7 @@ jobs: test-deps-audit: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1069,7 +1069,7 @@ jobs: test-deps-depcheck: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1081,7 +1081,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 20 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1101,7 +1101,7 @@ jobs: test-api-specs: executor: node-browsers-medium-plus steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1133,7 +1133,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 20 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1157,7 +1157,7 @@ jobs: executor: node-browsers-medium parallelism: 1 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1181,7 +1181,7 @@ jobs: executor: node-browsers-small parallelism: 1 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1204,7 +1204,7 @@ jobs: test-e2e-chrome-rpc-mmi: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1227,7 +1227,7 @@ jobs: test-e2e-chrome-vault-decryption: executor: node-browsers-medium-plus steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1245,7 +1245,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 10 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1269,7 +1269,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 8 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1293,7 +1293,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 12 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1317,7 +1317,7 @@ jobs: executor: playwright parallelism: 2 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -1358,7 +1358,7 @@ jobs: executor: playwright parallelism: 2 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: corepack enable - attach_workspace: at: . @@ -1388,7 +1388,7 @@ jobs: executor: node-browsers-medium-plus parallelism: 24 steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1411,7 +1411,7 @@ jobs: benchmark: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1435,7 +1435,7 @@ jobs: user-actions-benchmark: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1459,7 +1459,7 @@ jobs: stats-module-load-init: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1563,7 +1563,7 @@ jobs: job-publish-release: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1592,7 +1592,7 @@ jobs: - add_ssh_keys: fingerprints: - '3d:49:29:f4:b2:e8:ea:af:d1:32:eb:2a:fc:15:85:d8' - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1608,7 +1608,7 @@ jobs: - add_ssh_keys: fingerprints: - '8b:21:e3:20:7c:c9:db:82:74:2d:86:d6:11:a7:2f:49' - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1623,7 +1623,7 @@ jobs: validate-source-maps: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1634,7 +1634,7 @@ jobs: validate-source-maps-beta: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1645,7 +1645,7 @@ jobs: validate-source-maps-mmi: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1662,7 +1662,7 @@ jobs: validate-source-maps-flask: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1679,7 +1679,7 @@ jobs: validate-source-maps-flask-mv2: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1696,7 +1696,7 @@ jobs: validate-source-maps-mv2: executor: node-browsers-small steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1713,7 +1713,7 @@ jobs: test-mozilla-lint-mv2: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: . @@ -1730,7 +1730,7 @@ jobs: test-mozilla-lint-flask-mv2: executor: node-browsers-medium steps: - - run: *shallow-git-clone + - run: *shallow-git-clone-and-enable-vnc - run: sudo corepack enable - attach_workspace: at: .