Unverified Commit a98b4d1f authored by hhzhang16's avatar hhzhang16 Committed by GitHub
Browse files

feat: add owner references to DGDR-created ConfigMaps (#7782)


Signed-off-by: default avatarHannah Zhang <hannahz@nvidia.com>
parent 43e810a4
...@@ -169,6 +169,13 @@ metadata: ...@@ -169,6 +169,13 @@ metadata:
dgdr.nvidia.com/name: {{.DGDRName}} dgdr.nvidia.com/name: {{.DGDRName}}
dgdr.nvidia.com/namespace: {{.Namespace}} dgdr.nvidia.com/namespace: {{.Namespace}}
nvidia.com/managed-by: dynamo-operator nvidia.com/managed-by: dynamo-operator
ownerReferences:
- apiVersion: nvidia.com/v1beta1
kind: DynamoGraphDeploymentRequest
name: {{.DGDRName}}
uid: {{.DGDRuid}}
blockOwnerDeletion: true
controller: true
data: data:
phase: "$PHASE" phase: "$PHASE"
message: "$MESSAGE" message: "$MESSAGE"
...@@ -265,6 +272,13 @@ metadata: ...@@ -265,6 +272,13 @@ metadata:
dgdr.nvidia.com/name: {{.DGDRName}} dgdr.nvidia.com/name: {{.DGDRName}}
dgdr.nvidia.com/namespace: {{.Namespace}} dgdr.nvidia.com/namespace: {{.Namespace}}
nvidia.com/managed-by: dynamo-operator nvidia.com/managed-by: dynamo-operator
ownerReferences:
- apiVersion: nvidia.com/v1beta1
kind: DynamoGraphDeploymentRequest
name: {{.DGDRName}}
uid: {{.DGDRuid}}
blockOwnerDeletion: true
controller: true
data: data:
phase: "$FINAL_PHASE" phase: "$FINAL_PHASE"
message: "$FINAL_MESSAGE" message: "$FINAL_MESSAGE"
...@@ -946,16 +960,14 @@ func (r *DynamoGraphDeploymentRequestReconciler) createAdditionalResources(ctx c ...@@ -946,16 +960,14 @@ func (r *DynamoGraphDeploymentRequestReconciler) createAdditionalResources(ctx c
cm.Labels[nvidiacomv1beta1.LabelDGDRNamespace] = dgdr.Namespace cm.Labels[nvidiacomv1beta1.LabelDGDRNamespace] = dgdr.Namespace
cm.Labels[nvidiacomv1beta1.LabelManagedBy] = nvidiacomv1beta1.LabelValueDynamoOperator cm.Labels[nvidiacomv1beta1.LabelManagedBy] = nvidiacomv1beta1.LabelValueDynamoOperator
// Create the ConfigMap // Use SyncResource to create/update the ConfigMap with owner reference and change detection
if err := r.Create(ctx, cm); err != nil { _, _, err := commonController.SyncResource(ctx, r, dgdr, func(ctx context.Context) (*corev1.ConfigMap, bool, error) {
if apierrors.IsAlreadyExists(err) { return cm, false, nil
logger.Info("ConfigMap already exists, skipping", "name", cm.Name) })
} else { if err != nil {
return fmt.Errorf("failed to create ConfigMap %s: %w", cm.Name, err) return fmt.Errorf("failed to sync ConfigMap %s: %w", cm.Name, err)
}
} else {
logger.Info("Created ConfigMap from profiling output", "name", cm.Name, "namespace", targetNamespace)
} }
logger.Info("Synced ConfigMap from profiling output", "name", cm.Name, "namespace", targetNamespace)
} }
if resourceCount > 0 { if resourceCount > 0 {
...@@ -1270,6 +1282,7 @@ func (r *DynamoGraphDeploymentRequestReconciler) createProfilingJob(ctx context. ...@@ -1270,6 +1282,7 @@ func (r *DynamoGraphDeploymentRequestReconciler) createProfilingJob(ctx context.
"ConfigMapName": outputConfigMapName, "ConfigMapName": outputConfigMapName,
"Namespace": dgdr.Namespace, "Namespace": dgdr.Namespace,
"DGDRName": dgdr.Name, "DGDRName": dgdr.Name,
"DGDRuid": string(dgdr.UID),
}) })
if err != nil { if err != nil {
return nil, false, fmt.Errorf("failed to execute sidecar script template: %w", err) return nil, false, fmt.Errorf("failed to execute sidecar script template: %w", err)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment