Chore: Move to Cypress 12 and decouple cypress from @grafana/e2e (#74084)

* update drone to use cypress 12 image

* upgrade cypress to 12 in core

* cypress config actually valid

* update @grafana/e2e imports and add lint rule

* ignore grafana-e2e from betterer now it's deprecated

* fix remaining type errors

* fix failing tests

* remove unnecessary tsconfig

* remove unnecessary comment

* update enterprise suite commands to work

* add cypress config to CODEOWNERS

* export setTimeRange in utils

* remove @grafana/e2e from core deps

* try running the command through yarn

* move CMD to scripts

* Update cloud-data-sources e2e image

* Update paths

---------

Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
This commit is contained in:
Ashley Harrison
2023-09-08 16:51:59 +01:00
committed by GitHub
parent e7a2c95586
commit 0f2f25c5d9
116 changed files with 11747 additions and 223 deletions

View File

@@ -16,7 +16,7 @@ echo -e "Starting Cypress scenarios"
args=("$@")
CMD="start"
CMD="cy:run"
PARAMS=""
CLEANUP=""
@@ -26,25 +26,24 @@ declare -A env=(
)
testFilesForSingleSuite="*.spec.ts"
rootForEnterpriseSuite="extensions-suite"
rootForEnterpriseSuite="./e2e/extensions-suite"
declare -A cypressConfig=(
[integrationFolder]=../../e2e
[screenshotsFolder]=../../e2e/"${args[0]}"/screenshots
[videosFolder]=../../e2e/"${args[0]}"/videos
[fileServerFolder]=./cypress
[testFiles]=*-suite/*spec.ts
[screenshotsFolder]=./e2e/"${args[0]}"/screenshots
[fixturesFolder]=./e2e/cypress/fixtures
[videosFolder]=./e2e/"${args[0]}"/videos
[downloadsFolder]=./e2e/cypress/downloads
[fileServerFolder]=./e2e/cypress
[specPattern]=./e2e/*-suite/*spec.ts
[defaultCommandTimeout]=30000
[viewportWidth]=1920
[viewportHeight]=1080
[trashAssetsBeforeRuns]=false
[videoUploadOnPasses]=false
[reporter]=../../e2e/log-reporter.js
[reporter]=./e2e/log-reporter.js
[baseUrl]=${BASE_URL:-"http://$HOST:$PORT"}
)
cd packages/grafana-e2e
case "$1" in
"debug")
echo -e "Debug mode"
@@ -53,23 +52,22 @@ case "$1" in
;;
"dev")
echo "Dev mode"
CMD="open"
CMD="cy:open"
;;
"benchmark")
echo "Benchmark"
PARAMS="--headed"
CMD="start-benchmark"
CMD="cy:benchmark"
env[BENCHMARK_PLUGIN_ENABLED]=true
env[BENCHMARK_PLUGIN_RESULTS_FOLDER]=../../e2e/benchmarks/"${args[1]}"/results
env[BENCHMARK_PLUGIN_RESULTS_FOLDER]=./e2e/benchmarks/"${args[1]}"/results
cypressConfig[video]=false
cypressConfig[integrationFolder]=../../e2e/benchmarks/"${args[1]}"
cypressConfig[screenshotsFolder]=../../e2e/benchmarks/"${args[1]}"/screenshots
cypressConfig[testFiles]=$testFilesForSingleSuite
cypressConfig[screenshotsFolder]=./e2e/benchmarks/"${args[1]}"/screenshots
cypressConfig[specPattern]=./e2e/benchmarks/"${args[1]}"/$testFilesForSingleSuite
;;
"enterprise")
echo "Enterprise"
CLEANUP="rm -rf ../../e2e/extensions-suite"
SETUP="cp -Lr ../../e2e/extensions ../../e2e/extensions-suite"
CLEANUP="rm -rf ./e2e/extensions-suite"
SETUP="cp -Lr ./e2e/extensions ./e2e/extensions-suite"
enterpriseSuite=$(basename "${args[1]}")
case "$2" in
"debug")
@@ -80,18 +78,17 @@ case "$1" in
;;
"dev")
echo "Dev mode"
CMD="open"
CMD="cy:open"
enterpriseSuite=$(basename "${args[2]}")
;;
esac
cypressConfig[testFiles]=$rootForEnterpriseSuite/$enterpriseSuite/*-suite/*.spec.ts
cypressConfig[specPattern]=$rootForEnterpriseSuite/$enterpriseSuite/*-suite/*.spec.ts
$CLEANUP && $SETUP
;;
"")
;;
*)
cypressConfig[integrationFolder]=../../e2e/"${args[0]}"
cypressConfig[testFiles]=$testFilesForSingleSuite
cypressConfig[specPattern]=./e2e/"${args[0]}"/$testFilesForSingleSuite
cypressConfig[video]=${args[1]}
;;
esac