Skip to content

Commit

Permalink
[Security] Split quality gate security solution pipelines to add more…
Browse files Browse the repository at this point in the history
… granularity. (#179145)

This PR aims to deprecate the old all in one pipeline for kibana
serverless security solution cypress and split it into one pipeline per
team to add more granularity.

We need to split the pipelines and then add as well one Test suite per
team.

All this PR does is the split into multiple pipelines, one per team,
with their relevant test suite in buildkite:
- Detections Engine - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-detection-engine)
- Entity Analytics - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-entity-analytics)
- Explore - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-explore)
- Gen AI - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-gen-ai)
- Investigations - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-investigations)
- Rule management - [Buildkite Test
Suite](https://buildkite.com/organizations/elastic/analytics/suites/serverless-mki-cypress-rule-management)


Relevant Tickets:
- elastic/security-team#8903
- elastic/security-team#8801

---------

Co-authored-by: Alex Szabo <[email protected]>
  • Loading branch information
dkirchan and delanni authored Mar 27, 2024
1 parent e05c2ee commit b81d5a9
Show file tree
Hide file tree
Showing 18 changed files with 553 additions and 170 deletions.
6 changes: 6 additions & 0 deletions .buildkite/pipeline-resource-definitions/locations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ spec:
type: url
targets:
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/kibana-migration-staging.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-explore.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-investigations.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-rule-management.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-detection-engine.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-gen-ai.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/security-solution-quality-gate/kibana-serverless-security-solution-quality-gate-entity-analytics.yml
- https://github.com/elastic/kibana/blob/main/.buildkite/pipeline-resource-definitions/kibana-serverless-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-detection-engine
description: "[MKI] Executes Cypress tests for the Detection Engine team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Detection Engine"
description: "[MKI] Executes Cypress tests for the Detection Engine team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_detection_engine.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-entity-analytics
description: "[MKI] Executes Cypress tests for the Entity Analytics team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Entity Analytics"
description: "[MKI] Executes Cypress tests for the Entity Analytics team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_entity_analytics.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-explore
description: "[MKI] Executes Cypress tests for the Explore team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Explore"
description: "[MKI] Executes Cypress tests for the Explore team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_explore.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-gen-ai
description: "[MKI] Executes Cypress tests for the Gen AI team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Gen Ai"
description: "[MKI] Executes Cypress tests for the Gen AI team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_gen_ai.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-investigations
description: "[MKI] Executes Cypress tests for the Investigations team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Investigations"
description: "[MKI] Executes Cypress tests for the Investigations team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_investigations.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# yaml-language-server: $schema=https://gist.githubusercontent.com/elasticmachine/988b80dae436cafea07d9a4a460a011d/raw/rre.schema.json
apiVersion: backstage.io/v1alpha1
kind: Resource
metadata:
name: buildkite-pipeline-kibana-serverless-security-solution-quality-gate-rule-management
description: "[MKI] Executes Cypress tests for the Rule Management team"
spec:
type: buildkite-pipeline
owner: 'group:security-engineering-productivity'
system: buildkite
implementation:
apiVersion: buildkite.elastic.dev/v1
kind: Pipeline
metadata:
name: "Kibana / Serverless / Security Solution Quality Gate / Rule Management"
description: "[MKI] Executes Cypress tests for the Rule Management team"
spec:
repository: elastic/kibana
pipeline_file: .buildkite/pipelines/security_solution_quality_gate/mki_security_solution_rule_management.yml
provider_settings:
build_branches: false
build_pull_requests: false
publish_commit_status: false
skip_pull_request_builds_for_existing_commits: false
trigger_mode: none
build_tags: false
teams:
kibana-operations:
access_level: MANAGE_BUILD_AND_READ
security-engineering-productivity:
access_level: MANAGE_BUILD_AND_READ
everyone:
access_level: BUILD_AND_READ
123 changes: 0 additions & 123 deletions .buildkite/pipelines/security_solution/security_solution_cypress.yml

This file was deleted.

Loading

0 comments on commit b81d5a9

Please sign in to comment.