Skip to content

Commit e9f5c30

Browse files
committed
Remove ragImage configuration from CR
For tech preview, the RAG images are built with specific requirements (e.g., bundled with OKP embedding model) that are not yet available to customers. Removing the field prevents users from supplying custom RAG images that would lack these dependencies and break things. The operator continues to use the image pinned via the RELATED_IMAGE_OPENSTACK_LIGHTSPEED_IMAGE_URL_DEFAULT environment variable, which is set to a known image at operator build time. Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
1 parent 9b0ffe8 commit e9f5c30

9 files changed

Lines changed: 9 additions & 38 deletions

README.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,6 @@ metadata:
135135
name: openstack-lightspeed
136136
namespace: openstack
137137
spec:
138-
$(if [ -n "$RHOS_LS_IMAGE" ]; then
139-
echo " ragImage: $RHOS_LS_IMAGE"
140-
fi)
141138
llmEndpoint: $LLM_ENDPOINT
142139
llmEndpointType: openai
143140
llmCredentials: openstack-lightspeed-apitoken

api/v1beta1/openstacklightspeed_types.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,6 @@ type DatabaseSpec struct {
9595
type OpenStackLightspeedSpec struct {
9696
OpenStackLightspeedCore `json:",inline"`
9797

98-
// +kubebuilder:validation:Optional
99-
// ContainerImage for the OpenStack Lightspeed RAG container (will be set to environmental default if empty)
100-
RAGImage string `json:"ragImage"`
101-
10298
// +kubebuilder:validation:Optional
10399
// +kubebuilder:default=false
104100
// Enables automatic OCP documentation based on cluster version

bundle/manifests/lightspeed.openstack.org_openstacklightspeeds.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -178,10 +178,6 @@ spec:
178178
When false, uses reference_url (online).
179179
type: boolean
180180
type: object
181-
ragImage:
182-
description: ContainerImage for the OpenStack Lightspeed RAG container
183-
(will be set to environmental default if empty)
184-
type: string
185181
tlsCACertBundle:
186182
description: Configmap name containing a CA Certificates bundle
187183
type: string

bundle/manifests/openstack-lightspeed-operator.clusterserviceversion.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ metadata:
2525
]
2626
capabilities: Basic Install
2727
categories: AI/Machine Learning
28-
createdAt: "2026-06-22T19:14:00Z"
28+
createdAt: "2026-07-03T16:05:52Z"
2929
description: AI-powered virtual assistant for Red Hat OpenStack Services on OpenShift
3030
features.operators.openshift.io/cnf: "false"
3131
features.operators.openshift.io/cni: "false"

config/crd/bases/lightspeed.openstack.org_openstacklightspeeds.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -178,10 +178,6 @@ spec:
178178
When false, uses reference_url (online).
179179
type: boolean
180180
type: object
181-
ragImage:
182-
description: ContainerImage for the OpenStack Lightspeed RAG container
183-
(will be set to environmental default if empty)
184-
type: string
185181
tlsCACertBundle:
186182
description: Configmap name containing a CA Certificates bundle
187183
type: string

internal/controller/lcore_deployment.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,7 @@ func buildInitContainers(
269269
var containers []corev1.Container
270270
containers = append(containers, corev1.Container{
271271
Name: "vector-database-collect",
272-
Image: instance.Spec.RAGImage,
272+
Image: apiv1beta1.OpenStackLightspeedDefaultValues.RAGImageURL,
273273
Command: func() []string {
274274
cmd := []string{
275275
"sh", VectorDBScriptsMountPath + "/" + VectorDBCollectScriptKey,

internal/controller/ocp_version.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -250,15 +250,15 @@ func BuildRAGConfigs(instance *apiv1beta1.OpenStackLightspeed, ocpVersion string
250250
rags := []interface{}{
251251
// OpenStack RAG
252252
map[string]interface{}{
253-
"image": instance.Spec.RAGImage,
253+
"image": apiv1beta1.OpenStackLightspeedDefaultValues.RAGImageURL,
254254
"indexPath": OpenStackLightspeedVectorDBPath,
255255
},
256256
}
257257

258258
// Add OCP RAG if enabled
259259
if ocpVersion != "" {
260260
rags = append(rags, map[string]interface{}{
261-
"image": instance.Spec.RAGImage,
261+
"image": apiv1beta1.OpenStackLightspeedDefaultValues.RAGImageURL,
262262
"indexPath": GetOCPVectorDBPath(ocpVersion),
263263
"indexID": GetOCPIndexName(ocpVersion),
264264
})

internal/controller/ocp_version_test.go

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -234,12 +234,10 @@ func TestResolveOCPVersion(t *testing.T) {
234234
}
235235

236236
func TestBuildRAGConfigs(t *testing.T) {
237+
apiv1beta1.OpenStackLightspeedDefaultValues.RAGImageURL = testRAGImage
238+
237239
t.Run("OCP RAG disabled (empty version)", func(t *testing.T) {
238-
instance := &apiv1beta1.OpenStackLightspeed{
239-
Spec: apiv1beta1.OpenStackLightspeedSpec{
240-
RAGImage: testRAGImage,
241-
},
242-
}
240+
instance := &apiv1beta1.OpenStackLightspeed{}
243241

244242
configs := BuildRAGConfigs(instance, "")
245243

@@ -268,11 +266,7 @@ func TestBuildRAGConfigs(t *testing.T) {
268266
})
269267

270268
t.Run("OCP RAG enabled", func(t *testing.T) {
271-
instance := &apiv1beta1.OpenStackLightspeed{
272-
Spec: apiv1beta1.OpenStackLightspeedSpec{
273-
RAGImage: testRAGImage,
274-
},
275-
}
269+
instance := &apiv1beta1.OpenStackLightspeed{}
276270

277271
configs := BuildRAGConfigs(instance, "4.16")
278272

@@ -332,11 +326,7 @@ func TestBuildRAGConfigs(t *testing.T) {
332326
})
333327

334328
t.Run("OCP RAG with latest version", func(t *testing.T) {
335-
instance := &apiv1beta1.OpenStackLightspeed{
336-
Spec: apiv1beta1.OpenStackLightspeedSpec{
337-
RAGImage: testRAGImage,
338-
},
339-
}
329+
instance := &apiv1beta1.OpenStackLightspeed{}
340330

341331
configs := BuildRAGConfigs(instance, "latest")
342332

internal/controller/openstacklightspeed_controller.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -159,10 +159,6 @@ func (r *OpenStackLightspeedReconciler) Reconcile(ctx context.Context, req ctrl.
159159
return ctrl.Result{}, nil
160160
}
161161

162-
if instance.Spec.RAGImage == "" {
163-
instance.Spec.RAGImage = apiv1beta1.OpenStackLightspeedDefaultValues.RAGImageURL
164-
}
165-
166162
if instance.Spec.MaxTokensForResponse == 0 {
167163
instance.Spec.MaxTokensForResponse = apiv1beta1.OpenStackLightspeedDefaultValues.MaxTokensForResponse
168164
}

0 commit comments

Comments
 (0)