From 50d3e6a7590716a1bb5d7a8328a3c7feebacb20d Mon Sep 17 00:00:00 2001 From: Olga Naidjonoka Date: Thu, 17 Oct 2024 12:33:04 +0300 Subject: [PATCH] added macos arm step --- .buildkite/hooks/pre-command | 1 - .../scripts/agentbeat/setup_agentbeat.py | 9 +- .../x-pack/pipeline.xpack.agentbeat.yml | 93 +++++++------------ 3 files changed, 43 insertions(+), 60 deletions(-) diff --git a/.buildkite/hooks/pre-command b/.buildkite/hooks/pre-command index f1f9bd540294..cb5bb51eb803 100644 --- a/.buildkite/hooks/pre-command +++ b/.buildkite/hooks/pre-command @@ -19,7 +19,6 @@ if [[ "$BUILDKITE_PIPELINE_SLUG" == "beats-xpack-packetbeat" && "$BUILDKITE_STEP fi if [[ "$BUILDKITE_PIPELINE_SLUG" == "beats-xpack-agentbeat" && "$BUILDKITE_STEP_KEY" == *"agentbeat-it"* ]]; then -# .buildkite/scripts/agentbeat/setup_agentbeat.py AGENTBEAT_PATH=$(.buildkite/scripts/agentbeat/setup_agentbeat.py | tail -n 1) export AGENTBEAT_PATH fi diff --git a/.buildkite/scripts/agentbeat/setup_agentbeat.py b/.buildkite/scripts/agentbeat/setup_agentbeat.py index b5f148a18ccd..35139ec22787 100755 --- a/.buildkite/scripts/agentbeat/setup_agentbeat.py +++ b/.buildkite/scripts/agentbeat/setup_agentbeat.py @@ -12,10 +12,12 @@ def log(msg): sys.stdout.write(f'{msg}\n') sys.stdout.flush() + def log_err(msg): sys.stderr.write(f'{msg}\n') sys.stderr.flush() + def get_os() -> str: return platform.system().lower() @@ -26,7 +28,10 @@ def get_arch() -> str: if arch == 'amd64': return 'x86_64' else: - return arch + if get_os() == 'darwin': + return 'aarch64' + else: + return arch def get_artifact_extension(agent_os) -> str: @@ -40,6 +45,7 @@ def get_artifact_pattern() -> str: agent_os = get_os() agent_arch = get_arch() extension = get_artifact_extension(agent_os) + print('Artifact params: ' + agent_os + ' ' + agent_arch + ' ' + extension) return f'{PATH}/agentbeat-*-{agent_os}-{agent_arch}.{extension}' @@ -47,7 +53,6 @@ def download_agentbeat(pattern, path) -> str: try: subprocess.run( ['buildkite-agent', 'artifact', 'download', pattern, '.', - # '--build', '01928f55-8452-41c6-89ba-fe21f019f53c', '--step', 'agentbeat-package-linux'], check=True, stdout=sys.stdout, stderr=sys.stderr, text=True) diff --git a/.buildkite/x-pack/pipeline.xpack.agentbeat.yml b/.buildkite/x-pack/pipeline.xpack.agentbeat.yml index da66c7186589..a5375bd1e3d3 100644 --- a/.buildkite/x-pack/pipeline.xpack.agentbeat.yml +++ b/.buildkite/x-pack/pipeline.xpack.agentbeat.yml @@ -5,6 +5,9 @@ env: GCP_HI_PERF_MACHINE_TYPE: "c2d-highcpu-16" IMAGE_UBUNTU_X86_64: "family/platform-ingest-beats-ubuntu-2204" + AWS_ARM_INSTANCE_TYPE: "m6g.xlarge" + AWS_IMAGE_UBUNTU_ARM_64: "platform-ingest-beats-ubuntu-2204-aarch64" + IMAGE_MACOS_ARM: "generic-13-ventura-arm" IMAGE_MACOS_X86_64: "generic-13-ventura-x64" @@ -67,50 +70,8 @@ steps: - github_commit_status: context: "agentbeat: Packaging" - # - label: ":linux: Agentbeat/Integration tests Linux" - # key: "agentbeat-it-linux" - # depends_on: - # - agentbeat-package-linux - # env: - # ASDF_NODEJS_VERSION: 18.17.1 - # PLATFORMS: "+all linux/amd64 linux/arm64 windows/amd64 darwin/amd64 darwin/arm64" - # SNAPSHOT: true - # command: | - # set -euo pipefail - # echo "~~~ Downloading artifacts" - # buildkite-agent artifact download x-pack/agentbeat/build/distributions/** . --step 'agentbeat-package-linux' - # ls -lah x-pack/agentbeat/build/distributions/ - # echo "~~~ Installing @elastic/synthetics with npm" - # npm install -g @elastic/synthetics - # echo "~~~ Running tests" - # cd x-pack/agentbeat - # mage goIntegTest - # artifact_paths: - # - x-pack/agentbeat/build/distributions/**/* - # - "x-pack/agentbeat/build/*.xml" - # - "x-pack/agentbeat/build/*.json" -# plugins: -# - test-collector#v1.10.2: -# files: "x-pack/agentbeat/build/TEST-*.xml" -# format: "junit" -# branches: "main" -# debug: true - # retry: - # automatic: - # - limit: 1 - # timeout_in_minutes: 60 - # agents: - # provider: "gcp" - # image: "${IMAGE_UBUNTU_X86_64}" - # machineType: "${GCP_HI_PERF_MACHINE_TYPE}" - # disk_size: 100 - # disk_type: "pd-ssd" - # notify: - # - github_commit_status: - # context: "agentbeat: Integration tests" - - - label: ":linux: x-pack/agentbeat: Ubuntu x86_64 Spec tests" - key: "agentbeat-it-linux" + - label: ":ubuntu: x-pack/agentbeat: Ubuntu x86_64 Spec tests" + key: "agentbeat-it-linux-x86-64" env: PLATFORM: "linux/amd64" depends_on: @@ -125,6 +86,20 @@ steps: disk_size: 100 disk_type: "pd-ssd" + - label: ":ubuntu: x-pack/agentbeat: Ubuntu arm64 Spec tests" + key: "agentbeat-it-linux-arm64" + env: + PLATFORM: "linux/arm64" + depends_on: + - agentbeat-package-linux + command: | + cd x-pack/agentbeat + mage -v testWithSpec + agents: + provider: "aws" + imagePrefix: "${AWS_IMAGE_UBUNTU_ARM_64}" + instanceType: "${AWS_ARM_INSTANCE_TYPE}" + - label: ":windows: x-pack/agentbeat: Windows x86_64 Spec tests" key: "agentbeat-it-windows" env: @@ -142,11 +117,11 @@ steps: disk_type: "pd-ssd" - label: ":macos: x-pack/agentbeat: macOS x86_64 Spec tests" - key: "agentbeat-it-macos" - env: - PLATFORM: "darwin/amd64" + key: "agentbeat-it-macos-x86-64" depends_on: - agentbeat-package-linux + env: + PLATFORM: "darwin/amd64" command: | set -euo pipefail source .buildkite/scripts/install_macos_tools.sh @@ -156,13 +131,17 @@ steps: provider: "orka" imagePrefix: "${IMAGE_MACOS_X86_64}" -# - label: ":linux: Agentbeat/Integration tests macOS arm64" -# key: "agentbeat-it-macos-arm" -# depends_on: -# - agentbeat-package-linux -# command: | -# cd x-pack/agentbeat -# mage -v testWithSpec -# agents: -# provider: "orka" -# imagePrefix: "${IMAGE_MACOS_ARM}" + - label: ":macos: Agentbeat/Integration tests macOS arm64" + key: "agentbeat-it-macos-arm64" + depends_on: + - agentbeat-package-linux + env: + PLATFORM: "darwin/arm64" + command: | + set -euo pipefail + source .buildkite/scripts/install_macos_tools.sh + cd x-pack/agentbeat + mage -v testWithSpec + agents: + provider: "orka" + imagePrefix: "${IMAGE_MACOS_ARM}"