mirror of https://github.com/grpc/grpc-go.git
				
				
				
			xds: Move bootstrap config to internal/xds (#7182)
This commit is contained in:
		
							parent
							
								
									f167ad675d
								
							
						
					
					
						commit
						9199290ff8
					
				|  | @ -28,18 +28,15 @@ import ( | |||
| 	"os" | ||||
| 	"strings" | ||||
| 
 | ||||
| 	v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" | ||||
| 	"google.golang.org/grpc" | ||||
| 	"google.golang.org/grpc/credentials" | ||||
| 	"google.golang.org/grpc/credentials/google" | ||||
| 	"google.golang.org/grpc/credentials/insecure" | ||||
| 	"google.golang.org/grpc/credentials/tls/certprovider" | ||||
| 	"google.golang.org/grpc/internal" | ||||
| 	"google.golang.org/grpc/internal/envconfig" | ||||
| 	"google.golang.org/grpc/internal/pretty" | ||||
| 	"google.golang.org/grpc/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/tlscreds" | ||||
| 	"google.golang.org/protobuf/encoding/protojson" | ||||
| 
 | ||||
| 	v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" | ||||
| ) | ||||
| 
 | ||||
| const ( | ||||
|  | @ -58,51 +55,9 @@ const ( | |||
| 	clientFeatureResourceWrapper    = "xds.config.resource-in-sotw" | ||||
| ) | ||||
| 
 | ||||
| func init() { | ||||
| 	bootstrap.RegisterCredentials(&insecureCredsBuilder{}) | ||||
| 	bootstrap.RegisterCredentials(&googleDefaultCredsBuilder{}) | ||||
| 	bootstrap.RegisterCredentials(&tlsCredsBuilder{}) | ||||
| } | ||||
| 
 | ||||
| // For overriding in unit tests.
 | ||||
| var bootstrapFileReadFunc = os.ReadFile | ||||
| 
 | ||||
| // insecureCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/bootstrap` and encapsulates an insecure credential.
 | ||||
| type insecureCredsBuilder struct{} | ||||
| 
 | ||||
| func (i *insecureCredsBuilder) Build(json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return insecure.NewBundle(), func() {}, nil | ||||
| } | ||||
| 
 | ||||
| func (i *insecureCredsBuilder) Name() string { | ||||
| 	return "insecure" | ||||
| } | ||||
| 
 | ||||
| // tlsCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/bootstrap` and encapsulates a TLS credential.
 | ||||
| type tlsCredsBuilder struct{} | ||||
| 
 | ||||
| func (t *tlsCredsBuilder) Build(config json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return tlscreds.NewBundle(config) | ||||
| } | ||||
| 
 | ||||
| func (t *tlsCredsBuilder) Name() string { | ||||
| 	return "tls" | ||||
| } | ||||
| 
 | ||||
| // googleDefaultCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/boostrap` and encapsulates a Google Default credential.
 | ||||
| type googleDefaultCredsBuilder struct{} | ||||
| 
 | ||||
| func (d *googleDefaultCredsBuilder) Build(json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return google.NewDefaultCredentials(), func() {}, nil | ||||
| } | ||||
| 
 | ||||
| func (d *googleDefaultCredsBuilder) Name() string { | ||||
| 	return "google_default" | ||||
| } | ||||
| 
 | ||||
| // ChannelCreds contains the credentials to be used while communicating with an
 | ||||
| // xDS server. It is also used to dedup servers with the same server URI.
 | ||||
| type ChannelCreds struct { | ||||
|  | @ -1018,43 +1018,3 @@ func TestDefaultBundles(t *testing.T) { | |||
| 		}) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func TestCredsBuilders(t *testing.T) { | ||||
| 	tests := []struct { | ||||
| 		typename string | ||||
| 		builder  bootstrap.Credentials | ||||
| 	}{ | ||||
| 		{"google_default", &googleDefaultCredsBuilder{}}, | ||||
| 		{"insecure", &insecureCredsBuilder{}}, | ||||
| 		{"tls", &tlsCredsBuilder{}}, | ||||
| 	} | ||||
| 
 | ||||
| 	for _, test := range tests { | ||||
| 		t.Run(test.typename, func(t *testing.T) { | ||||
| 			if got, want := test.builder.Name(), test.typename; got != want { | ||||
| 				t.Errorf("%T.Name = %v, want %v", test.builder, got, want) | ||||
| 			} | ||||
| 
 | ||||
| 			_, stop, err := test.builder.Build(nil) | ||||
| 			if err != nil { | ||||
| 				t.Fatalf("%T.Build failed: %v", test.builder, err) | ||||
| 			} | ||||
| 			stop() | ||||
| 		}) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func TestTlsCredsBuilder(t *testing.T) { | ||||
| 	tls := &tlsCredsBuilder{} | ||||
| 	_, stop, err := tls.Build(json.RawMessage(`{}`)) | ||||
| 	if err != nil { | ||||
| 		t.Fatalf("tls.Build() failed with error %s when expected to succeed", err) | ||||
| 	} | ||||
| 	stop() | ||||
| 
 | ||||
| 	if _, stop, err := tls.Build(json.RawMessage(`{"ca_certificate_file":"/ca_certificates.pem","refresh_interval": "asdf"}`)); err == nil { | ||||
| 		t.Errorf("tls.Build() succeeded with an invalid refresh interval, when expected to fail") | ||||
| 		stop() | ||||
| 	} | ||||
| 	// package internal/xdsclient/tlscreds has tests for config validity.
 | ||||
| } | ||||
|  | @ -33,11 +33,11 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpctest" | ||||
| 	"google.golang.org/grpc/internal/stubserver" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap/tlscreds" | ||||
| 	testgrpc "google.golang.org/grpc/interop/grpc_testing" | ||||
| 	testpb "google.golang.org/grpc/interop/grpc_testing" | ||||
| 	"google.golang.org/grpc/status" | ||||
| 	"google.golang.org/grpc/testdata" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/tlscreds" | ||||
| ) | ||||
| 
 | ||||
| const defaultTestTimeout = 5 * time.Second | ||||
|  | @ -61,3 +61,42 @@ func TestRegisterNew(t *testing.T) { | |||
| 		t.Errorf("Build config = %v, want %v", got, want) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func TestCredsBuilders(t *testing.T) { | ||||
| 	tests := []struct { | ||||
| 		typename string | ||||
| 		builder  Credentials | ||||
| 	}{ | ||||
| 		{"google_default", &googleDefaultCredsBuilder{}}, | ||||
| 		{"insecure", &insecureCredsBuilder{}}, | ||||
| 		{"tls", &tlsCredsBuilder{}}, | ||||
| 	} | ||||
| 
 | ||||
| 	for _, test := range tests { | ||||
| 		t.Run(test.typename, func(t *testing.T) { | ||||
| 			if got, want := test.builder.Name(), test.typename; got != want { | ||||
| 				t.Errorf("%T.Name = %v, want %v", test.builder, got, want) | ||||
| 			} | ||||
| 
 | ||||
| 			_, stop, err := test.builder.Build(nil) | ||||
| 			if err != nil { | ||||
| 				t.Fatalf("%T.Build failed: %v", test.builder, err) | ||||
| 			} | ||||
| 			stop() | ||||
| 		}) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func TestTlsCredsBuilder(t *testing.T) { | ||||
| 	tls := &tlsCredsBuilder{} | ||||
| 	_, stop, err := tls.Build(json.RawMessage(`{}`)) | ||||
| 	if err != nil { | ||||
| 		t.Fatalf("tls.Build() failed with error %s when expected to succeed", err) | ||||
| 	} | ||||
| 	stop() | ||||
| 
 | ||||
| 	if _, stop, err := tls.Build(json.RawMessage(`{"ca_certificate_file":"/ca_certificates.pem","refresh_interval": "asdf"}`)); err == nil { | ||||
| 		t.Errorf("tls.Build() succeeded with an invalid refresh interval, when expected to fail") | ||||
| 		stop() | ||||
| 	} | ||||
| } | ||||
|  |  | |||
|  | @ -0,0 +1,70 @@ | |||
| /* | ||||
|  * | ||||
|  * Copyright 2024 gRPC authors. | ||||
|  * | ||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|  * you may not use this file except in compliance with the License. | ||||
|  * You may obtain a copy of the License at | ||||
|  * | ||||
|  *     http://www.apache.org/licenses/LICENSE-2.0
 | ||||
|  * | ||||
|  * Unless required by applicable law or agreed to in writing, software | ||||
|  * distributed under the License is distributed on an "AS IS" BASIS, | ||||
|  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
|  * See the License for the specific language governing permissions and | ||||
|  * limitations under the License. | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| package bootstrap | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/json" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/credentials" | ||||
| 	"google.golang.org/grpc/credentials/google" | ||||
| 	"google.golang.org/grpc/credentials/insecure" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap/tlscreds" | ||||
| ) | ||||
| 
 | ||||
| func init() { | ||||
| 	RegisterCredentials(&insecureCredsBuilder{}) | ||||
| 	RegisterCredentials(&googleDefaultCredsBuilder{}) | ||||
| 	RegisterCredentials(&tlsCredsBuilder{}) | ||||
| } | ||||
| 
 | ||||
| // insecureCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/bootstrap` and encapsulates an insecure credential.
 | ||||
| type insecureCredsBuilder struct{} | ||||
| 
 | ||||
| func (i *insecureCredsBuilder) Build(json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return insecure.NewBundle(), func() {}, nil | ||||
| } | ||||
| 
 | ||||
| func (i *insecureCredsBuilder) Name() string { | ||||
| 	return "insecure" | ||||
| } | ||||
| 
 | ||||
| // tlsCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/bootstrap` and encapsulates a TLS credential.
 | ||||
| type tlsCredsBuilder struct{} | ||||
| 
 | ||||
| func (t *tlsCredsBuilder) Build(config json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return tlscreds.NewBundle(config) | ||||
| } | ||||
| 
 | ||||
| func (t *tlsCredsBuilder) Name() string { | ||||
| 	return "tls" | ||||
| } | ||||
| 
 | ||||
| // googleDefaultCredsBuilder implements the `Credentials` interface defined in
 | ||||
| // package `xds/boostrap` and encapsulates a Google Default credential.
 | ||||
| type googleDefaultCredsBuilder struct{} | ||||
| 
 | ||||
| func (d *googleDefaultCredsBuilder) Build(json.RawMessage) (credentials.Bundle, func(), error) { | ||||
| 	return google.NewDefaultCredentials(), func() {}, nil | ||||
| } | ||||
| 
 | ||||
| func (d *googleDefaultCredsBuilder) Name() string { | ||||
| 	return "google_default" | ||||
| } | ||||
|  | @ -35,9 +35,9 @@ import ( | |||
| 	"google.golang.org/grpc/internal/googlecloud" | ||||
| 	internalgrpclog "google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/internal/grpcrand" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 
 | ||||
| 	_ "google.golang.org/grpc/xds" // To register xds resolvers and balancers.
 | ||||
| ) | ||||
|  |  | |||
|  | @ -30,9 +30,9 @@ import ( | |||
| 	"google.golang.org/grpc" | ||||
| 	"google.golang.org/grpc/credentials/insecure" | ||||
| 	"google.golang.org/grpc/internal/envconfig" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/protobuf/testing/protocmp" | ||||
| 	"google.golang.org/protobuf/types/known/structpb" | ||||
| 
 | ||||
|  |  | |||
|  | @ -37,13 +37,13 @@ import ( | |||
| 	"google.golang.org/grpc/internal/stubserver" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/resolver/manual" | ||||
| 	"google.golang.org/grpc/serviceconfig" | ||||
| 	"google.golang.org/grpc/status" | ||||
| 	"google.golang.org/grpc/xds/internal/balancer/clusterresolver" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/types/known/durationpb" | ||||
|  |  | |||
|  | @ -37,11 +37,11 @@ import ( | |||
| 	internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/xds" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	xdsinternal "google.golang.org/grpc/xds/internal" | ||||
| 	"google.golang.org/grpc/xds/internal/testutils/fakeclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| 
 | ||||
| 	v3orcapb "github.com/cncf/xds/go/xds/data/orca/v3" | ||||
|  |  | |||
|  | @ -37,12 +37,12 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/internal/pretty" | ||||
| 	"google.golang.org/grpc/internal/xds" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/serviceconfig" | ||||
| 	xdsinternal "google.golang.org/grpc/xds/internal" | ||||
| 	"google.golang.org/grpc/xds/internal/balancer/loadstore" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -22,8 +22,8 @@ import ( | |||
| 	"encoding/json" | ||||
| 
 | ||||
| 	internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/serviceconfig" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| // DropConfig contains the category, and drop ratio.
 | ||||
|  |  | |||
|  | @ -27,7 +27,7 @@ import ( | |||
| 	_ "google.golang.org/grpc/balancer/roundrobin" | ||||
| 	_ "google.golang.org/grpc/balancer/weightedtarget" | ||||
| 	internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| const ( | ||||
|  |  | |||
|  | @ -23,9 +23,9 @@ import ( | |||
| 	"fmt" | ||||
| 
 | ||||
| 	internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/serviceconfig" | ||||
| 	"google.golang.org/grpc/xds/internal/balancer/outlierdetection" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| // DiscoveryMechanismType is the type of discovery mechanism.
 | ||||
|  |  | |||
|  | @ -28,9 +28,9 @@ import ( | |||
| 	"google.golang.org/grpc/balancer" | ||||
| 	"google.golang.org/grpc/balancer/roundrobin" | ||||
| 	iserviceconfig "google.golang.org/grpc/internal/serviceconfig" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/balancer/outlierdetection" | ||||
| 	"google.golang.org/grpc/xds/internal/balancer/ringhash" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| func TestDiscoveryMechanismTypeMarshalJSON(t *testing.T) { | ||||
|  |  | |||
|  | @ -35,6 +35,7 @@ import ( | |||
| 	"google.golang.org/grpc/internal/stubserver" | ||||
| 	"google.golang.org/grpc/internal/testutils/pickfirst" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/peer" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/resolver/manual" | ||||
|  | @ -42,7 +43,6 @@ import ( | |||
| 	"google.golang.org/grpc/status" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/types/known/wrapperspb" | ||||
| 
 | ||||
|  |  | |||
|  | @ -35,6 +35,7 @@ import ( | |||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	rrutil "google.golang.org/grpc/internal/testutils/roundrobin" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/peer" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/resolver/manual" | ||||
|  | @ -42,7 +43,6 @@ import ( | |||
| 	"google.golang.org/grpc/status" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/types/known/wrapperspb" | ||||
| 
 | ||||
|  |  | |||
|  | @ -31,10 +31,10 @@ import ( | |||
| 	"google.golang.org/grpc/internal/pretty" | ||||
| 	iresolver "google.golang.org/grpc/internal/resolver" | ||||
| 	"google.golang.org/grpc/internal/wrr" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	rinternal "google.golang.org/grpc/xds/internal/resolver/internal" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -36,6 +36,7 @@ import ( | |||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	xdsbootstrap "google.golang.org/grpc/internal/testutils/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/metadata" | ||||
| 	"google.golang.org/grpc/resolver" | ||||
| 	"google.golang.org/grpc/serviceconfig" | ||||
|  | @ -47,7 +48,6 @@ import ( | |||
| 	rinternal "google.golang.org/grpc/xds/internal/resolver/internal" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/proto" | ||||
| 	"google.golang.org/protobuf/types/known/anypb" | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ import ( | |||
| 	internalbackoff "google.golang.org/grpc/internal/backoff" | ||||
| 	internalgrpclog "google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -23,8 +23,8 @@ import ( | |||
| 	"context" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -22,7 +22,7 @@ import ( | |||
| 	"fmt" | ||||
| 	"testing" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| ) | ||||
|  |  | |||
|  | @ -27,7 +27,7 @@ import ( | |||
| 
 | ||||
| 	"google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/transport" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
|  |  | |||
|  | @ -30,8 +30,8 @@ import ( | |||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/xds/internal" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 
 | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ | |||
| package xdsclient | ||||
| 
 | ||||
| import ( | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ import ( | |||
| 	"google.golang.org/grpc/internal" | ||||
| 	"google.golang.org/grpc/internal/cache" | ||||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -25,7 +25,7 @@ import ( | |||
| 	"google.golang.org/grpc/internal/cache" | ||||
| 	"google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| var _ XDSClient = &clientImpl{} | ||||
|  |  | |||
|  | @ -22,7 +22,7 @@ import ( | |||
| 	"fmt" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -18,7 +18,7 @@ | |||
| package xdsclient | ||||
| 
 | ||||
| import ( | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -26,9 +26,9 @@ import ( | |||
| 	"github.com/google/go-cmp/cmp" | ||||
| 	"google.golang.org/grpc/codes" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/fakeserver" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/status" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/protobuf/testing/protocmp" | ||||
| 
 | ||||
| 	v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" | ||||
|  |  | |||
|  | @ -26,7 +26,7 @@ import ( | |||
| 
 | ||||
| 	"google.golang.org/grpc/internal/envconfig" | ||||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| ) | ||||
| 
 | ||||
| const ( | ||||
|  |  | |||
|  | @ -26,9 +26,9 @@ import ( | |||
| 	"github.com/google/uuid" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 
 | ||||
| 	v3clusterpb "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3" | ||||
|  |  | |||
|  | @ -31,9 +31,9 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 
 | ||||
| 	v3clusterpb "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3" | ||||
|  |  | |||
|  | @ -31,10 +31,10 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/protobuf/types/known/wrapperspb" | ||||
| 
 | ||||
|  |  | |||
|  | @ -33,9 +33,9 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpctest" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 
 | ||||
| 	v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" | ||||
|  |  | |||
|  | @ -31,9 +31,9 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/protobuf/types/known/wrapperspb" | ||||
| 
 | ||||
|  |  | |||
|  | @ -31,10 +31,10 @@ import ( | |||
| 	"google.golang.org/grpc/internal/testutils" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/e2e" | ||||
| 	"google.golang.org/grpc/internal/testutils/xds/fakeserver" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal" | ||||
| 	xdstestutils "google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/protobuf/proto" | ||||
| 	"google.golang.org/protobuf/testing/protocmp" | ||||
|  |  | |||
|  | @ -33,8 +33,8 @@ import ( | |||
| 	"google.golang.org/grpc/internal/buffer" | ||||
| 	"google.golang.org/grpc/internal/grpclog" | ||||
| 	"google.golang.org/grpc/internal/pretty" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/keepalive" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/load" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| 	"google.golang.org/protobuf/types/known/anypb" | ||||
|  |  | |||
|  | @ -21,8 +21,8 @@ import ( | |||
| 	"strings" | ||||
| 	"testing" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/testutils" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/transport" | ||||
| 
 | ||||
| 	v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ import ( | |||
| 	"fmt" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal/pretty" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/proto" | ||||
| 	"google.golang.org/protobuf/types/known/anypb" | ||||
|  |  | |||
|  | @ -28,8 +28,8 @@ import ( | |||
| 	"fmt" | ||||
| 
 | ||||
| 	"google.golang.org/grpc/internal" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	xdsinternal "google.golang.org/grpc/xds/internal" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" | ||||
| 	"google.golang.org/protobuf/types/known/anypb" | ||||
| ) | ||||
|  |  | |||
|  | @ -31,11 +31,11 @@ import ( | |||
| 	"google.golang.org/grpc/internal/grpcsync" | ||||
| 	iresolver "google.golang.org/grpc/internal/resolver" | ||||
| 	"google.golang.org/grpc/internal/transport" | ||||
| 	"google.golang.org/grpc/internal/xds/bootstrap" | ||||
| 	"google.golang.org/grpc/metadata" | ||||
| 	"google.golang.org/grpc/status" | ||||
| 	"google.golang.org/grpc/xds/internal/server" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/bootstrap" | ||||
| 	"google.golang.org/grpc/xds/internal/xdsclient/xdsresource" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue