mirror of
https://github.com/elastic/logstash.git
synced 2025-04-19 04:15:23 -04:00
96 lines
3.3 KiB
YAML
96 lines
3.3 KiB
YAML
# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json
|
|
# Before adding an Operating System to the JDK matrix:
|
|
# - Ensure the image is available in https://github.com/elastic/ci-agent-images/blob/main/vm-images/platform-ingest/logstash-multi-jdk.yml
|
|
# - If image doesn't exist, review https://docs.elastic.dev/ingest-dev-docs/engineer-productivity/custom-ci-images
|
|
|
|
env:
|
|
DEFAULT_MATRIX_OS: "ubuntu-2204"
|
|
DEFAULT_MATRIX_JDK: "adoptiumjdk_21"
|
|
|
|
steps:
|
|
- input: "Test Parameters"
|
|
if: build.source != "schedule" && build.source != "trigger_job"
|
|
fields:
|
|
- select: "Operating System"
|
|
key: "matrix-os"
|
|
hint: "The operating system variant(s) to run on:"
|
|
required: true
|
|
multiple: true
|
|
default: "${DEFAULT_MATRIX_OS}"
|
|
options:
|
|
- label: "Ubuntu 24.04"
|
|
value: "ubuntu-2404"
|
|
- label: "Ubuntu 22.04"
|
|
value: "ubuntu-2204"
|
|
- label: "Ubuntu 20.04"
|
|
value: "ubuntu-2004"
|
|
- label: "Debian 12"
|
|
value: "debian-12"
|
|
- label: "Debian 11"
|
|
value: "debian-11"
|
|
- label: "RHEL 9"
|
|
value: "rhel-9"
|
|
- label: "RHEL 8"
|
|
value: "rhel-8"
|
|
- label: "Oracle Linux 8"
|
|
value: "oraclelinux-8"
|
|
- label: "Oracle Linux 7"
|
|
value: "oraclelinux-7"
|
|
- label: "Rocky Linux 8"
|
|
value: "rocky-linux-8"
|
|
- label: "Rocky Linux 9"
|
|
value: "rocky-linux-9"
|
|
- label: "Alma Linux 8"
|
|
value: "almalinux-8"
|
|
- label: "Alma Linux 9"
|
|
value: "almalinux-9"
|
|
- label: "Amazon Linux (2023)"
|
|
value: "amazonlinux-2023"
|
|
- label: "OpenSUSE Leap 15"
|
|
value: "opensuse-leap-15"
|
|
|
|
- select: "Java"
|
|
key: "matrix-jdk"
|
|
hint: "The JDK to test with:"
|
|
required: true
|
|
multiple: true
|
|
default: "${DEFAULT_MATRIX_JDK}"
|
|
options:
|
|
- label: "Adoptium JDK 21 (Eclipse Temurin)"
|
|
value: "adoptiumjdk_21"
|
|
- label: "Adoptium JDK 17 (Eclipse Temurin)"
|
|
value: "adoptiumjdk_17"
|
|
- label: "OpenJDK 21"
|
|
value: "openjdk_21"
|
|
- label: "Zulu 21"
|
|
value: "zulu_21"
|
|
- label: "Zulu 17"
|
|
value: "zulu_17"
|
|
|
|
- wait: ~
|
|
if: build.source != "schedule" && build.source != "trigger_job"
|
|
|
|
- command: |
|
|
set -euo pipefail
|
|
|
|
echo "--- Downloading prerequisites"
|
|
python3 -m pip install ruamel.yaml
|
|
|
|
echo "--- Printing generated dynamic steps"
|
|
export MATRIX_OSES="$(buildkite-agent meta-data get matrix-os --default=${DEFAULT_MATRIX_OS})"
|
|
export MATRIX_JDKS="$(buildkite-agent meta-data get matrix-jdk --default=${DEFAULT_MATRIX_JDK})"
|
|
set +eo pipefail
|
|
python3 .buildkite/scripts/jdk-matrix-tests/generate-steps.py >pipeline_steps.yml
|
|
if [[ $$? -ne 0 ]]; then
|
|
echo "^^^ +++"
|
|
echo "There was a problem rendering the pipeline steps."
|
|
cat pipeline_steps.yml
|
|
echo "Exiting now."
|
|
exit 1
|
|
else
|
|
set -eo pipefail
|
|
cat pipeline_steps.yml
|
|
fi
|
|
|
|
echo "--- Uploading steps to buildkite"
|
|
cat pipeline_steps.yml | buildkite-agent pipeline upload
|