in dp_check/dp_check.go [626:648]
func openAdsStream(ctx context.Context) (adsStream, error) {
// use TLS credential
var roots *x509.CertPool
tlsCreds := credentials.NewTLS(&tls.Config{RootCAs: roots})
tlsCreds.OverrideServerName(*trafficDirectorHostname)
opts := []grpc.DialOption{
grpc.WithTransportCredentials(tlsCreds),
grpc.WithPerRPCCredentials(oauth.NewComputeEngine()),
grpc.WithBlock(),
}
lbAddr := net.JoinHostPort(*trafficDirectorHostname, trafficDirectorPort)
infoLog.Printf("Attempt to dial |%v| using TLS and we're authenticating as the VM's default service account by fetching a token from the metadata server", lbAddr)
conn, err := grpc.DialContext(ctx, lbAddr, opts...)
if err != nil {
return nil, fmt.Errorf("failed to create grpc connection to Traffic Director: %v", err)
}
lbClient := v3adsgrpc.NewAggregatedDiscoveryServiceClient(conn)
stream, err := lbClient.StreamAggregatedResources(ctx)
if err != nil {
return nil, fmt.Errorf("failed to open the stream to Traffic Director: %v", err)
}
return stream, nil
}