Skip to content

Commit 4aab645

Browse files
authored
CI label to deploy security project of type AI for SOC (#219071)
## Summary Support `ci:project-deploy-ai4soc` Github label to deploy AI for SOC projects to the QA environment.
1 parent 7d50d3f commit 4aab645

5 files changed

Lines changed: 18 additions & 4 deletions

File tree

.buildkite/pipelines/serverless_deployment/build_pr_and_deploy_project.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ steps:
2222
timeout_in_minutes: 5
2323
2424
- group: 'Project Deployment'
25-
if: "build.env('GITHUB_PR_LABELS') =~ /ci:project-deploy-(elasticsearch|observability|log_essentials|security)/"
25+
if: "build.env('GITHUB_PR_LABELS') =~ /ci:project-deploy-(elasticsearch|observability|log_essentials|security|ai4soc)/"
2626

2727
steps:
2828
- command: .buildkite/scripts/lifecycle/pre_build.sh

.buildkite/scripts/pipelines/pull_request/pipeline.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,8 @@ const getPipeline = (filename: string, removeSteps = true) => {
179179
GITHUB_PR_LABELS.includes('ci:project-deploy-elasticsearch') ||
180180
GITHUB_PR_LABELS.includes('ci:project-deploy-observability') ||
181181
GITHUB_PR_LABELS.includes('ci:project-deploy-log_essentials') ||
182-
GITHUB_PR_LABELS.includes('ci:project-deploy-security')
182+
GITHUB_PR_LABELS.includes('ci:project-deploy-security') ||
183+
GITHUB_PR_LABELS.includes('ci:project-deploy-ai4soc')
183184
) {
184185
pipeline.push(getPipeline('.buildkite/pipelines/pull_request/deploy_project.yml'));
185186
} else if (GITHUB_PR_LABELS.includes('ci:build-serverless-image')) {

.buildkite/scripts/steps/cloud/purge_projects.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ async function purgeProjects() {
102102
} else if (
103103
!Boolean(
104104
pullRequest.labels.filter((label: any) =>
105-
/^ci:project-deploy-(elasticsearch|observability|log_essentials|security)$/.test(
105+
/^ci:project-deploy-(elasticsearch|observability|log_essentials|security|ai4soc)$/.test(
106106
label.name
107107
)
108108
).length

.buildkite/scripts/steps/serverless/deploy.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,16 @@ deploy() {
2626
PRODUCT_TIER_JSON_ENTRY=""
2727
PRODUCT_TIER_NAME=""
2828
if [ -n "${PRODUCT_TIER:-}" ]; then
29-
PRODUCT_TIER_JSON_ENTRY='"product_tier": "'"$PRODUCT_TIER"'",'
3029
PRODUCT_TIER_NAME="-$PRODUCT_TIER"
30+
31+
case $PRODUCT_TIER in
32+
logs_essentials)
33+
PRODUCT_TIER_JSON_ENTRY='"product_tier": "'"$PRODUCT_TIER"'",'
34+
;;
35+
ai_soc)
36+
PRODUCT_TIER_JSON_ENTRY='"product_types": [{ "product_line": "ai_soc", "product_tier": "search_ai_lake" }],'
37+
;;
38+
esac
3139
fi
3240

3341
PROJECT_NAME="kibana-pr-$BUILDKITE_PULL_REQUEST-$PROJECT_TYPE$PRODUCT_TIER_NAME"
@@ -171,6 +179,7 @@ EOF
171179

172180
is_pr_with_label "ci:project-deploy-elasticsearch" && deploy "elasticsearch"
173181
is_pr_with_label "ci:project-deploy-security" && deploy "security"
182+
is_pr_with_label "ci:project-deploy-ai4soc" && deploy "security" "ai_soc"
174183
is_pr_with_label "ci:project-deploy-log_essentials" && deploy "observability" "logs_essentials"
175184
if is_pr_with_label "ci:project-deploy-observability" ; then
176185
# Only deploy observability if the PR is targeting main

dev_docs/tutorials/ci.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,10 @@ Create or update a serverless Observability project (in the Log Essentials tier)
111111

112112
Create or update a serverless Security project on Elastic Cloud QA.
113113

114+
#### `ci:project-deploy-ai4soc`
115+
116+
Create or update a serverless Security project of type AI for SOC on Elastic Cloud QA.
117+
114118
#### `ci:project-persist-deployment`
115119

116120
Prevents an existing deployment from being shutdown due to inactivity.

0 commit comments

Comments
 (0)