...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package recover
17
18 import (
19 "context"
20
21 "github.com/pkg/errors"
22
23 ctrlclient "github.com/chaos-mesh/chaos-mesh/pkg/ctrl/client"
24 )
25
26 type httpRecoverer struct {
27 tproxyCleaner Recoverer
28 }
29
30 func HTTPRecoverer(client *ctrlclient.CtrlClient) Recoverer {
31 return &httpRecoverer{
32 tproxyCleaner: newCleanProcessRecoverer(client, "tproxy"),
33 }
34 }
35
36 func (r *httpRecoverer) Recover(ctx context.Context, pod *PartialPod) error {
37
38 err := r.tproxyCleaner.Recover(ctx, pod)
39 if err != nil {
40 return errors.Wrap(err, "clean chaos-tproxy processes")
41 }
42 return nil
43 }
44