sqs-operator v0.1.9: fix SQS_ENDPOINT context-path, add sidecar to source

- ensureDeployment: sidecar elasticmq-ui добавлен в Go-код (не Python патч)
- SQS_ENDPOINT=http://localhost:9324/sqs/{tenantID} — с context-path
- ElasticMQ не отвечает на root /, только на /sqs/{tenantID}
- Sidecar условный: добавляется только при spec.enableUI=true
This commit is contained in:
Naeel
2026-04-08 20:08:25 +03:00
parent 657fc33119
commit 7ea7e9b360
@@ -527,7 +527,8 @@ func (r *QueueServiceReconciler) ensureDeployment(ctx context.Context, qs *sqsv1
SecurityContext: &corev1.PodSecurityContext{ SecurityContext: &corev1.PodSecurityContext{
FSGroup: func() *int64 { v := int64(999); return &v }(), FSGroup: func() *int64 { v := int64(999); return &v }(),
}, },
Containers: []corev1.Container{ Containers: func() []corev1.Container {
ctrs := []corev1.Container{
{ {
Name: "elasticmq", Name: "elasticmq",
Image: image, Image: image,
@@ -591,7 +592,36 @@ func (r *QueueServiceReconciler) ensureDeployment(ctx context.Context, qs *sqsv1
FailureThreshold: 5, FailureThreshold: 5,
}, },
}, },
}
if qs.Spec.EnableUI {
// SQS_ENDPOINT включает context-path: ElasticMQ принимает запросы
// только на /sqs/{tenantID}, root / возвращает текстовую ошибку "The request...".
ctrs = append(ctrs, corev1.Container{
Name: "elasticmq-ui",
Image: elasticMQUIImage,
Ports: []corev1.ContainerPort{
{ContainerPort: int32(elasticMQUIPort), Protocol: corev1.ProtocolTCP},
}, },
Env: []corev1.EnvVar{
{
Name: "SQS_ENDPOINT",
Value: fmt.Sprintf("http://localhost:%d/sqs/%s", elasticMQPort, qs.Spec.TenantID),
},
},
Resources: corev1.ResourceRequirements{
Requests: corev1.ResourceList{
corev1.ResourceCPU: resource.MustParse("10m"),
corev1.ResourceMemory: resource.MustParse("64Mi"),
},
Limits: corev1.ResourceList{
corev1.ResourceCPU: resource.MustParse("200m"),
corev1.ResourceMemory: resource.MustParse("128Mi"),
},
},
})
}
return ctrs
}(),
Volumes: []corev1.Volume{ Volumes: []corev1.Volume{
{ {
Name: "elasticmq-config", Name: "elasticmq-config",