Skip to content

[Synthetics] Migrate obs security api_keys FTR test to Scout API#272034

Draft
shahzad31 wants to merge 1 commit into
elastic:mainfrom
shahzad31:cleanup/obs-api-keys-ftr-to-scout
Draft

[Synthetics] Migrate obs security api_keys FTR test to Scout API#272034
shahzad31 wants to merge 1 commit into
elastic:mainfrom
shahzad31:cleanup/obs-api-keys-ftr-to-scout

Conversation

@shahzad31
Copy link
Copy Markdown
Contributor

Summary

Migrates the standalone observability api_integration/apis/security FTR test
(API key creation) into the Synthetics Scout API suite and removes the legacy
FTR config.

The single test verified that a privileged user can create an API key via
POST /internal/security/api_key with role descriptors carrying the
synthetics-service Elasticsearch privileges plus the legacy uptime feature.

Changes

  • Add x-pack/solutions/observability/plugins/synthetics/test/scout/api/tests/api_keys.spec.ts.
    Uses the same cookie-based admin auth pattern as synthetics_enablement.spec.ts
    (samlAuth.asInteractiveUser('admin') + KIBANA_HEADERS), asserts 200 and
    name: 'test_api_key'.
  • Delete x-pack/solutions/observability/test/api_integration/apis/security/
    (config.ts, index.ts, api_keys.ts).
  • Remove the config from .buildkite/ftr-manifests/ftr_oblt_stateful_configs.yml
    and the stale .github/CODEOWNERS entry.
  • Regenerate the Synthetics Scout .meta/api/standard.json.

Notes

  • The synthetics-service ES privileges and '*' (all spaces) are inlined in the
    spec rather than imported from @kbn/synthetics-plugin/server/..., following
    this suite's local-constants convention (see fixtures/constants.ts) of not
    importing across the plugin server boundary.
  • Tagged @local-stateful-classic only (not serverless) to preserve the original
    FTR scope — the legacy uptime feature and the stateful-only read_ilm cluster
    privilege are not meaningful in the serverless observability target.

Test plan

  • node scripts/eslint --fix on the new spec — clean.
  • Ran the new spec against a local stateful Scout server — 1 passed.
  • CI green.

Made with Cursor

Ports `x-pack/solutions/observability/test/api_integration/apis/security`
(API key creation with synthetics-service ES privileges + uptime feature)
to a Scout API spec in the synthetics suite, and removes the standalone FTR
config along with its Buildkite manifest and CODEOWNERS entries.

Co-authored-by: Cursor <cursoragent@cursor.com>
@shahzad31 shahzad31 added release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting Team:actionable-obs Formerly "obs-ux-management", responsible for SLO, o11y alerting, significant events, & synthetics. author:actionable-obs PRs authored by the actionable obs team labels May 30, 2026
@infra-vault-gh-plugin-prod
Copy link
Copy Markdown

🤖 Jobs for this PR can be triggered through checkboxes. 🚧

ℹ️ To trigger the CI, please tick the checkbox below 👇

  • Click to trigger kibana-pull-request for this PR!
  • Click to trigger kibana-deploy-project-from-pr for this PR!
  • Click to trigger kibana-deploy-cloud-from-pr for this PR!
  • Click to trigger kibana-entity-store-performance-from-pr for this PR!
  • Click to trigger kibana-storybooks-from-pr for this PR!

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

Labels

author:actionable-obs PRs authored by the actionable obs team backport:skip This PR does not require backporting release_note:skip Skip the PR/issue when compiling release notes Team:actionable-obs Formerly "obs-ux-management", responsible for SLO, o11y alerting, significant events, & synthetics.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant