From 8ba168efba96eb81a9e9b686836d13a744851b42 Mon Sep 17 00:00:00 2001 From: Evgeniy Scherbina Date: Mon, 20 Nov 2023 08:27:06 -0500 Subject: [PATCH] Docs for triggering webapp e2e tests (#82) * Create WEBAPP_TESTS.md * Update WEBAPP_TESTS.md * Update WEBAPP_TESTS.md * Update WEBAPP_TESTS.md * Update WEBAPP_TESTS.md * Update WEBAPP_TESTS.md * Update WEBAPP_TESTS.md --- architecture/WEBAPP_TESTS.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 architecture/WEBAPP_TESTS.md diff --git a/architecture/WEBAPP_TESTS.md b/architecture/WEBAPP_TESTS.md new file mode 100644 index 0000000..8d2d683 --- /dev/null +++ b/architecture/WEBAPP_TESTS.md @@ -0,0 +1,30 @@ +## WEBAPP TESTS + +We decided to run webapp (https://github.com/Kava-Labs/webapp) e2e tests on every push to main to have more confidence before deploying to public-testnet and mainnet. + +Webapp e2e tests help to catch bugs, especially bugs that happens only in browser environemnt: related to CORS, etc... + +Webapp e2e tests is triggered in this job: `Continuous Integration (Trigger Webapp E2E Tests)` https://github.com/Kava-Labs/kava-proxy-service/blob/main/.github/workflows/ci-webapp-e2e-tests.yml + +We use https://github.com/convictional/trigger-workflow-and-wait `github actions plugin` to facilitate triggering `webapp github actions job` from our github actions setup. + +Plugin requires using of `GITHUB_PERSONAL_ACCESS_TOKEN`, we used devops account for this purposes. We created `Personal access tokens (classic)` on devops account with such permissions: +image + +Token name: `trigger-workflow-and-wait-token` + +## Job execution order + +`Continuous Integration (Main Branch)` -> `Continuous Deployment (Internal Testnet)` -> `Continuous Integration (Trigger Webapp E2E Tests)` + +In another words: + +`Backend Tests` -> `Deploy to Internal Testnet` -> `Trigger Webapp E2E Tests` + +`NOTE`: webapp tests are running against Internal Testnet so we have to redeploy it, before running tests. + +## Accessing Dev Ops Account + +Email: devops@kava.io + +Credentials can be found in 1Password, look for: `Credentials for Github DevOps/Service Account`