Skip to content

Commit 6c1e0b2

Browse files
committed
add timeout to context
1 parent 4baf12b commit 6c1e0b2

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

azure-iptables-monitor/iptables_monitor.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,10 @@ var (
3838
terminateOnSuccess = flag.Bool("terminateOnSuccess", false, "Whether to terminate the program when no user iptables rules found")
3939
)
4040

41-
const label = "kubernetes.azure.com/user-iptables-rules"
41+
const (
42+
label = "kubernetes.azure.com/user-iptables-rules"
43+
requestTimeout = 5 * time.Second
44+
)
4245

4346
type OSFileLineReader struct{}
4447

@@ -111,7 +114,9 @@ func patchLabel(clientset DynamicClient, labelValue bool, nodeName string) error
111114
}
112115
}`, label, labelValue))
113116

114-
err := clientset.PatchResource(context.TODO(), gvr, nodeName, types.MergePatchType, patch)
117+
ctx, cancel := context.WithTimeout(context.Background(), requestTimeout)
118+
defer cancel()
119+
err := clientset.PatchResource(ctx, gvr, nodeName, types.MergePatchType, patch)
115120
if err != nil {
116121
return fmt.Errorf("failed to patch %s with label %s=%v: %w", nodeName, label, labelValue, err)
117122
}
@@ -120,7 +125,9 @@ func patchLabel(clientset DynamicClient, labelValue bool, nodeName string) error
120125

121126
// createNodeEvent creates a Kubernetes event for the specified node
122127
func createNodeEvent(clientset KubeClient, nodeName, reason, message, eventType string) error {
123-
node, err := clientset.GetNode(context.TODO(), nodeName)
128+
ctx, cancel := context.WithTimeout(context.Background(), requestTimeout)
129+
defer cancel()
130+
node, err := clientset.GetNode(ctx, nodeName)
124131
if err != nil {
125132
return fmt.Errorf("failed to get node UID for %s: %w", nodeName, err)
126133
}
@@ -148,7 +155,7 @@ func createNodeEvent(clientset KubeClient, nodeName, reason, message, eventType
148155
Component: "azure-iptables-monitor",
149156
},
150157
}
151-
_, err = clientset.CreateEvent(context.TODO(), "default", event)
158+
_, err = clientset.CreateEvent(ctx, "default", event)
152159
if err != nil {
153160
return fmt.Errorf("failed to create event for node %s: %w", nodeName, err)
154161
}

0 commit comments

Comments
 (0)