7b7df2c6af
This PR starts to implement the refactoring described at https://github.com/ooni/probe/issues/1951. I originally wrote more patches than the ones in this PR, but overall they were not readable. Since I want to squash and merge, here's a reasonable subset of the original patches that will still be readable and understandable in the future.
20 lines
565 B
Go
20 lines
565 B
Go
package probeservices
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
)
|
|
|
|
// FetchPsiphonConfig fetches psiphon config from authenticated OONI orchestra.
|
|
func (c Client) FetchPsiphonConfig(ctx context.Context) ([]byte, error) {
|
|
_, auth, err := c.GetCredsAndAuth()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
// Note: the following code is very bad: it copies the original
|
|
// API client and then overrides one of its fields. Bleah...
|
|
client := c.APIClient
|
|
client.Authorization = fmt.Sprintf("Bearer %s", auth.Token)
|
|
return client.FetchResource(ctx, "/api/v1/test-list/psiphon-config")
|
|
}
|