Skip to content

Commit

Permalink
e2e: Update logs for drpc related funcs
Browse files Browse the repository at this point in the history
Add debug logs in create, delete, generate and wait drpc funcs

Signed-off-by: Parikshith <[email protected]>
  • Loading branch information
parikshithb committed Feb 13, 2025
1 parent f203fd3 commit 771e8e9
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 18 deletions.
17 changes: 10 additions & 7 deletions e2e/dractions/actions.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
package dractions

import (
"strings"

ramen "github.com/ramendr/ramen/api/v1alpha1"
"github.com/ramendr/ramen/e2e/types"
"github.com/ramendr/ramen/e2e/util"
Expand Down Expand Up @@ -77,7 +75,7 @@ func EnableProtection(ctx types.Context) error {
}

drpc := generateDRPC(name, managementNamespace, clusterName, drPolicyName, placementName, appname)
if err = createDRPC(util.Ctx.Hub.Client, drpc); err != nil {
if err = createDRPC(ctx, util.Ctx.Hub.Client, drpc); err != nil {
return err
}

Expand Down Expand Up @@ -107,7 +105,7 @@ func DisableProtection(ctx types.Context) error {
drpcName := name
client := util.Ctx.Hub.Client

if err := deleteDRPC(client, managementNamespace, drpcName); err != nil {
if err := deleteDRPC(ctx, client, managementNamespace, drpcName); err != nil {
return err
}

Expand Down Expand Up @@ -216,8 +214,6 @@ func waitAndUpdateDRPC(
return err
}

log.Info("Updating drpc " + strings.ToLower(string(action)) + " to " + targetCluster)

return retry.RetryOnConflict(retry.DefaultBackoff, func() error {
drpc, err := getDRPC(client, namespace, drpcName)
if err != nil {
Expand All @@ -231,6 +227,13 @@ func waitAndUpdateDRPC(
drpc.Spec.PreferredCluster = targetCluster
}

return updateDRPC(client, drpc)
if err := updateDRPC(client, drpc); err != nil {
return err
}

log.Debugf("Updated drpc \"%s/%s\" with action %q to target cluster %q",
namespace, drpcName, action, targetCluster)

return nil
})
}
24 changes: 21 additions & 3 deletions e2e/dractions/crud.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ package dractions

import (
"context"
"encoding/json"

ramen "github.com/ramendr/ramen/api/v1alpha1"
"github.com/ramendr/ramen/e2e/deployers"
Expand Down Expand Up @@ -46,23 +47,38 @@ func getDRPC(client client.Client, namespace, name string) (*ramen.DRPlacementCo
return drpc, nil
}

func createDRPC(client client.Client, drpc *ramen.DRPlacementControl) error {
func createDRPC(ctx types.Context, client client.Client, drpc *ramen.DRPlacementControl) error {
log := ctx.Logger()

err := client.Create(context.Background(), drpc)
if err != nil {
if !errors.IsAlreadyExists(err) {
return err
}
// ctx.Log.Info("drpc " + drpc.Name + " already Exists")

log.Debugf("drpc \"%s/%s\" already exist", drpc.Namespace, drpc.Name)
}

// pretty-print the drpc specification
drpcSpecJSON, err := json.MarshalIndent(drpc.Spec, "", " ")
if err != nil {
log.Errorf("Error marshaling drpc for logging: %v", err)

return err
}

log.Debugf("Created drpc \"%s/%s\" with spec: \n%s", drpc.Namespace, drpc.Name, string(drpcSpecJSON))

return nil
}

func updateDRPC(client client.Client, drpc *ramen.DRPlacementControl) error {
return client.Update(context.Background(), drpc)
}

func deleteDRPC(client client.Client, namespace, name string) error {
func deleteDRPC(ctx types.Context, client client.Client, namespace, name string) error {
log := ctx.Logger()

objDrpc := &ramen.DRPlacementControl{}
key := k8stypes.NamespacedName{Namespace: namespace, Name: name}

Expand All @@ -72,6 +88,8 @@ func deleteDRPC(client client.Client, namespace, name string) error {
return err
}

log.Debugf("drpc \"%s/%s\" not found", namespace, name)

return nil
}

Expand Down
4 changes: 2 additions & 2 deletions e2e/dractions/discovered.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ func EnableProtectionDiscoveredApps(ctx types.Context) error {

drpc := generateDRPCDiscoveredApps(
name, managementNamespace, clusterName, drPolicyName, placementName, appname, appNamespace)
if err = createDRPC(util.Ctx.Hub.Client, drpc); err != nil {
if err = createDRPC(ctx, util.Ctx.Hub.Client, drpc); err != nil {
return err
}

Expand All @@ -67,7 +67,7 @@ func DisableProtectionDiscoveredApps(ctx types.Context) error {

client := util.Ctx.Hub.Client

if err := deleteDRPC(client, managementNamespace, drpcName); err != nil {
if err := deleteDRPC(ctx, client, managementNamespace, drpcName); err != nil {
return err
}

Expand Down
18 changes: 12 additions & 6 deletions e2e/dractions/retry.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ func waitDRPCReady(ctx types.Context, client client.Client, namespace string, dr
log := ctx.Logger()
startTime := time.Now()

log.Info("Waiting until drpc is ready")
log.Debugf("Waiting until drpc \"%s/%s\" is ready", namespace, drpcName)

for {
drpc, err := getDRPC(client, namespace, drpcName)
Expand All @@ -62,7 +62,7 @@ func waitDRPCReady(ctx types.Context, client client.Client, namespace string, dr
peerReady := conditionMet(drpc.Status.Conditions, ramen.ConditionPeerReady)

if available && peerReady && drpc.Status.LastGroupSyncTime != nil {
log.Info("drpc is ready")
log.Debugf("drpc \"%s/%s\" is ready", namespace, drpcName)

return nil
}
Expand All @@ -86,6 +86,8 @@ func waitDRPCPhase(ctx types.Context, client client.Client, namespace, name stri
log := ctx.Logger()
startTime := time.Now()

log.Debugf("Waiting until drpc \"%s/%s\" reach phase %q", namespace, name, phase)

for {
drpc, err := getDRPC(client, namespace, name)
if err != nil {
Expand All @@ -94,7 +96,7 @@ func waitDRPCPhase(ctx types.Context, client client.Client, namespace, name stri

currentPhase := drpc.Status.Phase
if currentPhase == phase {
log.Infof("drpc phase is %q", phase)
log.Debugf("drpc \"%s/%s\" phase is %q", namespace, name, phase)

return nil
}
Expand Down Expand Up @@ -145,16 +147,18 @@ func waitDRPCDeleted(ctx types.Context, client client.Client, namespace string,
log := ctx.Logger()
startTime := time.Now()

log.Debugf("Waiting until drpc \"%s/%s\" is deleted", namespace, name)

for {
_, err := getDRPC(client, namespace, name)
if err != nil {
if errors.IsNotFound(err) {
log.Info("drpc is deleted")
log.Debugf("drpc \"%s/%s\" is deleted", namespace, name)

return nil
}

log.Infof("Failed to get drpc: %s", err)
log.Debugf("Failed to get drpc \"%s/%s\": %s", namespace, name, err)
}

if time.Since(startTime) > util.Timeout {
Expand All @@ -175,6 +179,8 @@ func waitDRPCProgression(
log := ctx.Logger()
startTime := time.Now()

log.Debugf("Waiting until drpc \"%s/%s\" reach progression %q", namespace, name, progression)

for {
drpc, err := getDRPC(client, namespace, name)
if err != nil {
Expand All @@ -183,7 +189,7 @@ func waitDRPCProgression(

currentProgression := drpc.Status.Progression
if currentProgression == progression {
log.Infof("drpc progression is %q", progression)
log.Debugf("drpc \"%s/%s\" progression is %q", namespace, name, progression)

return nil
}
Expand Down

0 comments on commit 771e8e9

Please sign in to comment.