Skip to content

Commit 723fb59

Browse files
committed
fix: Set context.Context as a parameter in each function
Signed-off-by: namkyu1999 <[email protected]>
1 parent a6a77d1 commit 723fb59

File tree

102 files changed

+773
-651
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

102 files changed

+773
-651
lines changed

bin/experiment/experiment.go

Lines changed: 51 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ import (
6767
"github.com/litmuschaos/litmus-go/pkg/log"
6868
"github.com/litmuschaos/litmus-go/pkg/telemetry"
6969
"github.com/sirupsen/logrus"
70+
"go.opentelemetry.io/otel"
7071
)
7172

7273
func init() {
@@ -93,9 +94,9 @@ func main() {
9394
ctx = telemetry.GetTraceParentContext()
9495
}
9596

96-
clients := cli.ClientSets{Context: ctx}
97+
clients := cli.ClientSets{}
9798

98-
span := telemetry.StartTracing(clients, "ExecuteExperiment")
99+
ctx, span := otel.Tracer(telemetry.TracerName).Start(ctx, "ExecuteExperiment")
99100
defer span.End()
100101

101102
// parse the experiment name
@@ -112,101 +113,101 @@ func main() {
112113
// invoke the corresponding experiment based on the (-name) flag
113114
switch *experimentName {
114115
case "container-kill":
115-
containerKill.ContainerKill(clients)
116+
containerKill.ContainerKill(ctx, clients)
116117
case "disk-fill":
117-
diskFill.DiskFill(clients)
118+
diskFill.DiskFill(ctx, clients)
118119
case "kafka-broker-pod-failure":
119-
kafkaBrokerPodFailure.KafkaBrokerPodFailure(clients)
120+
kafkaBrokerPodFailure.KafkaBrokerPodFailure(ctx, clients)
120121
case "kubelet-service-kill":
121-
kubeletServiceKill.KubeletServiceKill(clients)
122+
kubeletServiceKill.KubeletServiceKill(ctx, clients)
122123
case "docker-service-kill":
123-
dockerServiceKill.DockerServiceKill(clients)
124+
dockerServiceKill.DockerServiceKill(ctx, clients)
124125
case "node-cpu-hog":
125-
nodeCPUHog.NodeCPUHog(clients)
126+
nodeCPUHog.NodeCPUHog(ctx, clients)
126127
case "node-drain":
127-
nodeDrain.NodeDrain(clients)
128+
nodeDrain.NodeDrain(ctx, clients)
128129
case "node-io-stress":
129-
nodeIOStress.NodeIOStress(clients)
130+
nodeIOStress.NodeIOStress(ctx, clients)
130131
case "node-memory-hog":
131-
nodeMemoryHog.NodeMemoryHog(clients)
132+
nodeMemoryHog.NodeMemoryHog(ctx, clients)
132133
case "node-taint":
133-
nodeTaint.NodeTaint(clients)
134+
nodeTaint.NodeTaint(ctx, clients)
134135
case "pod-autoscaler":
135-
podAutoscaler.PodAutoscaler(clients)
136+
podAutoscaler.PodAutoscaler(ctx, clients)
136137
case "pod-cpu-hog-exec":
137-
podCPUHogExec.PodCPUHogExec(clients)
138+
podCPUHogExec.PodCPUHogExec(ctx, clients)
138139
case "pod-delete":
139-
podDelete.PodDelete(clients)
140+
podDelete.PodDelete(ctx, clients)
140141
case "pod-io-stress":
141-
podIOStress.PodIOStress(clients)
142+
podIOStress.PodIOStress(ctx, clients)
142143
case "pod-memory-hog-exec":
143-
podMemoryHogExec.PodMemoryHogExec(clients)
144+
podMemoryHogExec.PodMemoryHogExec(ctx, clients)
144145
case "pod-network-corruption":
145-
podNetworkCorruption.PodNetworkCorruption(clients)
146+
podNetworkCorruption.PodNetworkCorruption(ctx, clients)
146147
case "pod-network-duplication":
147-
podNetworkDuplication.PodNetworkDuplication(clients)
148+
podNetworkDuplication.PodNetworkDuplication(ctx, clients)
148149
case "pod-network-latency":
149-
podNetworkLatency.PodNetworkLatency(clients)
150+
podNetworkLatency.PodNetworkLatency(ctx, clients)
150151
case "pod-network-loss":
151-
podNetworkLoss.PodNetworkLoss(clients)
152+
podNetworkLoss.PodNetworkLoss(ctx, clients)
152153
case "pod-network-partition":
153-
podNetworkPartition.PodNetworkPartition(clients)
154+
podNetworkPartition.PodNetworkPartition(ctx, clients)
154155
case "pod-memory-hog":
155-
podMemoryHog.PodMemoryHog(clients)
156+
podMemoryHog.PodMemoryHog(ctx, clients)
156157
case "pod-cpu-hog":
157-
podCPUHog.PodCPUHog(clients)
158+
podCPUHog.PodCPUHog(ctx, clients)
158159
case "cassandra-pod-delete":
159-
cassandraPodDelete.CasssandraPodDelete(clients)
160+
cassandraPodDelete.CasssandraPodDelete(ctx, clients)
160161
case "aws-ssm-chaos-by-id":
161-
awsSSMChaosByID.AWSSSMChaosByID(clients)
162+
awsSSMChaosByID.AWSSSMChaosByID(ctx, clients)
162163
case "aws-ssm-chaos-by-tag":
163-
awsSSMChaosByTag.AWSSSMChaosByTag(clients)
164+
awsSSMChaosByTag.AWSSSMChaosByTag(ctx, clients)
164165
case "ec2-terminate-by-id":
165-
ec2TerminateByID.EC2TerminateByID(clients)
166+
ec2TerminateByID.EC2TerminateByID(ctx, clients)
166167
case "ec2-terminate-by-tag":
167-
ec2TerminateByTag.EC2TerminateByTag(clients)
168+
ec2TerminateByTag.EC2TerminateByTag(ctx, clients)
168169
case "ebs-loss-by-id":
169-
ebsLossByID.EBSLossByID(clients)
170+
ebsLossByID.EBSLossByID(ctx, clients)
170171
case "ebs-loss-by-tag":
171-
ebsLossByTag.EBSLossByTag(clients)
172+
ebsLossByTag.EBSLossByTag(ctx, clients)
172173
case "node-restart":
173-
nodeRestart.NodeRestart(clients)
174+
nodeRestart.NodeRestart(ctx, clients)
174175
case "pod-dns-error":
175-
podDNSError.PodDNSError(clients)
176+
podDNSError.PodDNSError(ctx, clients)
176177
case "pod-dns-spoof":
177-
podDNSSpoof.PodDNSSpoof(clients)
178+
podDNSSpoof.PodDNSSpoof(ctx, clients)
178179
case "pod-http-latency":
179-
podHttpLatency.PodHttpLatency(clients)
180+
podHttpLatency.PodHttpLatency(ctx, clients)
180181
case "pod-http-status-code":
181-
podHttpStatusCode.PodHttpStatusCode(clients)
182+
podHttpStatusCode.PodHttpStatusCode(ctx, clients)
182183
case "pod-http-modify-header":
183-
podHttpModifyHeader.PodHttpModifyHeader(clients)
184+
podHttpModifyHeader.PodHttpModifyHeader(ctx, clients)
184185
case "pod-http-modify-body":
185-
podHttpModifyBody.PodHttpModifyBody(clients)
186+
podHttpModifyBody.PodHttpModifyBody(ctx, clients)
186187
case "pod-http-reset-peer":
187-
podHttpResetPeer.PodHttpResetPeer(clients)
188+
podHttpResetPeer.PodHttpResetPeer(ctx, clients)
188189
case "vm-poweroff":
189-
vmpoweroff.VMPoweroff(clients)
190+
vmpoweroff.VMPoweroff(ctx, clients)
190191
case "azure-instance-stop":
191-
azureInstanceStop.AzureInstanceStop(clients)
192+
azureInstanceStop.AzureInstanceStop(ctx, clients)
192193
case "azure-disk-loss":
193-
azureDiskLoss.AzureDiskLoss(clients)
194+
azureDiskLoss.AzureDiskLoss(ctx, clients)
194195
case "gcp-vm-disk-loss":
195-
gcpVMDiskLoss.VMDiskLoss(clients)
196+
gcpVMDiskLoss.VMDiskLoss(ctx, clients)
196197
case "pod-fio-stress":
197-
podFioStress.PodFioStress(clients)
198+
podFioStress.PodFioStress(ctx, clients)
198199
case "gcp-vm-instance-stop":
199-
gcpVMInstanceStop.VMInstanceStop(clients)
200+
gcpVMInstanceStop.VMInstanceStop(ctx, clients)
200201
case "redfish-node-restart":
201-
redfishNodeRestart.NodeRestart(clients)
202+
redfishNodeRestart.NodeRestart(ctx, clients)
202203
case "gcp-vm-instance-stop-by-label":
203-
gcpVMInstanceStopByLabel.GCPVMInstanceStopByLabel(clients)
204+
gcpVMInstanceStopByLabel.GCPVMInstanceStopByLabel(ctx, clients)
204205
case "gcp-vm-disk-loss-by-label":
205-
gcpVMDiskLossByLabel.GCPVMDiskLossByLabel(clients)
206+
gcpVMDiskLossByLabel.GCPVMDiskLossByLabel(ctx, clients)
206207
case "spring-boot-cpu-stress", "spring-boot-memory-stress", "spring-boot-exceptions", "spring-boot-app-kill", "spring-boot-faults", "spring-boot-latency":
207-
springBootFaults.Experiment(clients, *experimentName)
208+
springBootFaults.Experiment(ctx, clients, *experimentName)
208209
case "k6-loadgen":
209-
k6Loadgen.Experiment(clients)
210+
k6Loadgen.Experiment(ctx, clients)
210211
default:
211212
log.Errorf("Unsupported -name %v, please provide the correct value of -name args", *experimentName)
212213
return

bin/helper/helper.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525
"github.com/litmuschaos/litmus-go/pkg/log"
2626
"github.com/litmuschaos/litmus-go/pkg/telemetry"
2727
"github.com/sirupsen/logrus"
28+
"go.opentelemetry.io/otel"
2829
)
2930

3031
func init() {
@@ -50,9 +51,9 @@ func main() {
5051
ctx = telemetry.GetTraceParentContext()
5152
}
5253

53-
clients := cli.ClientSets{Context: ctx}
54+
clients := cli.ClientSets{}
5455

55-
span := telemetry.StartTracing(clients, "ExecuteExperimentHelper")
56+
ctx, span := otel.Tracer(telemetry.TracerName).Start(ctx, "ExecuteExperimentHelper")
5657
defer span.End()
5758

5859
// parse the helper name

chaoslib/litmus/aws-ssm-chaos/lib/ssm-chaos.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
package lib
22

33
import (
4+
"context"
45
"os"
56
"strings"
67
"time"
78

89
experimentTypes "github.com/litmuschaos/litmus-go/pkg/aws-ssm/aws-ssm-chaos/types"
9-
clients "github.com/litmuschaos/litmus-go/pkg/clients"
10+
"github.com/litmuschaos/litmus-go/pkg/clients"
1011
"github.com/litmuschaos/litmus-go/pkg/cloud/aws/ssm"
1112
"github.com/litmuschaos/litmus-go/pkg/events"
1213
"github.com/litmuschaos/litmus-go/pkg/log"
@@ -17,7 +18,7 @@ import (
1718
)
1819

1920
// InjectChaosInSerialMode will inject the aws ssm chaos in serial mode that is one after other
20-
func InjectChaosInSerialMode(experimentsDetails *experimentTypes.ExperimentDetails, instanceIDList []string, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails, inject chan os.Signal) error {
21+
func InjectChaosInSerialMode(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, instanceIDList []string, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails, inject chan os.Signal) error {
2122

2223
select {
2324
case <-inject:
@@ -60,7 +61,7 @@ func InjectChaosInSerialMode(experimentsDetails *experimentTypes.ExperimentDetai
6061

6162
// run the probes during chaos
6263
if len(resultDetails.ProbeDetails) != 0 && i == 0 {
63-
if err = probe.RunProbes(chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
64+
if err = probe.RunProbes(ctx, chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
6465
return stacktrace.Propagate(err, "failed to run probes")
6566
}
6667
}
@@ -85,7 +86,7 @@ func InjectChaosInSerialMode(experimentsDetails *experimentTypes.ExperimentDetai
8586
}
8687

8788
// InjectChaosInParallelMode will inject the aws ssm chaos in parallel mode that is all at once
88-
func InjectChaosInParallelMode(experimentsDetails *experimentTypes.ExperimentDetails, instanceIDList []string, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails, inject chan os.Signal) error {
89+
func InjectChaosInParallelMode(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, instanceIDList []string, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails, inject chan os.Signal) error {
8990

9091
select {
9192
case <-inject:
@@ -125,7 +126,7 @@ func InjectChaosInParallelMode(experimentsDetails *experimentTypes.ExperimentDet
125126

126127
// run the probes during chaos
127128
if len(resultDetails.ProbeDetails) != 0 {
128-
if err = probe.RunProbes(chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
129+
if err = probe.RunProbes(ctx, chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
129130
return stacktrace.Propagate(err, "failed to run probes")
130131
}
131132
}

chaoslib/litmus/aws-ssm-chaos/lib/ssm/aws-ssm-chaos-by-id.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package ssm
22

33
import (
4+
"context"
45
"fmt"
56
"os"
67
"os/signal"
@@ -17,6 +18,7 @@ import (
1718
"github.com/litmuschaos/litmus-go/pkg/types"
1819
"github.com/litmuschaos/litmus-go/pkg/utils/common"
1920
"github.com/palantir/stacktrace"
21+
"go.opentelemetry.io/otel"
2022
)
2123

2224
var (
@@ -25,8 +27,8 @@ var (
2527
)
2628

2729
// PrepareAWSSSMChaosByID contains the prepration and injection steps for the experiment
28-
func PrepareAWSSSMChaosByID(experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
29-
span := telemetry.StartTracing(clients, "InjectAWSSSMChaosByIDChaos")
30+
func PrepareAWSSSMChaosByID(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
31+
ctx, span := otel.Tracer(telemetry.TracerName).Start(ctx, "InjectAWSChaosByIDChaos")
3032
defer span.End()
3133

3234
// inject channel is used to transmit signal notifications.
@@ -63,11 +65,11 @@ func PrepareAWSSSMChaosByID(experimentsDetails *experimentTypes.ExperimentDetail
6365

6466
switch strings.ToLower(experimentsDetails.Sequence) {
6567
case "serial":
66-
if err = lib.InjectChaosInSerialMode(experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
68+
if err = lib.InjectChaosInSerialMode(ctx, experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
6769
return stacktrace.Propagate(err, "could not run chaos in serial mode")
6870
}
6971
case "parallel":
70-
if err = lib.InjectChaosInParallelMode(experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
72+
if err = lib.InjectChaosInParallelMode(ctx, experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
7173
return stacktrace.Propagate(err, "could not run chaos in parallel mode")
7274
}
7375
default:

chaoslib/litmus/aws-ssm-chaos/lib/ssm/aws-ssm-chaos-by-tag.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package ssm
22

33
import (
4+
"context"
45
"fmt"
56
"os"
67
"os/signal"
@@ -17,11 +18,12 @@ import (
1718
"github.com/litmuschaos/litmus-go/pkg/types"
1819
"github.com/litmuschaos/litmus-go/pkg/utils/common"
1920
"github.com/palantir/stacktrace"
21+
"go.opentelemetry.io/otel"
2022
)
2123

2224
// PrepareAWSSSMChaosByTag contains the prepration and injection steps for the experiment
23-
func PrepareAWSSSMChaosByTag(experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
24-
span := telemetry.StartTracing(clients, "InjectAWSSSMChaosByTagChaos")
25+
func PrepareAWSSSMChaosByTag(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
26+
ctx, span := otel.Tracer(telemetry.TracerName).Start(ctx, "InjectAWSSSMChaosByTagChaos")
2527
defer span.End()
2628

2729
// inject channel is used to transmit signal notifications.
@@ -58,11 +60,11 @@ func PrepareAWSSSMChaosByTag(experimentsDetails *experimentTypes.ExperimentDetai
5860

5961
switch strings.ToLower(experimentsDetails.Sequence) {
6062
case "serial":
61-
if err = lib.InjectChaosInSerialMode(experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
63+
if err = lib.InjectChaosInSerialMode(ctx, experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
6264
return stacktrace.Propagate(err, "could not run chaos in serial mode")
6365
}
6466
case "parallel":
65-
if err = lib.InjectChaosInParallelMode(experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
67+
if err = lib.InjectChaosInParallelMode(ctx, experimentsDetails, instanceIDList, clients, resultDetails, eventsDetails, chaosDetails, inject); err != nil {
6668
return stacktrace.Propagate(err, "could not run chaos in parallel mode")
6769
}
6870
default:

chaoslib/litmus/azure-disk-loss/lib/azure-disk-loss.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package lib
22

33
import (
4+
"context"
45
"fmt"
56
"os"
67
"os/signal"
@@ -22,6 +23,7 @@ import (
2223
"github.com/litmuschaos/litmus-go/pkg/utils/common"
2324
"github.com/litmuschaos/litmus-go/pkg/utils/retry"
2425
"github.com/palantir/stacktrace"
26+
"go.opentelemetry.io/otel"
2527
)
2628

2729
var (
@@ -30,8 +32,8 @@ var (
3032
)
3133

3234
// PrepareChaos contains the prepration and injection steps for the experiment
33-
func PrepareChaos(experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
34-
span := telemetry.StartTracing(clients, "InjectAzureDiskLossChaos")
35+
func PrepareChaos(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
36+
ctx, span := otel.Tracer(telemetry.TracerName).Start(ctx, "InjectAzureDiskLossChaos")
3537
defer span.End()
3638

3739
// inject channel is used to transmit signal notifications.
@@ -82,11 +84,11 @@ func PrepareChaos(experimentsDetails *experimentTypes.ExperimentDetails, clients
8284

8385
switch strings.ToLower(experimentsDetails.Sequence) {
8486
case "serial":
85-
if err = injectChaosInSerialMode(experimentsDetails, instanceNamesWithDiskNames, attachedDisksWithInstance, clients, resultDetails, eventsDetails, chaosDetails); err != nil {
87+
if err = injectChaosInSerialMode(ctx, experimentsDetails, instanceNamesWithDiskNames, attachedDisksWithInstance, clients, resultDetails, eventsDetails, chaosDetails); err != nil {
8688
return stacktrace.Propagate(err, "could not run chaos in serial mode")
8789
}
8890
case "parallel":
89-
if err = injectChaosInParallelMode(experimentsDetails, instanceNamesWithDiskNames, attachedDisksWithInstance, clients, resultDetails, eventsDetails, chaosDetails); err != nil {
91+
if err = injectChaosInParallelMode(ctx, experimentsDetails, instanceNamesWithDiskNames, attachedDisksWithInstance, clients, resultDetails, eventsDetails, chaosDetails); err != nil {
9092
return stacktrace.Propagate(err, "could not run chaos in parallel mode")
9193
}
9294
default:
@@ -103,7 +105,7 @@ func PrepareChaos(experimentsDetails *experimentTypes.ExperimentDetails, clients
103105
}
104106

105107
// injectChaosInParallelMode will inject the Azure disk loss chaos in parallel mode that is all at once
106-
func injectChaosInParallelMode(experimentsDetails *experimentTypes.ExperimentDetails, instanceNamesWithDiskNames map[string][]string, attachedDisksWithInstance map[string]*[]compute.DataDisk, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
108+
func injectChaosInParallelMode(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, instanceNamesWithDiskNames map[string][]string, attachedDisksWithInstance map[string]*[]compute.DataDisk, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
107109

108110
//ChaosStartTimeStamp contains the start timestamp, when the chaos injection begin
109111
ChaosStartTimeStamp := time.Now()
@@ -142,7 +144,7 @@ func injectChaosInParallelMode(experimentsDetails *experimentTypes.ExperimentDet
142144
}
143145
// run the probes during chaos
144146
if len(resultDetails.ProbeDetails) != 0 {
145-
if err := probe.RunProbes(chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
147+
if err := probe.RunProbes(ctx, chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
146148
return stacktrace.Propagate(err, "failed to run probes")
147149
}
148150
}
@@ -181,7 +183,7 @@ func injectChaosInParallelMode(experimentsDetails *experimentTypes.ExperimentDet
181183
}
182184

183185
// injectChaosInSerialMode will inject the Azure disk loss chaos in serial mode that is one after other
184-
func injectChaosInSerialMode(experimentsDetails *experimentTypes.ExperimentDetails, instanceNamesWithDiskNames map[string][]string, attachedDisksWithInstance map[string]*[]compute.DataDisk, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
186+
func injectChaosInSerialMode(ctx context.Context, experimentsDetails *experimentTypes.ExperimentDetails, instanceNamesWithDiskNames map[string][]string, attachedDisksWithInstance map[string]*[]compute.DataDisk, clients clients.ClientSets, resultDetails *types.ResultDetails, eventsDetails *types.EventDetails, chaosDetails *types.ChaosDetails) error {
185187

186188
//ChaosStartTimeStamp contains the start timestamp, when the chaos injection begin
187189
ChaosStartTimeStamp := time.Now()
@@ -217,7 +219,7 @@ func injectChaosInSerialMode(experimentsDetails *experimentTypes.ExperimentDetai
217219
// run the probes during chaos
218220
// the OnChaos probes execution will start in the first iteration and keep running for the entire chaos duration
219221
if len(resultDetails.ProbeDetails) != 0 && i == 0 {
220-
if err := probe.RunProbes(chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
222+
if err := probe.RunProbes(ctx, chaosDetails, clients, resultDetails, "DuringChaos", eventsDetails); err != nil {
221223
return stacktrace.Propagate(err, "failed to run probes")
222224
}
223225
}

0 commit comments

Comments
 (0)