diff --git a/.buildkite/pipelines/chrome_forward_testing.yml b/.buildkite/pipelines/chrome_forward_testing.yml index d65653d668bf0..a210cce794927 100644 --- a/.buildkite/pipelines/chrome_forward_testing.yml +++ b/.buildkite/pipelines/chrome_forward_testing.yml @@ -75,15 +75,57 @@ steps: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh - label: 'Rule Management - Prebuilt Rules - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh + label: 'Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests' agents: machineType: n2-standard-4 preemptible: true depends_on: - build timeout_in_minutes: 60 - parallelism: 2 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh + label: 'Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh + label: 'Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh + label: 'Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 retry: automatic: - exit_status: '-1' diff --git a/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml b/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml index 29ad5901ec014..cd37f2fe4731d 100644 --- a/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml +++ b/.buildkite/pipelines/es_serverless/verify_es_serverless_image.yml @@ -15,13 +15,13 @@ agents: machineType: n2-standard-2 steps: - - label: "Annotate runtime parameters" + - label: 'Annotate runtime parameters' command: .buildkite/scripts/steps/es_serverless/annotate_runtime_parameters.sh - - group: "(:kibana: x :elastic:) Trigger Kibana Serverless suite" + - group: '(:kibana: x :elastic:) Trigger Kibana Serverless suite' if: "build.env('SKIP_VERIFICATION') != '1' && build.env('SKIP_VERIFICATION') != 'true'" steps: - - label: "Pre-Build" + - label: 'Pre-Build' command: .buildkite/scripts/lifecycle/pre_build.sh key: pre-build timeout_in_minutes: 10 @@ -31,7 +31,7 @@ steps: provider: gcp machineType: n2-standard-2 - - label: "Build Kibana Distribution" + - label: 'Build Kibana Distribution' command: .buildkite/scripts/steps/build_kibana.sh agents: image: family/kibana-ubuntu-2004 @@ -44,26 +44,26 @@ steps: timeout_in_minutes: 60 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 3 - - label: "Pick Test Group Run Order (FTR + Integration)" + - label: 'Pick Test Group Run Order (FTR + Integration)' command: .buildkite/scripts/steps/test/pick_test_group_run_order.sh depends_on: build timeout_in_minutes: 10 env: - FTR_CONFIGS_SCRIPT: "TEST_ES_SERVERLESS_IMAGE=$ES_SERVERLESS_IMAGE .buildkite/scripts/steps/test/ftr_configs.sh" - JEST_INTEGRATION_SCRIPT: "TEST_ES_SERVERLESS_IMAGE=$ES_SERVERLESS_IMAGE .buildkite/scripts/steps/test/jest_integration.sh" - FTR_CONFIG_PATTERNS: "**/test_serverless/**,**/test/security_solution_api_integration/**/serverless.config.ts,x-pack/test/api_integration/deployment_agnostic/configs/serverless/**" - FTR_EXTRA_ARGS: "$FTR_EXTRA_ARGS" - LIMIT_CONFIG_TYPE: "functional,integration" + FTR_CONFIGS_SCRIPT: 'TEST_ES_SERVERLESS_IMAGE=$ES_SERVERLESS_IMAGE .buildkite/scripts/steps/test/ftr_configs.sh' + JEST_INTEGRATION_SCRIPT: 'TEST_ES_SERVERLESS_IMAGE=$ES_SERVERLESS_IMAGE .buildkite/scripts/steps/test/jest_integration.sh' + FTR_CONFIG_PATTERNS: '**/test_serverless/**,**/test/security_solution_api_integration/**/serverless.config.ts,x-pack/test/api_integration/deployment_agnostic/configs/serverless/**' + FTR_EXTRA_ARGS: '$FTR_EXTRA_ARGS' + LIMIT_CONFIG_TYPE: 'functional,integration' retry: automatic: - - exit_status: "*" + - exit_status: '*' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_entity_analytics.sh - label: "Serverless Entity Analytics - Security Solution Cypress Tests" + label: 'Serverless Entity Analytics - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -76,11 +76,11 @@ steps: parallelism: 3 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_explore.sh - label: "Serverless Explore - Security Solution Cypress Tests" + label: 'Serverless Explore - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -93,11 +93,11 @@ steps: parallelism: 4 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_investigations.sh - label: "Serverless Investigations - Security Solution Cypress Tests" + label: 'Serverless Investigations - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -110,11 +110,11 @@ steps: parallelism: 10 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_rule_management.sh - label: "Serverless Rule Management - Security Solution Cypress Tests" + label: 'Serverless Rule Management - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -127,11 +127,11 @@ steps: parallelism: 5 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules.sh - label: "Serverless Rule Management - Prebuilt Rules - Security Solution Cypress Tests" + - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_customization.sh + label: 'Serverless Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -144,11 +144,62 @@ steps: parallelism: 1 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_installation.sh + label: 'Serverless Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests' + if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_management.sh + label: 'Serverless Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests' + if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_upgrade.sh + label: 'Serverless Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests' + if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_detection_engine.sh - label: "Serverless Detection Engine - Security Solution Cypress Tests" + label: 'Serverless Detection Engine - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -161,11 +212,11 @@ steps: parallelism: 5 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_detection_engine_exceptions.sh - label: "Serverless Detection Engine - Exceptions - Security Solution Cypress Tests" + label: 'Serverless Detection Engine - Exceptions - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -178,11 +229,11 @@ steps: parallelism: 4 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_ai_assistant.sh - label: "Serverless AI Assistant - Security Solution Cypress Tests" + label: 'Serverless AI Assistant - Security Solution Cypress Tests' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -195,11 +246,11 @@ steps: parallelism: 1 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/defend_workflows_serverless.sh - label: "Defend Workflows Cypress Tests on Serverless" + label: 'Defend Workflows Cypress Tests on Serverless' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -212,11 +263,11 @@ steps: parallelism: 12 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - command: .buildkite/scripts/steps/functional/security_serverless_osquery.sh - label: "Osquery Cypress Tests on Serverless" + label: 'Osquery Cypress Tests on Serverless' if: "build.env('SKIP_CYPRESS') != '1' && build.env('SKIP_CYPRESS') != 'true'" agents: image: family/kibana-ubuntu-2004 @@ -229,16 +280,16 @@ steps: parallelism: 7 retry: automatic: - - exit_status: "-1" + - exit_status: '-1' limit: 1 - wait: ~ - - label: ":arrow_up::elastic::arrow_up: Promote docker image" + - label: ':arrow_up::elastic::arrow_up: Promote docker image' command: .buildkite/scripts/steps/es_serverless/promote_es_serverless_image.sh $ES_SERVERLESS_IMAGE - wait: ~ - - label: "Post-Build" + - label: 'Post-Build' command: .buildkite/scripts/lifecycle/post_build.sh timeout_in_minutes: 10 diff --git a/.buildkite/pipelines/flaky_tests/groups.json b/.buildkite/pipelines/flaky_tests/groups.json index 2e823f39f6137..aa7010a6a783f 100644 --- a/.buildkite/pipelines/flaky_tests/groups.json +++ b/.buildkite/pipelines/flaky_tests/groups.json @@ -33,12 +33,36 @@ "name": "[Serverless] Security Solution Rule Management - Cypress" }, { - "key": "cypress/security_solution_rule_management_prebuilt_rules", - "name": "Security Solution Rule Management - Prebuilt Rules - Cypress" + "key": "cypress/security_solution_rule_management_prebuilt_rules_customization", + "name": "Security Solution Rule Management - Prebuilt Rules Customization - Cypress" }, { - "key": "cypress/security_serverless_rule_management_prebuilt_rules", - "name": "[Serverless] Security Solution Rule Management - Prebuilt Rules - Cypress" + "key": "cypress/security_serverless_rule_management_prebuilt_rules_customization", + "name": "[Serverless] Security Solution Rule Management - Prebuilt Rules Customization - Cypress" + }, + { + "key": "cypress/security_solution_rule_management_prebuilt_rules_installation", + "name": "Security Solution Rule Management - Prebuilt Rules Installation - Cypress" + }, + { + "key": "cypress/security_serverless_rule_management_prebuilt_rules_installation", + "name": "[Serverless] Security Solution Rule Management - Prebuilt Rules Installation - Cypress" + }, + { + "key": "cypress/security_solution_rule_management_prebuilt_rules_management", + "name": "Security Solution Rule Management - Prebuilt Rules Management - Cypress" + }, + { + "key": "cypress/security_serverless_rule_management_prebuilt_rules_management", + "name": "[Serverless] Security Solution Rule Management - Prebuilt Rules Management - Cypress" + }, + { + "key": "cypress/security_solution_rule_management_prebuilt_rules_upgrade", + "name": "Security Solution Rule Management - Prebuilt Rules Upgrade - Cypress" + }, + { + "key": "cypress/security_serverless_rule_management_prebuilt_rules_upgrade", + "name": "[Serverless] Security Solution Rule Management - Prebuilt Rules Upgrade - Cypress" }, { "key": "cypress/security_solution_detection_engine", diff --git a/.buildkite/pipelines/on_merge.yml b/.buildkite/pipelines/on_merge.yml index 4c4c6f310b80b..13178fc1b6b81 100644 --- a/.buildkite/pipelines/on_merge.yml +++ b/.buildkite/pipelines/on_merge.yml @@ -223,8 +223,8 @@ steps: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_serverless_rule_management.sh - label: 'Serverless Rule Management - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management.sh + label: 'Rule Management - Security Solution Cypress Tests' agents: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod @@ -232,14 +232,14 @@ steps: machineType: n2-standard-4 preemptible: true timeout_in_minutes: 60 - parallelism: 5 + parallelism: 4 retry: automatic: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules.sh - label: 'Serverless Rule Management - Prebuilt Rules - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh + label: 'Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests' agents: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod @@ -247,14 +247,14 @@ steps: machineType: n2-standard-4 preemptible: true timeout_in_minutes: 60 - parallelism: 1 + parallelism: 2 retry: automatic: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_solution_rule_management.sh - label: 'Rule Management - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh + label: 'Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests' agents: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod @@ -262,14 +262,29 @@ steps: machineType: n2-standard-4 preemptible: true timeout_in_minutes: 60 - parallelism: 4 + parallelism: 2 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh + label: 'Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests' + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + timeout_in_minutes: 60 + parallelism: 2 retry: automatic: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh - label: 'Rule Management - Prebuilt Rules - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh + label: 'Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests' agents: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod diff --git a/.buildkite/pipelines/pointer_compression.yml b/.buildkite/pipelines/pointer_compression.yml index d84833938cd2e..55697006f9c05 100644 --- a/.buildkite/pipelines/pointer_compression.yml +++ b/.buildkite/pipelines/pointer_compression.yml @@ -66,8 +66,8 @@ steps: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh - label: 'Rule Management - Prebuilt Rules - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh + label: 'Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests' agents: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod @@ -77,7 +77,58 @@ steps: depends_on: - build timeout_in_minutes: 60 - parallelism: 2 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh + label: 'Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests' + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh + label: 'Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests' + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh + label: 'Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests' + agents: + image: family/kibana-ubuntu-2004 + imageProject: elastic-images-prod + provider: gcp + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + timeout_in_minutes: 60 + parallelism: 1 retry: automatic: - exit_status: '-1' diff --git a/.buildkite/pipelines/pull_request/security_solution/rule_management.yml b/.buildkite/pipelines/pull_request/security_solution/rule_management.yml index 085df0f65eeb5..db216c8a1d6b3 100644 --- a/.buildkite/pipelines/pull_request/security_solution/rule_management.yml +++ b/.buildkite/pipelines/pull_request/security_solution/rule_management.yml @@ -19,8 +19,8 @@ steps: - exit_status: '-1' limit: 1 - - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh - label: 'Rule Management - Prebuilt Rules - Security Solution Cypress Tests' + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh + label: 'Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests' agents: machineType: n2-standard-4 preemptible: true @@ -33,7 +33,67 @@ steps: - check_types - check_oas_snapshot timeout_in_minutes: 60 - parallelism: 2 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh + label: 'Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + - quick_checks + - checks + - linting + - linting_with_types + - check_types + - check_oas_snapshot + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh + label: 'Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + - quick_checks + - checks + - linting + - linting_with_types + - check_types + - check_oas_snapshot + timeout_in_minutes: 60 + parallelism: 1 + retry: + automatic: + - exit_status: '-1' + limit: 1 + + - command: .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh + label: 'Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests' + agents: + machineType: n2-standard-4 + preemptible: true + depends_on: + - build + - quick_checks + - checks + - linting + - linting_with_types + - check_types + - check_oas_snapshot + timeout_in_minutes: 60 + parallelism: 1 retry: automatic: - exit_status: '-1' diff --git a/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_customization.sh b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_customization.sh new file mode 100644 index 0000000000000..e118458071137 --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_customization.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Customization - Cypress Tests on Serverless" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:customization:run:serverless; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_installation.sh b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_installation.sh new file mode 100644 index 0000000000000..3f0caec132ca2 --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_installation.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Installation - Cypress Tests on Serverless" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:installation:run:serverless; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_management.sh b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_management.sh new file mode 100644 index 0000000000000..7c5d14843c851 --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_management.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Management - Cypress Tests on Serverless" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:management:run:serverless; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_upgrade.sh similarity index 68% rename from .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh rename to .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_upgrade.sh index 97254dbf99310..d073821f5c3ab 100644 --- a/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules.sh +++ b/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules_upgrade.sh @@ -7,11 +7,11 @@ source .buildkite/scripts/steps/functional/common.sh export JOB=kibana-security-solution-chrome export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} -echo "--- Rule Management - Prebuilt Rules - Security Solution Cypress Tests" +echo "--- Rule Management - Prebuilt Rules Upgrade - Cypress Tests on Serverless" cd x-pack/test/security_solution_cypress set +e BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) -BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:run:ess; status=$?; yarn junit:merge || :; exit $status +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:upgrade:run:serverless; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh new file mode 100644 index 0000000000000..1ee099f769f2c --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_customization.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Customization - Security Solution Cypress Tests" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:customization:run:ess; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh new file mode 100644 index 0000000000000..c93f55b5efdbc --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_installation.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Installation - Security Solution Cypress Tests" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:installation:run:ess; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh new file mode 100644 index 0000000000000..3d362316c91fe --- /dev/null +++ b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_management.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +set -euo pipefail + +source .buildkite/scripts/steps/functional/common.sh + +export JOB=kibana-security-solution-chrome +export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} + +echo "--- Rule Management - Prebuilt Rules Management - Security Solution Cypress Tests" + +cd x-pack/test/security_solution_cypress + +set +e +BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) + +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:management:run:ess; status=$?; yarn junit:merge || :; exit $status diff --git a/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules.sh b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh similarity index 69% rename from .buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules.sh rename to .buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh index 73b1224c8f3a4..5278e6c89197a 100644 --- a/.buildkite/scripts/steps/functional/security_serverless_rule_management_prebuilt_rules.sh +++ b/.buildkite/scripts/steps/functional/security_solution_rule_management_prebuilt_rules_upgrade.sh @@ -7,11 +7,11 @@ source .buildkite/scripts/steps/functional/common.sh export JOB=kibana-security-solution-chrome export KIBANA_INSTALL_DIR=${KIBANA_BUILD_LOCATION} -echo "--- Rule Management - Prebuilt Rules - Cypress Tests on Serverless" +echo "--- Rule Management - Prebuilt Rules Upgrade - Security Solution Cypress Tests" cd x-pack/test/security_solution_cypress set +e BK_ANALYTICS_API_KEY=$(vault_get security-solution-ci sec-sol-cypress-bk-api-key) -BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:run:serverless; status=$?; yarn junit:merge || :; exit $status +BK_ANALYTICS_API_KEY=$BK_ANALYTICS_API_KEY yarn cypress:rule_management:prebuilt_rules:upgrade:run:ess; status=$?; yarn junit:merge || :; exit $status diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/rule_customization.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/customization/rule_customization.cy.ts similarity index 90% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/rule_customization.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/customization/rule_customization.cy.ts index ff8dd8ffd12d6..10d13af0450f0 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/rule_customization.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/customization/rule_customization.cy.ts @@ -5,7 +5,7 @@ * 2.0. */ -import { clickRuleUpdatesTab } from '../../../../tasks/prebuilt_rules'; +import { clickRuleUpdatesTab } from '../../../../../tasks/prebuilt_rules'; import { clickUpdateScheduleMenuItem, openBulkEditAddIndexPatternsForm, @@ -23,16 +23,16 @@ import { typeScheduleLookback, typeTags, waitForBulkEditActionToFinish, -} from '../../../../tasks/rules_bulk_actions'; +} from '../../../../../tasks/rules_bulk_actions'; import { ABOUT_EDIT_TAB, ACTIONS_EDIT_TAB, DEFINITION_EDIT_TAB, SCHEDULE_EDIT_TAB, -} from '../../../../screens/create_new_rule'; -import { ABOUT_RULE_DESCRIPTION } from '../../../../screens/rule_details'; -import { goToRuleEditSettings } from '../../../../tasks/rule_details'; -import { getIndexPatterns, getNewRule } from '../../../../objects/rule'; +} from '../../../../../screens/create_new_rule'; +import { ABOUT_RULE_DESCRIPTION } from '../../../../../screens/rule_details'; +import { goToRuleEditSettings } from '../../../../../tasks/rule_details'; +import { getIndexPatterns, getNewRule } from '../../../../../objects/rule'; import { editFirstRule, expectModifiedBadgeToBeDisplayed, @@ -42,25 +42,25 @@ import { filterByCustomRules, filterByElasticRules, selectAllRules, -} from '../../../../tasks/alerts_detection_rules'; -import { MODIFIED_RULE_BADGE, RULE_NAME } from '../../../../screens/alerts_detection_rules'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +} from '../../../../../tasks/alerts_detection_rules'; +import { MODIFIED_RULE_BADGE, RULE_NAME } from '../../../../../screens/alerts_detection_rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/api_calls/common'; import { createAndInstallMockedPrebuiltRules, installPrebuiltRuleAssets, preventPrebuiltRulesPackageInstallation, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { createRule, patchRule } from '../../../../tasks/api_calls/rules'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { createRule, patchRule } from '../../../../../tasks/api_calls/rules'; -import { login } from '../../../../tasks/login'; +import { login } from '../../../../../tasks/login'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; -import { fillDescription, goToAboutStepTab } from '../../../../tasks/create_new_rule'; -import { saveEditedRule } from '../../../../tasks/edit_rule'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; +import { fillDescription, goToAboutStepTab } from '../../../../../tasks/create_new_rule'; +import { saveEditedRule } from '../../../../../tasks/edit_rule'; describe( 'Detection rules, Prebuilt Rules Customization workflow', { diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_error_handling.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_error_handling.cy.ts similarity index 95% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_error_handling.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_error_handling.cy.ts index da20429a21d47..d9ca8df13f11b 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_error_handling.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_error_handling.cy.ts @@ -8,8 +8,8 @@ import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +} from '../../../../../tasks/api_calls/common'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { getInstallSingleRuleButtonByRuleId, getUpgradeSingleRuleButtonByRuleId, @@ -19,14 +19,14 @@ import { SELECT_ALL_RULES_ON_PAGE_CHECKBOX, UPGRADE_ALL_RULES_BUTTON, UPGRADE_SELECTED_RULES_BUTTON, -} from '../../../../screens/alerts_detection_rules'; -import { expectRulesInTable, selectRulesByName } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; +import { expectRulesInTable, selectRulesByName } from '../../../../../tasks/alerts_detection_rules'; import { installPrebuiltRuleAssets, createAndInstallMockedPrebuiltRules, preventPrebuiltRulesPackageInstallation, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { login } from '../../../../tasks/login'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { login } from '../../../../../tasks/login'; import { clickAddElasticRulesButton, assertInstallationRequestIsComplete, @@ -41,8 +41,8 @@ import { assertRuleInstallationSuccessToastShown, assertRuleUpgradeSuccessToastShown, interceptUpgradeRequestToFailPartially, -} from '../../../../tasks/prebuilt_rules'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/prebuilt_rules'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; // https://github.com/elastic/kibana/issues/179970 describe( diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_notifications.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_notifications.cy.ts similarity index 89% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_notifications.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_notifications.cy.ts index 5f35627dd0010..1e7189d709d86 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_notifications.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_notifications.cy.ts @@ -5,25 +5,25 @@ * 2.0. */ -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { ADD_ELASTIC_RULES_BTN, ADD_ELASTIC_RULES_EMPTY_PROMPT_BTN, -} from '../../../../screens/alerts_detection_rules'; -import { deleteFirstRule } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; +import { deleteFirstRule } from '../../../../../tasks/alerts_detection_rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/api_calls/common'; import { installAllPrebuiltRulesRequest, installPrebuiltRuleAssets, installMockEmptyPrebuiltRulesPackage, installSpecificPrebuiltRulesRequest, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; describe( 'Detection rules, Prebuilt Rules Installation and Update Notifications', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_update_authorization.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_update_authorization.cy.ts similarity index 94% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_update_authorization.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_update_authorization.cy.ts index bc0b531a156f1..d8c94e951338f 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_update_authorization.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_update_authorization.cy.ts @@ -12,14 +12,14 @@ import { } from '@kbn/security-solution-plugin/common/constants'; import { ROLES } from '@kbn/security-solution-plugin/common/test'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { createAndInstallMockedPrebuiltRules, installPrebuiltRuleAssets, preventPrebuiltRulesPackageInstallation, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { visit } from '../../../../tasks/navigation'; -import { RULES_MANAGEMENT_URL } from '../../../../urls/rules_management'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { visit } from '../../../../../tasks/navigation'; +import { RULES_MANAGEMENT_URL } from '../../../../../urls/rules_management'; import { ADD_ELASTIC_RULES_BTN, getInstallSingleRuleButtonByRuleId, @@ -31,8 +31,8 @@ import { RULES_UPDATES_TAB, RULE_CHECKBOX, UPGRADE_ALL_RULES_BUTTON, -} from '../../../../screens/alerts_detection_rules'; -import { login } from '../../../../tasks/login'; +} from '../../../../../screens/alerts_detection_rules'; +import { login } from '../../../../../tasks/login'; // Rule to test update const RULE_1_ID = 'rule_1'; diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_via_fleet.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_via_fleet.cy.ts similarity index 78% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_via_fleet.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_via_fleet.cy.ts index 347cfdccdc628..07ec9162f901c 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_via_fleet.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_via_fleet.cy.ts @@ -6,14 +6,17 @@ */ import { BOOTSTRAP_PREBUILT_RULES_URL } from '@kbn/security-solution-plugin/common/api/detection_engine'; -import { installSinglePrebuiltRule } from '../../../../tasks/prebuilt_rules/install_prebuilt_rules'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { RULE_NAME } from '../../../../screens/alerts_detection_rules'; -import { deletePrebuiltRulesFleetPackage } from '../../../../tasks/api_calls/prebuilt_rules'; -import { login } from '../../../../tasks/login'; -import { visitAddRulesPage, visitRulesManagementTable } from '../../../../tasks/rules_management'; -import { deleteAlertsAndRules } from '../../../../tasks/api_calls/common'; -import { expectManagementTableRules } from '../../../../tasks/alerts_detection_rules'; +import { installSinglePrebuiltRule } from '../../../../../tasks/prebuilt_rules/install_prebuilt_rules'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { RULE_NAME } from '../../../../../screens/alerts_detection_rules'; +import { deletePrebuiltRulesFleetPackage } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { login } from '../../../../../tasks/login'; +import { + visitAddRulesPage, + visitRulesManagementTable, +} from '../../../../../tasks/rules_management'; +import { deleteAlertsAndRules } from '../../../../../tasks/api_calls/common'; +import { expectManagementTableRules } from '../../../../../tasks/alerts_detection_rules'; const PREBUILT_RULES_PACKAGE_INSTALLATION_TIMEOUT_MS = 120000; // 2 minutes diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_with_preview.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_with_preview.cy.ts similarity index 95% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_with_preview.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_with_preview.cy.ts index 8896fb9f653a5..7bde12682d36a 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_with_preview.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_with_preview.cy.ts @@ -7,32 +7,33 @@ import { omit } from 'lodash'; import type { Filter } from '@kbn/es-query'; -import type { ThreatMapping } from '@kbn/securitysolution-io-ts-alerting-types'; import type { PrebuiltRuleAsset } from '@kbn/security-solution-plugin/server/lib/detection_engine/prebuilt_rules'; import type { Threshold } from '@kbn/security-solution-plugin/common/api/detection_engine/model/rule_schema'; -import { AlertSuppression } from '@kbn/security-solution-plugin/common/api/detection_engine/model/rule_schema'; - -import { expectRulesInTable } from '../../../../tasks/alerts_detection_rules'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { + AlertSuppression, + type ThreatMapping, +} from '@kbn/security-solution-plugin/common/api/detection_engine/model/rule_schema'; +import { expectRulesInTable } from '../../../../../tasks/alerts_detection_rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { INSTALL_PREBUILT_RULE_BUTTON, INSTALL_PREBUILT_RULE_PREVIEW, RULES_MANAGEMENT_TABLE, -} from '../../../../screens/alerts_detection_rules'; -import { RULE_MANAGEMENT_PAGE_BREADCRUMB } from '../../../../screens/breadcrumbs'; +} from '../../../../../screens/alerts_detection_rules'; +import { RULE_MANAGEMENT_PAGE_BREADCRUMB } from '../../../../../screens/breadcrumbs'; import { installMockPrebuiltRulesPackage, installPrebuiltRuleAssets, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { createSavedQuery, deleteSavedQueries } from '../../../../tasks/api_calls/saved_queries'; -import { fetchMachineLearningModules } from '../../../../tasks/api_calls/machine_learning'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { createSavedQuery, deleteSavedQueries } from '../../../../../tasks/api_calls/saved_queries'; +import { fetchMachineLearningModules } from '../../../../../tasks/api_calls/machine_learning'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; import { assertRuleInstallationSuccessToastShown, assertRulesNotPresentInAddPrebuiltRulesTable, clickAddElasticRulesButton, -} from '../../../../tasks/prebuilt_rules'; +} from '../../../../../tasks/prebuilt_rules'; import { assertAlertSuppressionPropertiesShown, assertCommonPropertiesShown, @@ -50,14 +51,14 @@ import { assertWindowSizePropertyShown, closePrebuiltRuleInstallFlyout, openPrebuiltRuleInstallFlyoutFor, -} from '../../../../tasks/prebuilt_rules_preview'; -import { visitAddRulesPage } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/prebuilt_rules_preview'; +import { visitAddRulesPage } from '../../../../../tasks/rules_management'; import { deleteAlertsAndRules, deleteDataView, deletePrebuiltRulesAssets, postDataView, -} from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/api_calls/common'; describe( 'Detection rules, Prebuilt Rules Installation workflow', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_workflow.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_workflow.cy.ts similarity index 85% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_workflow.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_workflow.cy.ts index 75c83d0aa2dab..c0aec2458a5b6 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/install_workflow.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/install_workflow.cy.ts @@ -5,8 +5,8 @@ * 2.0. */ -import { resetRulesTableState } from '../../../../tasks/common'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { getInstallSingleRuleButtonByRuleId, GO_BACK_TO_RULES_TABLE_BUTTON, @@ -16,19 +16,19 @@ import { RULE_CHECKBOX, SELECT_ALL_RULES_ON_PAGE_CHECKBOX, TOASTER, -} from '../../../../screens/alerts_detection_rules'; -import { selectRulesByName } from '../../../../tasks/alerts_detection_rules'; -import { RULE_MANAGEMENT_PAGE_BREADCRUMB } from '../../../../screens/breadcrumbs'; -import { installPrebuiltRuleAssets } from '../../../../tasks/api_calls/prebuilt_rules'; -import { login } from '../../../../tasks/login'; +} from '../../../../../screens/alerts_detection_rules'; +import { selectRulesByName } from '../../../../../tasks/alerts_detection_rules'; +import { RULE_MANAGEMENT_PAGE_BREADCRUMB } from '../../../../../screens/breadcrumbs'; +import { installPrebuiltRuleAssets } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { login } from '../../../../../tasks/login'; import { assertInstallationRequestIsComplete, assertRuleInstallationSuccessToastShown, assertRulesPresentInInstalledRulesTable, clickAddElasticRulesButton, -} from '../../../../tasks/prebuilt_rules'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; -import { deleteAlertsAndRules } from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/prebuilt_rules'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; +import { deleteAlertsAndRules } from '../../../../../tasks/api_calls/common'; // Failing: See https://github.com/elastic/kibana/issues/182441 describe.skip( diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/export_prebuilt_rule.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/export_prebuilt_rule.cy.ts similarity index 92% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/export_prebuilt_rule.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/export_prebuilt_rule.cy.ts index 500db42063e22..d0e6db953230a 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/export_prebuilt_rule.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/export_prebuilt_rule.cy.ts @@ -5,28 +5,28 @@ * 2.0. */ -import { bulkExportRules } from '../../../../tasks/rules_bulk_actions'; -import { exportRuleFromDetailsPage, visitRuleDetailsPage } from '../../../../tasks/rule_details'; -import { getCustomQueryRuleParams, getIndexPatterns } from '../../../../objects/rule'; +import { bulkExportRules } from '../../../../../tasks/rules_bulk_actions'; +import { exportRuleFromDetailsPage, visitRuleDetailsPage } from '../../../../../tasks/rule_details'; +import { getCustomQueryRuleParams, getIndexPatterns } from '../../../../../objects/rule'; import { expectManagementTableRules, importRules, selectAllRules, selectRulesByName, -} from '../../../../tasks/alerts_detection_rules'; -import { TOASTER, SUCCESS_TOASTER_BODY } from '../../../../screens/alerts_detection_rules'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +} from '../../../../../tasks/alerts_detection_rules'; +import { TOASTER, SUCCESS_TOASTER_BODY } from '../../../../../screens/alerts_detection_rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/api_calls/common'; import { createAndInstallMockedPrebuiltRules, installMockPrebuiltRulesPackage, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { createRule, patchRule } from '../../../../tasks/api_calls/rules'; -import { login } from '../../../../tasks/login'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { createRule, patchRule } from '../../../../../tasks/api_calls/rules'; +import { login } from '../../../../../tasks/login'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; const PREBUILT_RULE_ID = 'test-prebuilt-rule-a'; diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/import_prebuilt_rule.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/import_prebuilt_rule.cy.ts similarity index 85% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/import_prebuilt_rule.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/import_prebuilt_rule.cy.ts index 724f979f17509..a362864d792bc 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/import_prebuilt_rule.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/import_prebuilt_rule.cy.ts @@ -9,23 +9,23 @@ import { expectManagementTableRules, importRules, importRulesWithOverwriteAll, -} from '../../../../tasks/alerts_detection_rules'; -import { TOASTER } from '../../../../screens/alerts_detection_rules'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; -import { getCustomQueryRuleParams } from '../../../../objects/rule'; -import { combineToNdJson } from '../../../../helpers/ndjson'; +} from '../../../../../tasks/alerts_detection_rules'; +import { TOASTER } from '../../../../../screens/alerts_detection_rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; +import { getCustomQueryRuleParams } from '../../../../../objects/rule'; +import { combineToNdJson } from '../../../../../helpers/ndjson'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { createRule } from '../../../../tasks/api_calls/rules'; +} from '../../../../../tasks/api_calls/common'; +import { createRule } from '../../../../../tasks/api_calls/rules'; import { installMockPrebuiltRulesPackage, installPrebuiltRuleAssets, installSpecificPrebuiltRulesRequest, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { login } from '../../../../tasks/login'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { login } from '../../../../../tasks/login'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; describe( 'Detection rules, Prebuilt Rules Import workflow - With Rule Customization', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/management.cy.ts similarity index 92% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/management.cy.ts index 35736e319737f..46b5cedaed15d 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/management/management.cy.ts @@ -5,7 +5,7 @@ * 2.0. */ -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { COLLAPSED_ACTION_BTN, ELASTIC_RULES_BTN, @@ -15,7 +15,7 @@ import { RULE_SWITCH, SELECT_ALL_RULES_ON_PAGE_CHECKBOX, INSTALL_ALL_RULES_BUTTON, -} from '../../../../screens/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; import { deleteFirstRule, disableAutoRefresh, @@ -24,24 +24,24 @@ import { selectRulesByName, waitForPrebuiltDetectionRulesToBeLoaded, waitForRuleToUpdate, -} from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../tasks/alerts_detection_rules'; import { deleteSelectedRules, disableSelectedRules, enableSelectedRules, -} from '../../../../tasks/rules_bulk_actions'; +} from '../../../../../tasks/rules_bulk_actions'; import { createAndInstallMockedPrebuiltRules, getAvailablePrebuiltRulesCount, preventPrebuiltRulesPackageInstallation, -} from '../../../../tasks/api_calls/prebuilt_rules'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { login } from '../../../../tasks/login'; -import { visit } from '../../../../tasks/navigation'; -import { RULES_MANAGEMENT_URL } from '../../../../urls/rules_management'; +} from '../../../../../tasks/api_calls/common'; +import { login } from '../../../../../tasks/login'; +import { visit } from '../../../../../tasks/navigation'; +import { RULES_MANAGEMENT_URL } from '../../../../../urls/rules_management'; const rules = Array.from(Array(5)).map((_, i) => { return createRuleAssetSavedObject({ diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_error_handling.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_error_handling.cy.ts similarity index 90% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_error_handling.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_error_handling.cy.ts index 852fddd1ba174..fa335a86748d2 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_error_handling.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_error_handling.cy.ts @@ -8,26 +8,26 @@ import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +} from '../../../../../tasks/api_calls/common'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { getUpgradeSingleRuleButtonByRuleId, SELECT_ALL_RULES_ON_PAGE_CHECKBOX, UPGRADE_ALL_RULES_BUTTON, UPGRADE_SELECTED_RULES_BUTTON, -} from '../../../../screens/alerts_detection_rules'; -import { selectRulesByName } from '../../../../tasks/alerts_detection_rules'; -import { preventPrebuiltRulesPackageInstallation } from '../../../../tasks/api_calls/prebuilt_rules'; -import { setUpRuleUpgrades } from '../../../../tasks/prebuilt_rules/setup_rule_upgrades'; -import { login } from '../../../../tasks/login'; +} from '../../../../../screens/alerts_detection_rules'; +import { selectRulesByName } from '../../../../../tasks/alerts_detection_rules'; +import { preventPrebuiltRulesPackageInstallation } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { setUpRuleUpgrades } from '../../../../../tasks/prebuilt_rules/setup_rule_upgrades'; +import { login } from '../../../../../tasks/login'; import { interceptUpgradeRequestToFail, assertUpgradeRequestIsComplete, assertRuleUpgradeFailureToastShown, assertRuleUpgradeSuccessToastShown, interceptUpgradeRequestToFailPartially, -} from '../../../../tasks/prebuilt_rules'; -import { visitRulesUpgradeTable } from '../../../../tasks/rules_management'; +} from '../../../../../tasks/prebuilt_rules'; +import { visitRulesUpgradeTable } from '../../../../../tasks/rules_management'; describe( 'Detection rules, Prebuilt Rules Upgrade - Error handling', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_notifications.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_notifications.cy.ts similarity index 93% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_notifications.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_notifications.cy.ts index 1a9fbca5a4758..ffe2de61b0777 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_notifications.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_notifications.cy.ts @@ -5,33 +5,33 @@ * 2.0. */ -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { ADD_ELASTIC_RULES_EMPTY_PROMPT_BTN, RULES_UPDATES_TAB, RULES_UPDATES_TABLE, UPDATE_PREBUILT_RULE_PREVIEW, -} from '../../../../screens/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; import { PREBUILT_RULES_UPGRADE_REMINDER_CALLOUT, SINGLE_PREBUILT_RULE_UPGRADE_REMINDER_CALLOUT, -} from '../../../../screens/prebuilt_rules_upgrade'; -import { expectManagementTableRules } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../screens/prebuilt_rules_upgrade'; +import { expectManagementTableRules } from '../../../../../tasks/alerts_detection_rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; +} from '../../../../../tasks/api_calls/common'; import { installPrebuiltRuleAssets, installMockEmptyPrebuiltRulesPackage, installSpecificPrebuiltRulesRequest, -} from '../../../../tasks/api_calls/prebuilt_rules'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; -import { visitRulesManagementTable } from '../../../../tasks/rules_management'; -import { visitRuleDetailsPage } from '../../../../tasks/rule_details'; -import { visitRuleEditPage } from '../../../../tasks/edit_rule'; -import { EDIT_RULE_SETTINGS_LINK } from '../../../../screens/rule_details'; +} from '../../../../../tasks/api_calls/prebuilt_rules'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; +import { visitRulesManagementTable } from '../../../../../tasks/rules_management'; +import { visitRuleDetailsPage } from '../../../../../tasks/rule_details'; +import { visitRuleEditPage } from '../../../../../tasks/edit_rule'; +import { EDIT_RULE_SETTINGS_LINK } from '../../../../../screens/rule_details'; describe( 'Detection rules, Prebuilt Rules Upgrade Notifications', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview.cy.ts similarity index 98% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview.cy.ts index 58b9e91456b9b..0b912697281fd 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview.cy.ts @@ -13,8 +13,8 @@ import type { ReviewRuleUpgradeResponseBody } from '@kbn/security-solution-plugi import type { Threshold } from '@kbn/security-solution-plugin/common/api/detection_engine/model/rule_schema'; import { AlertSuppression } from '@kbn/security-solution-plugin/common/api/detection_engine/model/rule_schema'; import { getPrebuiltRuleMockOfType } from '@kbn/security-solution-plugin/server/lib/detection_engine/prebuilt_rules/mocks'; -import { setUpRuleUpgrades } from '../../../../tasks/prebuilt_rules/setup_rule_upgrades'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { setUpRuleUpgrades } from '../../../../../tasks/prebuilt_rules/setup_rule_upgrades'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { UPDATE_PREBUILT_RULE_PREVIEW, UPDATE_PREBUILT_RULE_BUTTON, @@ -22,17 +22,17 @@ import { PER_FIELD_DIFF_WRAPPER, PER_FIELD_DIFF_DEFINITION_SECTION, RULES_MANAGEMENT_TABLE, -} from '../../../../screens/alerts_detection_rules'; -import { installMockPrebuiltRulesPackage } from '../../../../tasks/api_calls/prebuilt_rules'; -import { createSavedQuery, deleteSavedQueries } from '../../../../tasks/api_calls/saved_queries'; -import { fetchMachineLearningModules } from '../../../../tasks/api_calls/machine_learning'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; +} from '../../../../../screens/alerts_detection_rules'; +import { installMockPrebuiltRulesPackage } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { createSavedQuery, deleteSavedQueries } from '../../../../../tasks/api_calls/saved_queries'; +import { fetchMachineLearningModules } from '../../../../../tasks/api_calls/machine_learning'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; import { assertRulesNotPresentInRuleUpdatesTable, assertRuleUpgradeSuccessToastShown, clickRuleUpdatesTab, -} from '../../../../tasks/prebuilt_rules'; +} from '../../../../../tasks/prebuilt_rules'; import { assertAlertSuppressionPropertiesShown, assertCommonPropertiesShown, @@ -52,19 +52,19 @@ import { openPrebuiltRuleUpgradeFlyoutFor, selectPreviewTab, closePrebuiltRuleUpgradeFlyout, -} from '../../../../tasks/prebuilt_rules_preview'; +} from '../../../../../tasks/prebuilt_rules_preview'; import { visitRulesManagementTable, visitRulesUpgradeTable, -} from '../../../../tasks/rules_management'; +} from '../../../../../tasks/rules_management'; import { deleteAlertsAndRules, deleteDataView, deletePrebuiltRulesAssets, postDataView, -} from '../../../../tasks/api_calls/common'; -import { enableRules, waitForRulesToFinishExecution } from '../../../../tasks/api_calls/rules'; -import { expectRulesInTable, goToRuleDetailsOf } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../tasks/api_calls/common'; +import { enableRules, waitForRulesToFinishExecution } from '../../../../../tasks/api_calls/rules'; +import { expectRulesInTable, goToRuleDetailsOf } from '../../../../../tasks/alerts_detection_rules'; import { acceptFieldValue, cancelFieldValue, @@ -72,7 +72,7 @@ import { switchFieldToEditMode, toggleFieldAccordion, typeRuleName, -} from '../../../../tasks/prebuilt_rules/prebuilt_rules_upgrade_flyout'; +} from '../../../../../tasks/prebuilt_rules/prebuilt_rules_upgrade_flyout'; const PREVIEW_TABS = { OVERVIEW: 'Overview', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview_basic_license.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview_basic_license.cy.ts similarity index 85% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview_basic_license.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview_basic_license.cy.ts index 9ca3ba2710383..4698bd4d350b4 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_with_preview_basic_license.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_with_preview_basic_license.cy.ts @@ -5,33 +5,33 @@ * 2.0. */ -import { downgradeLicenseToBasic } from '../../../../tasks/license'; -import { setUpRuleUpgrades } from '../../../../tasks/prebuilt_rules/setup_rule_upgrades'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { downgradeLicenseToBasic } from '../../../../../tasks/license'; +import { setUpRuleUpgrades } from '../../../../../tasks/prebuilt_rules/setup_rule_upgrades'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { UPDATE_PREBUILT_RULE_PREVIEW, UPDATE_PREBUILT_RULE_BUTTON, FIELD_UPGRADE_WRAPPER, RULES_MANAGEMENT_TABLE, TAGS_PROPERTY_VALUE_ITEM, -} from '../../../../screens/alerts_detection_rules'; -import { installMockPrebuiltRulesPackage } from '../../../../tasks/api_calls/prebuilt_rules'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; +} from '../../../../../screens/alerts_detection_rules'; +import { installMockPrebuiltRulesPackage } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; import { assertRulesNotPresentInRuleUpdatesTable, assertRuleUpgradeSuccessToastShown, -} from '../../../../tasks/prebuilt_rules'; -import { openPrebuiltRuleUpgradeFlyoutFor } from '../../../../tasks/prebuilt_rules_preview'; +} from '../../../../../tasks/prebuilt_rules'; +import { openPrebuiltRuleUpgradeFlyoutFor } from '../../../../../tasks/prebuilt_rules_preview'; import { visitRulesManagementTable, visitRulesUpgradeTable, -} from '../../../../tasks/rules_management'; +} from '../../../../../tasks/rules_management'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { expectRulesInTable, goToRuleDetailsOf } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../tasks/api_calls/common'; +import { expectRulesInTable, goToRuleDetailsOf } from '../../../../../tasks/alerts_detection_rules'; describe( 'Detection rules, Prebuilt Rules Upgrade With Preview (Basic License)', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview.cy.ts similarity index 96% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview.cy.ts index 9acf50ba6a6c5..d4b859b1f4ccf 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview.cy.ts @@ -7,9 +7,9 @@ import { getPrebuiltRuleMockOfType } from '@kbn/security-solution-plugin/server/lib/detection_engine/prebuilt_rules/mocks'; import { ROLES } from '@kbn/security-solution-plugin/common/test'; -import { IS_SERVERLESS } from '../../../../env_var_names_constants'; -import { waitForPageTitleToBeShown } from '../../../../tasks/alert_assignments'; -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { IS_SERVERLESS } from '../../../../../env_var_names_constants'; +import { waitForPageTitleToBeShown } from '../../../../../tasks/alert_assignments'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { getReviewSingleRuleButtonByRuleId, getUpgradeSingleRuleButtonByRuleId, @@ -24,31 +24,31 @@ import { CONFLICTS_MODAL_CANCEL, RULES_UPDATES_TABLE, MODIFIED_RULE_BADGE, -} from '../../../../screens/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; import { expectRulesInTable, goToRuleDetailsOf, selectRulesByName, -} from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../tasks/alerts_detection_rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { installMockPrebuiltRulesPackage } from '../../../../tasks/api_calls/prebuilt_rules'; -import { setUpRuleUpgrades } from '../../../../tasks/prebuilt_rules/setup_rule_upgrades'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; +} from '../../../../../tasks/api_calls/common'; +import { installMockPrebuiltRulesPackage } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { setUpRuleUpgrades } from '../../../../../tasks/prebuilt_rules/setup_rule_upgrades'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; import { assertRulesNotPresentInRuleUpdatesTable, assertRuleUpgradeSuccessToastShown, assertUpgradeRequestIsComplete, clickRuleUpdatesTab, filterPrebuiltRulesUpdateTableByRuleCustomization, -} from '../../../../tasks/prebuilt_rules'; +} from '../../../../../tasks/prebuilt_rules'; import { visitRulesManagementTable, visitRulesUpgradeTable, -} from '../../../../tasks/rules_management'; +} from '../../../../../tasks/rules_management'; describe( 'Detection rules, Prebuilt Rules Upgrade Without Preview', diff --git a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview_basic_license.cy.ts b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview_basic_license.cy.ts similarity index 84% rename from x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview_basic_license.cy.ts rename to x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview_basic_license.cy.ts index 52daf7f0fbd82..c73f097b03cce 100644 --- a/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade_without_preview_basic_license.cy.ts +++ b/x-pack/test/security_solution_cypress/cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/upgrade_without_preview_basic_license.cy.ts @@ -5,30 +5,30 @@ * 2.0. */ -import { createRuleAssetSavedObject } from '../../../../helpers/rules'; +import { createRuleAssetSavedObject } from '../../../../../helpers/rules'; import { RULES_MANAGEMENT_TABLE, TAGS_PROPERTY_VALUE_ITEM, UPGRADE_ALL_RULES_BUTTON, -} from '../../../../screens/alerts_detection_rules'; -import { expectRulesInTable, goToRuleDetailsOf } from '../../../../tasks/alerts_detection_rules'; +} from '../../../../../screens/alerts_detection_rules'; +import { expectRulesInTable, goToRuleDetailsOf } from '../../../../../tasks/alerts_detection_rules'; import { deleteAlertsAndRules, deletePrebuiltRulesAssets, -} from '../../../../tasks/api_calls/common'; -import { installMockPrebuiltRulesPackage } from '../../../../tasks/api_calls/prebuilt_rules'; -import { setUpRuleUpgrades } from '../../../../tasks/prebuilt_rules/setup_rule_upgrades'; -import { resetRulesTableState } from '../../../../tasks/common'; -import { login } from '../../../../tasks/login'; +} from '../../../../../tasks/api_calls/common'; +import { installMockPrebuiltRulesPackage } from '../../../../../tasks/api_calls/prebuilt_rules'; +import { setUpRuleUpgrades } from '../../../../../tasks/prebuilt_rules/setup_rule_upgrades'; +import { resetRulesTableState } from '../../../../../tasks/common'; +import { login } from '../../../../../tasks/login'; import { assertRulesNotPresentInRuleUpdatesTable, assertRuleUpgradeSuccessToastShown, -} from '../../../../tasks/prebuilt_rules'; +} from '../../../../../tasks/prebuilt_rules'; import { visitRulesManagementTable, visitRulesUpgradeTable, -} from '../../../../tasks/rules_management'; -import { downgradeLicenseToBasic } from '../../../../tasks/license'; +} from '../../../../../tasks/rules_management'; +import { downgradeLicenseToBasic } from '../../../../../tasks/license'; describe('Detection rules, Prebuilt Rules Upgrade Without Preview', { tags: ['@ess'] }, () => { before(() => { diff --git a/x-pack/test/security_solution_cypress/package.json b/x-pack/test/security_solution_cypress/package.json index 617dcb73e6e77..4bd14e70da08d 100644 --- a/x-pack/test/security_solution_cypress/package.json +++ b/x-pack/test/security_solution_cypress/package.json @@ -6,6 +6,10 @@ "license": "Elastic License 2.0", "scripts": { "cypress": "../../../node_modules/.bin/cypress", + "junit:merge": "../../../node_modules/.bin/mochawesome-merge ../../../target/kibana-security-solution/cypress/results/mochawesome*.json > ../../../target/kibana-security-solution/cypress/results/output.json && ../../../node_modules/.bin/marge ../../../target/kibana-security-solution/cypress/results/output.json --reportDir ../../../target/kibana-security-solution/cypress/results && yarn junit:transform && mkdir -p ../../../target/junit && cp ../../../target/kibana-security-solution/cypress/results/*.xml ../../../target/junit/", + "junit:transform": "node ../../solutions/security/plugins/security_solution/scripts/junit_transformer --pathPattern '../../../target/kibana-security-solution/cypress/results/*.xml' --rootDirectory ../../../ --reportName 'Security Solution Cypress' --writeInPlace", + + "cypress:open:ess": "TZ=UTC node ../../solutions/security/plugins/security_solution/scripts/start_cypress_parallel open --spec './cypress/e2e/**/*.cy.ts' --config-file ../../test/security_solution_cypress/cypress/cypress.config.ts --ftr-config-file ../../test/security_solution_cypress/cli_config", "cypress:asset_inventory:run:ess": "yarn cypress:ess --spec './cypress/e2e/asset_inventory/**/*.cy.ts'", "cypress:entity_analytics:run:ess": "yarn cypress:ess --spec './cypress/e2e/entity_analytics/**/*.cy.ts'", @@ -13,6 +17,10 @@ "cypress:ess": "TZ=UTC node ../../solutions/security/plugins/security_solution/scripts/start_cypress_parallel run --config-file ../../test/security_solution_cypress/cypress/cypress_ci.config.ts --ftr-config-file ../../test/security_solution_cypress/cli_config", "cypress:rule_management:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/!(prebuilt_rules)/**/*.cy.ts'", "cypress:rule_management:prebuilt_rules:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:management:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/management/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:installation:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:upgrade:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:customization:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/customization/**/*.cy.ts'", "cypress:detection_engine:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/detection_engine/!(exceptions)/**/*.cy.ts'", "cypress:detection_engine:exceptions:run:ess": "yarn cypress:ess --spec './cypress/e2e/detection_response/detection_engine/exceptions/**/*.cy.ts'", "cypress:ai_assistant:run:ess": "yarn cypress:ess --spec './cypress/e2e/ai_assistant/**/*.cy.ts'", @@ -22,14 +30,16 @@ "cypress:changed-specs-only:ess": "yarn cypress:ess --changed-specs-only --env burn=5", "cypress:cloud_security_posture:run:ess": "yarn cypress:ess --spec './cypress/e2e/cloud_security_posture/**/*.cy.ts'", "cypress:burn:ess": "yarn cypress:ess --env burn=5", - "junit:merge": "../../../node_modules/.bin/mochawesome-merge ../../../target/kibana-security-solution/cypress/results/mochawesome*.json > ../../../target/kibana-security-solution/cypress/results/output.json && ../../../node_modules/.bin/marge ../../../target/kibana-security-solution/cypress/results/output.json --reportDir ../../../target/kibana-security-solution/cypress/results && yarn junit:transform && mkdir -p ../../../target/junit && cp ../../../target/kibana-security-solution/cypress/results/*.xml ../../../target/junit/", - "junit:transform": "node ../../solutions/security/plugins/security_solution/scripts/junit_transformer --pathPattern '../../../target/kibana-security-solution/cypress/results/*.xml' --rootDirectory ../../../ --reportName 'Security Solution Cypress' --writeInPlace", "cypress:serverless": "TZ=UTC node ../../solutions/security/plugins/security_solution/scripts/start_cypress_parallel --config-file ../../test/security_solution_cypress/cypress/cypress_ci_serverless.config.ts --ftr-config-file ../../test/security_solution_cypress/serverless_config", "cypress:cloud:serverless": "TZ=UTC NODE_TLS_REJECT_UNAUTHORIZED=0 ../../../node_modules/.bin/cypress", "cypress:open:cloud:serverless": "yarn cypress:cloud:serverless open --config-file ./cypress/cypress_serverless.config.ts --env CLOUD_SERVERLESS=true", "cypress:open:serverless": "yarn cypress:serverless open --config-file ../../test/security_solution_cypress/cypress/cypress_serverless.config.ts --spec './cypress/e2e/**/*.cy.ts'", "cypress:entity_analytics:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/entity_analytics/**/*.cy.ts'", "cypress:rule_management:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/!(prebuilt_rules)/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:management:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/management/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:installation:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/installation/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:upgrade:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/upgrade/**/*.cy.ts'", + "cypress:rule_management:prebuilt_rules:customization:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/customization/**/*.cy.ts'", "cypress:rule_management:prebuilt_rules:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/rule_management/prebuilt_rules/**/*.cy.ts'", "cypress:detection_engine:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/detection_engine/!(exceptions)/**/*.cy.ts'", "cypress:detection_engine:exceptions:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/detection_response/detection_engine/exceptions/**/*.cy.ts'", @@ -40,6 +50,8 @@ "cypress:changed-specs-only:serverless": "yarn cypress:serverless --changed-specs-only --env burn=5", "cypress:cloud_security_posture:run:serverless": "yarn cypress:serverless --spec './cypress/e2e/cloud_security_posture/**/*.cy.ts'", "cypress:burn:serverless": "yarn cypress:serverless --env burn=2", + + "cypress:qa:serverless": "TZ=UTC node ../../solutions/security/plugins/security_solution/scripts/start_cypress_parallel_serverless --config-file ../../test/security_solution_cypress/cypress/cypress_ci_serverless_qa.config.ts", "cypress:open:qa:serverless": "yarn cypress:qa:serverless open", "cypress:run:qa:serverless:entity_analytics": "yarn cypress:qa:serverless --spec './cypress/e2e/entity_analytics/**/*.cy.ts'", @@ -52,4 +64,4 @@ "cypress:run:qa:serverless:ai_assistant": "yarn cypress:qa:serverless --spec './cypress/e2e/ai_assistant/**/*.cy.ts'", "cypress:run:qa:serverless:cloud_security_posture": "yarn cypress:qa:serverless --spec './cypress/e2e/cloud_security_posture/**/*.cy.ts" } -} \ No newline at end of file +}