cli: websteps: fix DNSDo (#447)

This fixes an inattention bug in the websteps code.
This commit is contained in:
kelmenhorst 2021-08-20 16:09:21 +02:00 committed by GitHub
parent 394bf26313
commit a9014e7950
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 5 deletions

View File

@ -11,7 +11,7 @@ import (
// Control performs the control request and returns the response.
func Control(
ctx context.Context, sess model.ExperimentSession,
thAddr string, creq CtrlRequest) (out CtrlResponse, err error) {
thAddr string, resourcePath string, creq CtrlRequest) (out CtrlResponse, err error) {
clnt := httpx.Client{
BaseURL: thAddr,
HTTPClient: sess.DefaultHTTPClient(),
@ -19,7 +19,7 @@ func Control(
}
// make sure error is wrapped
err = errorsx.SafeErrWrapperBuilder{
Error: clnt.PostJSON(ctx, "/", creq, &out),
Error: clnt.PostJSON(ctx, resourcePath, creq, &out),
Operation: errorsx.TopLevelOperation,
}.MaybeBuild()
return

View File

@ -20,8 +20,8 @@ func DNSDo(ctx context.Context, config DNSConfig) ([]string, error) {
if resolver == nil {
childResolver, err := netx.NewDNSClient(netx.Config{Logger: log.Log}, "doh://google")
runtimex.PanicOnError(err, "NewDNSClient failed")
var resolver netxlite.Resolver = childResolver
resolver = childResolver
resolver = &netxlite.ResolverIDNA{Resolver: resolver}
}
return config.Resolver.LookupHost(ctx, config.Domain)
return resolver.LookupHost(ctx, config.Domain)
}

View File

@ -110,6 +110,7 @@ func (m Measurer) Run(
addrs, err := DNSDo(ctx, DNSConfig{Domain: URL.Hostname()})
endpoints := makeEndpoints(addrs, URL)
// 3. Find the testhelper
// TODO(kelmenhorst,bassosimone): this is not used at the moment, but the hardcoded local address
testhelpers, _ := sess.GetTestHelpersByName("web-connectivity")
var testhelper *model.Service
for _, th := range testhelpers {
@ -125,7 +126,8 @@ func (m Measurer) Run(
"backend": testhelper,
}
// 4. Query the testhelper
resp, err := Control(ctx, sess, testhelper.Address, CtrlRequest{
// TODO(kelmenhorst,bassosimone): remove hardcoded version here, this is only for testing purposes
resp, err := Control(ctx, sess, "http://localhost:8080", "/api/unstable/websteps", CtrlRequest{
URL: URL.String(),
Headers: map[string][]string{
"Accept": {httpheader.Accept()},