Skip to content

Add OpenStackAssistant CRD for AI-powered cluster health checks and upgrades#1914

Draft
dprince wants to merge 5 commits intoopenstack-k8s-operators:mainfrom
dprince:assistant
Draft

Add OpenStackAssistant CRD for AI-powered cluster health checks and upgrades#1914
dprince wants to merge 5 commits intoopenstack-k8s-operators:mainfrom
dprince:assistant

Conversation

@dprince
Copy link
Copy Markdown
Contributor

@dprince dprince commented May 5, 2026

Add OpenStackAssistant CRD for AI-powered cluster management

Introduce a new OpenStackAssistant custom resource that deploys an AI
agent (Goose) as a Kubernetes pod with read only access to the OpenStack
control plane. The assistant connects to a Lightspeed Stack AI backend
and is configured with operator credentials, recipes, and hints for
cluster diagnostics and management tasks.

Key components:

  • assistant.openstack.org/v1beta1 API with OpenStackAssistant CRD
  • Controller that reconciles pods with openstackclient capabilities,
    Goose configuration, CA bundles, and provider secrets
  • Validating webhook for spec validation
  • Support for configurable model, recipes (slash commands), and hints
  • Unit tests for controller and helper functions
  • CRD bindata, RBAC roles, and sample manifests

dprince added 5 commits May 4, 2026 15:55
Implements the OpenStackAssistant API (assistant.openstack.org/v1beta1)
which deploys a managed Goose AI agent pod with read-only RBAC for
cluster diagnostics via Lightspeed Stack.
Add a dedicated Model field to GooseConfig so the Goose AI model can be
set declaratively in the OpenStackAssistant CR spec rather than requiring
it to be passed as a raw env var. When set, the controller injects the
GOOSE_MODEL environment variable into the pod.

Update the entrypoint script to use $HOME/.config/goose/ instead of
~/.goose/ for Goose configuration paths, aligning with the XDG base
directory convention used by newer Goose versions.
@openshift-ci openshift-ci Bot requested review from abays and fultonj May 5, 2026 12:03
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dprince

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

OpenStackControlPlane CRD Size Report

Metric Value
CRD JSON size 322464 bytes (315KB)
Base branch size 322464 bytes
Change +0.00%
Status yellow — growing
Threshold reference
Color Range Meaning
🟢 green < 300KB Comfortable
🟡 yellow 300–400KB Growing
🟠 orange 400–750KB Concerning
🔴 red > 750KB Approaching 1.5MB etcd limit (cut in half to allow space for update)

@centosinfra-prod-github-app
Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/8043f111931d4762b34dec5062d331be

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 05m 10s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 27m 31s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 38m 25s
adoption-standalone-to-crc-ceph-provider RETRY_LIMIT in 27s
✔️ openstack-operator-tempest-multinode SUCCESS in 1h 52m 54s
openstack-operator-edpm-baremetal-minor-update RETRY_LIMIT in 22m 57s

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.

1 participant