-
Notifications
You must be signed in to change notification settings - Fork 422
/
pipeline.serverless.yml
91 lines (82 loc) · 2.92 KB
/
pipeline.serverless.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json
env:
SETUP_GVM_VERSION: "v0.5.2"
LINUX_AGENT_IMAGE: "golang:${GO_VERSION}"
DOCKER_COMPOSE_VERSION: "v2.24.1"
DOCKER_VERSION: "false" # not required to set since system tests are not running yet
KIND_VERSION: 'v0.20.0'
K8S_VERSION: 'v1.30.0'
YQ_VERSION: 'v4.35.2'
IMAGE_UBUNTU_X86_64: "family/core-ubuntu-2204"
GH_CLI_VERSION: "2.29.0"
# This pipeline is intended to test packages with Elastic Serverless
SERVERLESS: true
# Elastic package settings
# Manage docker output/logs
ELASTIC_PACKAGE_COMPOSE_DISABLE_VERBOSE_OUTPUT: "true"
# Default license to use by `elastic-package build`
ELASTIC_PACKAGE_REPOSITORY_LICENSE: "licenses/Elastic-2.0.txt"
# Link definitions path (full path to be set in the corresponding step)
ELASTIC_PACKAGE_LINKS_FILE_PATH: "links_table.yml"
# Disable comparison of results in pipeline tests to avoid errors related to GeoIP fields
ELASTIC_PACKAGE_SERVERLESS_PIPELINE_TEST_DISABLE_COMPARE_RESULTS: "true"
steps:
- input: "Input values for the variables"
key: "input-variables"
fields:
- select: "SERVERLESS_PROJECT"
key: "SERVERLESS_PROJECT"
options:
- label: "observability"
value: "observability"
- label: "security"
value: "security"
default: "observability"
if: "build.source == 'ui'"
- wait: ~
if: "build.source == 'ui'"
allow_dependency_failure: false
- label: ":white_check_mark: Check go sources"
key: "check"
command: ".buildkite/scripts/check_sources.sh"
agents:
image: "${LINUX_AGENT_IMAGE}"
cpu: "8"
memory: "4G"
- label: "Check integrations in serverless"
key: "test-integrations-serverless-project"
command: ".buildkite/scripts/test_integrations_with_serverless.sh"
timeout_in_minutes: 240
env:
FORCE_CHECK_ALL: true
UPLOAD_SAFE_LOGS: 1
agents:
provider: "gcp"
image: "${IMAGE_UBUNTU_X86_64}"
artifact_paths:
- "build/test-results/*.xml"
- "build/elastic-stack-dump/*/logs/*.log"
- "build/elastic-stack-dump/*/logs/fleet-server-internal/**/*"
depends_on:
- step: "check"
allow_failure: false
- wait: ~
continue_on_failure: true
- label: ":junit: Junit annotate"
plugins:
- junit-annotate#v2.4.1:
artifacts: "build/test-results/*.xml"
agents:
provider: "gcp" # junit plugin requires docker
- label: ":github: Report failed tests"
key: report-failed-tests
command: ".buildkite/scripts/report_issues.sh"
agents:
image: "${LINUX_AGENT_IMAGE}"
cpu: "8"
memory: "4G"
# not fail build if this step fails
soft_fail: true
# run this step when if it is triggered by the daily job
if: >
build.source == "trigger_job" && build.env('BUILDKITE_TRIGGERED_FROM_BUILD_PIPELINE_SLUG') == "integrations-schedule-daily"