Skip to content

[Chore] Run only relevant tests#9687

Draft
weronikaolejniczak wants to merge 5 commits into
elastic:mainfrom
weronikaolejniczak:chore/relevant-tests
Draft

[Chore] Run only relevant tests#9687
weronikaolejniczak wants to merge 5 commits into
elastic:mainfrom
weronikaolejniczak:chore/relevant-tests

Conversation

@weronikaolejniczak

@weronikaolejniczak weronikaolejniczak commented May 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes https://github.com/elastic/eui-private/issues/451

The idea here is to add the missing Jest test suites to the CI and skip all the heavy EUI testing when we know the changes don't affect it (ESLint plugin, website, wiki etc.). Apparently, our CI cost is very low so the argument for this is mostly to save on our time.

The Dream™ would be a job per package (linting, Jest tests, E2E tests) but this requires a bigger CI re-architecture.

QA instructions for reviewer

  • Change in .github/, wiki/, packages/website/, packages/docusaurus-theme/ or packages/docusaurus-preset/ skips the whole test pipeline.
  • Change in packages/eslint-plugin/ skips the EUI jobs but still runs Workspace unit tests and Workspace linting.
  • Change in packages/eui-theme-borealis/ or packages/eui-theme-common/ still runs the full EUI suite plus the workspace jobs.

@weronikaolejniczak weronikaolejniczak self-assigned this May 29, 2026
Copilot AI review requested due to automatic review settings May 29, 2026 08:40
@weronikaolejniczak weronikaolejniczak requested a review from a team as a code owner May 29, 2026 08:40

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Buildkite PR test pipeline to (1) selectively skip the heavy EUI test suite when a PR only touches non-EUI paths, and (2) add package-scoped CI steps for the ESLint plugin and EUI theme packages.

Changes:

  • Add path-based early-exit logic in pipeline_test.sh for heavy EUI jobs (lint/unit/cypress) when only non-EUI areas changed.
  • Expand Buildkite PR trigger “skip CI on only changed paths” to include website and Docusaurus packages.
  • Add new PR pipeline steps to run unit/lint tasks for @elastic/eslint-plugin-eui, @elastic/eui-theme-common, and @elastic/eui-theme-borealis.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
.buildkite/scripts/pipelines/pipeline_test.sh Adds non-EUI path detection and new per-package test/lint task types.
.buildkite/pull-requests.json Extends “skip CI on only changed paths” to website & docusaurus packages.
.buildkite/pipelines/pipeline_pull_request_test.yml Adds new Buildkite steps for eslint-plugin and theme package lint/unit tests.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .buildkite/pull-requests.json
# When a PR's diff is contained entirely within these paths,
# the heavy EUI jobs (lint, unit:*, cypress:*) exit early below.
# The lightweight per-package jobs always run.
NON_EUI_PATHS_REGEXP='^(\.github/|wiki/|packages/(website|docusaurus-[^/]+|eslint-plugin)/)'

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In theory, these will be skipped earlier. This is an additional check.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

Comment thread .buildkite/scripts/pipelines/pipeline_test.sh
@elasticmachine

Copy link
Copy Markdown
Collaborator

💔 Build Failed

Failed CI Steps

History

cc @weronikaolejniczak

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
3 visual difference(s) found - expand to review, then click Approve visual changes to update baselines

euicodeblock (1 difference)

StoryBeforeAfterDiff
virtualized code block scrolling desktop

euipopover (1 difference)

StoryBeforeAfterDiff
playground desktop

euidatagrid (1 difference)

StoryBeforeAfterDiff
additional controls options desktop

@elasticmachine

elasticmachine commented Jun 18, 2026

Copy link
Copy Markdown
Collaborator

💔 Build Failed

Failed CI Steps

History

cc @weronikaolejniczak

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants