MCPcopy Create free account
hub / github.com/SpectoLabs/hoverfly / SetMiddleware

Function SetMiddleware

hoverctl/wrapper/middleware.go:34–66  ·  view source on GitHub ↗
(target configuration.Target, binary, script, remote string)

Source from the content-addressed store, hash-verified

32}
33
34func SetMiddleware(target configuration.Target, binary, script, remote string) (v2.MiddlewareView, error) {
35 middlewareRequest := &v2.MiddlewareView{
36 Binary: binary,
37 Script: script,
38 Remote: remote,
39 }
40
41 marshalledMiddleware, err := json.Marshal(middlewareRequest)
42 if err != nil {
43 return v2.MiddlewareView{}, err
44 }
45
46 response, err := doRequest(target, "PUT", v2ApiMiddleware, string(marshalledMiddleware), nil)
47 if err != nil {
48 return v2.MiddlewareView{}, err
49 }
50
51 defer response.Body.Close()
52
53 err = handleResponseError(response, "Could not set middleware, it may have failed the test")
54 if err != nil {
55 return v2.MiddlewareView{}, err
56 }
57
58 var middlewareView v2.MiddlewareView
59
60 err = UnmarshalToInterface(response, &middlewareView)
61 if err != nil {
62 return v2.MiddlewareView{}, err
63 }
64
65 return middlewareView, nil
66}

Calls 3

handleResponseErrorFunction · 0.85
UnmarshalToInterfaceFunction · 0.85
doRequestFunction · 0.70