From 248daf94ed10bcdf2e475253c19095d7e35a4cc4 Mon Sep 17 00:00:00 2001 From: Caleb Xu Date: Fri, 14 Jan 2022 15:56:54 -0500 Subject: [PATCH] node-drain: ExperimentDetails.TargetNode is now Experiment.TargetNodes --- chaoslib/litmus/node-drain/lib/node-drain.go | 12 ++++++------ .../generic/node-drain/experiment/node-drain.go | 6 +++--- pkg/generic/node-drain/environment/environment.go | 2 +- pkg/generic/node-drain/types/types.go | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/chaoslib/litmus/node-drain/lib/node-drain.go b/chaoslib/litmus/node-drain/lib/node-drain.go index 2da5f64a7..bc1451447 100644 --- a/chaoslib/litmus/node-drain/lib/node-drain.go +++ b/chaoslib/litmus/node-drain/lib/node-drain.go @@ -49,16 +49,16 @@ func PrepareNodeDrain(experimentsDetails *experimentTypes.ExperimentDetails, cli common.WaitForDuration(experimentsDetails.RampTime) } - if experimentsDetails.TargetNode == "" { + if experimentsDetails.TargetNodes == "" { //Select node for kubelet-service-kill - experimentsDetails.TargetNode, err = common.GetNodeName(experimentsDetails.AppNS, experimentsDetails.AppLabel, experimentsDetails.NodeLabel, clients) + experimentsDetails.TargetNodes, err = common.GetNodeName(experimentsDetails.AppNS, experimentsDetails.AppLabel, experimentsDetails.NodeLabel, clients) if err != nil { return err } } if experimentsDetails.EngineName != "" { - msg := "Injecting " + experimentsDetails.ExperimentName + " chaos on " + experimentsDetails.TargetNode + " node" + msg := "Injecting " + experimentsDetails.ExperimentName + " chaos on " + experimentsDetails.TargetNodes + " node" types.SetEngineEventAttributes(eventsDetails, types.ChaosInject, msg, "Normal", chaosDetails) events.GenerateEvents(eventsDetails, clients, chaosDetails, "ChaosEngine") } @@ -114,7 +114,7 @@ func PrepareNodeDrain(experimentsDetails *experimentTypes.ExperimentDetails, cli // drainNode drain the application node func drainNode(experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, chaosDetails *types.ChaosDetails) error { - targetNodes := strings.Split(experimentsDetails.TargetNode, ",") + targetNodes := strings.Split(experimentsDetails.TargetNodes, ",") if len(targetNodes) == 0 { return errors.Errorf("No target nodes provided, expected the comma-separated names of one or more nodes") } @@ -135,7 +135,7 @@ func drainNode(experimentsDetails *experimentTypes.ExperimentDetails, clients cl command.Stderr = &stderr if err := command.Run(); err != nil { log.Infof("Error String: %v", stderr.String()) - return errors.Errorf("Unable to drain the %v node, err: %v", experimentsDetails.TargetNode, err) + return errors.Errorf("Unable to drain the %v node, err: %v", targetNode, err) } common.SetTargets(targetNode, "injected", "node", chaosDetails) @@ -218,7 +218,7 @@ func uncordonNode(experimentsDetails *experimentTypes.ExperimentDetails, clients } } if nodeSpec.Spec.Unschedulable { - return errors.Errorf("%v node is in unschedulable state", experimentsDetails.TargetNode) + return errors.Errorf("%v node is in unschedulable state", targetNode) } } return nil diff --git a/experiments/generic/node-drain/experiment/node-drain.go b/experiments/generic/node-drain/experiment/node-drain.go index d83cb7034..9ed5796e7 100644 --- a/experiments/generic/node-drain/experiment/node-drain.go +++ b/experiments/generic/node-drain/experiment/node-drain.go @@ -64,7 +64,7 @@ func NodeDrain(clients clients.ClientSets) { //DISPLAY THE APP INFORMATION log.InfoWithValues("[Info]: The application information is as follows", logrus.Fields{ "Node Label": experimentsDetails.NodeLabel, - "Target Node": experimentsDetails.TargetNode, + "Target Nodes": experimentsDetails.TargetNodes, "Chaos Duration": experimentsDetails.ChaosDuration, }) @@ -93,7 +93,7 @@ func NodeDrain(clients clients.ClientSets) { // Checking the status of target nodes log.Info("[Status]: Getting the status of target nodes") - if err := status.CheckNodeStatus(experimentsDetails.TargetNode, experimentsDetails.Timeout, experimentsDetails.Delay, clients); err != nil { + if err := status.CheckNodeStatus(experimentsDetails.TargetNodes, experimentsDetails.Timeout, experimentsDetails.Delay, clients); err != nil { log.Errorf("Target nodes are not in the ready state, err: %v", err) failStep := "[pre-chaos]: Failed to verify the status of nodes, err: " + err.Error() types.SetEngineEventAttributes(&eventsDetails, types.PreChaosCheck, "NUT: Not Ready", "Warning", &chaosDetails) @@ -166,7 +166,7 @@ func NodeDrain(clients clients.ClientSets) { // Checking the status of target nodes log.Info("[Status]: Getting the status of target nodes") - if err := status.CheckNodeStatus(experimentsDetails.TargetNode, experimentsDetails.Timeout, experimentsDetails.Delay, clients); err != nil { + if err := status.CheckNodeStatus(experimentsDetails.TargetNodes, experimentsDetails.Timeout, experimentsDetails.Delay, clients); err != nil { log.Warnf("Target nodes are not in the ready state, you may need to manually recover the node, err: %v", err) types.SetEngineEventAttributes(&eventsDetails, types.PostChaosCheck, "NUT: Not Ready", "Warning", &chaosDetails) events.GenerateEvents(&eventsDetails, clients, &chaosDetails, "ChaosEngine") diff --git a/pkg/generic/node-drain/environment/environment.go b/pkg/generic/node-drain/environment/environment.go index d0d1069a4..326a06d5f 100644 --- a/pkg/generic/node-drain/environment/environment.go +++ b/pkg/generic/node-drain/environment/environment.go @@ -24,7 +24,7 @@ func GetENV(experimentDetails *experimentTypes.ExperimentDetails) { experimentDetails.InstanceID = types.Getenv("INSTANCE_ID", "") experimentDetails.ChaosPodName = types.Getenv("POD_NAME", "") experimentDetails.AuxiliaryAppInfo = types.Getenv("AUXILIARY_APPINFO", "") - experimentDetails.TargetNode = types.Getenv("TARGET_NODE", "") + experimentDetails.TargetNodes = types.Getenv("TARGET_NODES", "") experimentDetails.Delay, _ = strconv.Atoi(types.Getenv("STATUS_CHECK_DELAY", "2")) experimentDetails.Timeout, _ = strconv.Atoi(types.Getenv("STATUS_CHECK_TIMEOUT", "180")) experimentDetails.TargetContainer = types.Getenv("TARGET_CONTAINER", "") diff --git a/pkg/generic/node-drain/types/types.go b/pkg/generic/node-drain/types/types.go index 722cc7f82..4d594ece9 100644 --- a/pkg/generic/node-drain/types/types.go +++ b/pkg/generic/node-drain/types/types.go @@ -18,7 +18,7 @@ type ExperimentDetails struct { InstanceID string ChaosNamespace string ChaosPodName string - TargetNode string + TargetNodes string AuxiliaryAppInfo string Timeout int Delay int