Lidi Zheng
f7d66b5846
Change to a non-workload-identity GKE cluster ( #4723 )
2021-08-31 13:42:43 -07:00
Doug Fawley
d074cae66b
github: fold security tests into 'tests'; update testing to 1.17-1.15 ( #4708 )
2021-08-26 11:21:36 -07:00
Easwar Swaminathan
6bd8e8cf30
multiple: remove support for Go 1.11 ( #4700 )
2021-08-24 14:24:34 -07:00
Easwar Swaminathan
46ab723bb2
multiple: remove appengine specific build constraints and code ( #4685 )
2021-08-24 12:30:13 -07:00
Easwar Swaminathan
45a623cbef
test: use non blocking dials in end2end_test ( #4687 )
2021-08-24 10:02:55 -07:00
Doug Fawley
8ab16ef276
balancer: add ExitIdle optional interface ( #4673 )
2021-08-18 15:04:35 -07:00
Lidi Zheng
88dc96b463
Copy the tag_and_push_docker_image method to grpc-go ( #4667 )
2021-08-11 14:33:44 -07:00
Lidi Zheng
c7c1e9e0ec
Update xDS client/server image per-branch tag after build ( #4661 )
2021-08-10 20:31:26 -07:00
Doug Fawley
997ce619eb
clientconn: do not automatically reconnect addrConns; go idle instead ( #4613 )
2021-08-10 13:22:34 -07:00
Zach Reyes
01bababd83
Added connection to transport context ( #4649 )
...
* Added connection to transport context
2021-08-09 23:15:57 -04:00
Lidi Zheng
00edd8c13a
Add xDS k8s url-map test Kokoro job ( #4614 )
2021-07-26 13:02:56 -07:00
John Howard
0103ea2d6c
client: improve GOAWAY debug messages ( #4587 )
2021-07-14 13:59:50 -07:00
James Protzman
ba41bbac22
transport: validate http 200 status for responses ( #4474 )
2021-07-14 10:54:58 -07:00
Zach Reyes
b9270c3a7f
client: add deadline for TransportCredentials handshaker ( #4559 )
...
* Add deadline on connection for TransportCredentials handshake
2021-06-23 16:36:24 -04:00
Sergii Tkachenko
50328cf800
buildscripts: add option to use xds-k8s test driver from a fork ( #4548 )
2021-06-21 12:11:57 -07:00
Easwar Swaminathan
2de42fcbbc
kokoro: Specify the correct path to the build config ( #4495 )
2021-05-26 15:35:27 -07:00
Easwar Swaminathan
bbb542c3d9
Kokoro build configs for PSM security interop tests ( #4481 )
2021-05-25 15:46:02 -07:00
Easwar Swaminathan
728364accf
server: return UNIMPLEMENTED on receipt of malformed method name ( #4464 )
2021-05-24 17:30:40 -07:00
Ehsan Afzali
a8e85e0d57
server: allow PreparedMsgs to work for server streams ( #3480 )
2021-05-21 15:54:24 -07:00
Doug Fawley
84d0920b59
transport: unblock read throttling when controlbuf exits ( #4447 )
2021-05-19 11:05:26 -07:00
Doug Fawley
62adda2ece
client: fix ForceCodec to set content-type header appropriately ( #4401 )
2021-05-11 17:05:16 -07:00
Doug Fawley
328b1d171a
transport: allow InTapHandle to return status errors ( #4365 )
2021-05-07 14:37:52 -07:00
Menghan Li
0ab423af82
test: fix flaky GoAwayThenClose ( #4394 )
...
In this test, we
1. make a streaming RPC on a connection
1. graceful stop it to send a GOAWAY
1. hard stop it, so the client will create a connection to another server
Before this fix, 2 and 3 can happen too soon, so the RPC in 1 would fail
and then transparent retry (because the stream is unprocessed by the
server in that case).
This retry attempt could pick the new connection, and then the RPC would
block until timeout.
After this streaming RPC fails, we make unary RPCs with the same
deadline (note: deadline not timeout) as the streaming RPC and expect
them to succeed. But they will also fail due to timeout.
The fix is to make a round-trip on the streaming RPC first, to make sure
it actually goes on the first connection.
2021-05-07 11:55:48 -07:00
Mikhail Mazurskiy
d2d6bdae07
server: add ForceServerCodec() to set a custom encoding.Codec on the server ( #4205 )
2021-05-06 09:40:54 -07:00
Lidi Zheng
d426aa5f2e
test: extend the xDS interop tests timeout to 360 mins ( #4380 )
2021-05-05 13:37:13 -07:00
apolcyn
9572fd6fae
client: include details about GOAWAYs in status messages ( #4316 )
2021-04-23 17:26:26 -07:00
Lidi Zheng
6f35bbbfb8
test: enable xDS CSDS test ( #4354 )
2021-04-21 17:27:51 -07:00
Zach Reyes
1c598a11a4
Move exponential backoff to DNS resolver from resolver.ClientConn ( #4270 )
2021-04-20 13:20:09 -04:00
lzhfromustc
41676e61b1
Fix goroutine leaks ( #4214 )
2021-04-19 09:49:37 -07:00
apolcyn
c229922995
client: propagate connection error causes to RPC statuses ( #4311 )
2021-04-13 13:06:05 -07:00
Aliaksandr Mianzhynski
d6abfb4598
cmd/protoc-gen-go-grpc: add protoc and protoc-gen-go-grpc versions to top comment ( #4313 )
2021-04-09 16:30:59 -07:00
Menghan Li
c7a203dcb5
xds/interop: move header/path matching to all ( #4325 )
2021-04-08 14:31:20 -07:00
ZhenLian
5730f8d113
Invoke Go Vet Check in Sub-modules ( #4302 )
...
* Invoke Go Vet Check in Sub-modules
2021-04-02 11:19:22 -07:00
Doug Fawley
f320c79349
test: enable fault_injection xds test ( #4283 )
2021-03-22 09:42:11 -07:00
Doug Fawley
425d405f39
test: add timeout to regular xds test runs ( #4201 )
2021-02-12 14:24:30 -08:00
Menghan Li
b753f4903c
xds testing: increase timeout from 90 minutes to 120 minutes ( #4191 )
...
This is the timeout for all the tests, after which the VM will be termiated.
Since now we have more tests, we need more time.
The current average is around 85-90 minutes. The extra 30 minutes should be
enough for several new tests.
2021-02-04 20:13:54 -08:00
ZHANG Dapeng
7f2581f910
xds interop: add xds v3 kokoro tests ( #4165 )
2021-01-20 17:24:22 -08:00
Easwar Swaminathan
f579b61a69
test: Run e2e authority tests only on linux. ( #4160 )
...
Although darwin supports UDS, these tests need some non-trivial amount
of work to get them to pass on darwin. This build constraint will make a
top-level `go test` happy on darwin.
2021-01-19 18:00:32 -08:00
Doug Fawley
938f6e2f75
cmd/protoc-gen-go-grpc: add gRPC-Go version comment and update release version ( #4152 )
2021-01-14 14:28:25 -08:00
Menghan Li
fb40d83340
xds interop: turn on circuit breaking test ( #4144 )
...
Also need to set server image to version 3, so that the server blocks the
pending RPCs
2021-01-08 17:16:38 -08:00
Edmond
39a500abb9
support unix-abstract schema ( #4079 )
2020-12-22 08:56:49 -08:00
Doug Fawley
750abe8f95
resolver: allow config selector to return an RPC error ( #4082 )
2020-12-08 13:32:37 -08:00
Doug Fawley
0d6a24f68a
test: move stubServer to separate package in internal ( #4081 )
2020-12-04 15:56:07 -08:00
Garrett Gutierrez
c456688b18
client: fix "unix" scheme handling for some corner cases ( #4021 )
2020-11-30 10:04:47 -08:00
Edmond
8f3cc6cc26
protoc-gen-go-grpc: export grpc.ServiceDesc ( #4035 )
2020-11-23 14:56:57 -08:00
Menghan Li
78864797b8
balancer: set RPC metadata in address attributes, instead of Metadata field ( #4041 )
...
This metadata will be sent with all RPCs on the created SubConn
2020-11-18 17:12:51 -08:00
Doug Fawley
b88744b832
xds: add ConfigSelector to support RouteAction timeouts ( #3991 )
2020-11-17 13:22:28 -08:00
Timothy Gu
20636e76a9
protobuf: update protoc to latest version ( #4038 )
...
Presently, protoc 3.3.0 (released in 2017) is still being used. This
commit updates the vet.sh script as well as existing generated files to
use protoc 3.14.0 instead.
The only concrete change this brings is updated import paths of
Timestamp and Duration types. However, in practice this is a no-op,
since the types themselves are already aliased to the new import path:
- https://pkg.go.dev/github.com/golang/protobuf@v1.4.3/ptypes/duration#Duration
- https://pkg.go.dev/github.com/golang/protobuf@v1.4.3/ptypes/timestamp#Timestamp
2020-11-16 16:59:46 -08:00
Menghan Li
707e298f55
internal: fix net.Dial fail without IP ( #4037 )
2020-11-16 14:34:08 -08:00
Garrett Gutierrez
90f1b3ee83
client: use "localhost:port" as authority if target is ":port" ( #4017 )
2020-11-12 13:52:55 -08:00
yihuaz
aeb04798c5
credentials: fix PerRPCCredentials w/RequireTransportSecurity and security levels ( #3995 )
2020-11-09 15:33:53 -08:00
Gaurav Gahlot
d7a7a304ff
testing: Avoid using context.Background ( #3949 )
2020-11-05 09:25:17 -08:00
Doug Fawley
4e8458e5c6
protobuf: update all generated code to google.golang.org/protobuf ( #3932 )
2020-10-21 16:05:44 -07:00
Easwar Swaminathan
8153ecea73
credentials/insecure: Implement insecure credentials. ( #3964 )
2020-10-21 15:07:37 -07:00
Doug Fawley
9519efffeb
cmd/protoc-gen-go-grpc: use grpc.ServiceRegistrar instead of *grpc.Server ( #3968 )
2020-10-20 13:02:25 -07:00
Garrett Gutierrez
4be647f7f6
internal/resolver/unix: Implemented unix resolver. ( #3890 )
2020-10-16 11:52:54 -07:00
Doug Fawley
02cd07d9bb
cmd/protoc-gen-go-grpc: revert to interface-based service registration ( #3911 )
2020-09-29 15:17:06 -07:00
Doug Fawley
ff9dd65c90
protoc-gen-go-grpc: generate interfaces optionally; remove NewFooService ( #3876 )
2020-09-16 10:15:56 -07:00
Doug Fawley
15157e2664
test: remove funcServer and some uses of NewTestServiceService ( #3867 )
2020-09-09 13:23:46 -07:00
Doug Fawley
d31b671000
cmd/protoc-gen-go-grpc: call interceptor even if handler is unset ( #3849 )
2020-08-26 16:05:36 -07:00
Garrett Gutierrez
ff1fc890e4
internal: reintroduce legacy appengine build constraints ( #3838 )
2020-08-25 13:49:57 -07:00
Doug Fawley
44d73dff99
cmd/protoc-gen-go-grpc: rework service registration ( #3828 )
2020-08-25 09:28:01 -07:00
Garrett Gutierrez
b9bc8e75a6
End stream flag bugfix ( #3803 )
2020-08-21 14:22:17 -07:00
Menghan Li
8beeedb8b1
internal: clean up all usages of grpclog, and replace with component ( #3719 )
2020-08-06 13:19:17 -07:00
Easwar Swaminathan
fd393c8989
testdata: Update testdata certs. ( #3786 )
...
* This will be used in certprovider tests where we would want more than one server and client certs.
* Also, updated existing usages of these certs to point to the new files.
* Also copy over the required certs/key files. This avoids the example gomodule from depending on gRPC testdata package which should be able to change independently.
* Fix interop test's SAN.
2020-08-05 09:55:07 -07:00
Doug Fawley
bc714cd8ae
Remove Go 1.9 / AppEngine support; assume go1.12 build tag ( #3767 )
2020-07-30 16:15:35 -07:00
Menghan Li
067255ffae
xds testing: add path_matching and header_matching ( #3764 )
2020-07-28 10:33:47 -07:00
Garrett Gutierrez
a5a36bd3f0
client: set auth header to localhost for unix target ( #3730 )
2020-07-21 14:07:03 -07:00
Menghan Li
266c7b6f82
xdsrouting: add fake headers ( #3748 )
2020-07-20 13:40:03 -07:00
Zou Nengren
4e63bcab52
test: replace manual.GenerateAndRegisterManualResolver with grpc.WithResolvers ( #3700 )
2020-06-23 09:49:44 -07:00
Doug Fawley
eb11ffdf9b
retry: prevent per-RPC creds error from being transparently retried ( #3677 )
2020-06-11 09:18:17 -07:00
Menghan Li
9aa97f9cb4
stream: fix calloption.After() race in finish ( #3672 )
2020-06-10 18:00:24 -07:00
Doug Fawley
ad51f572fd
protoc-gen-go-grpc: add requirement of embedding UnimplementedServer in services ( #3657 )
2020-06-04 10:56:13 -07:00
Damien Neil
f818fd2a02
all: regenerate .pb.go files using cmd/protoc-gen-go-grpc ( #3646 )
...
Change regenerate.sh to use cmd/protoc-gen-go-grpc and rerun it.
This splits the gRPC service definitions into separate files, but
otherwise has no changes.
2020-05-28 13:52:49 -07:00
yihuaz
9eb3e7ddf3
credentials: local creds implementation ( #3517 )
...
Local credentials should be used in either a UDS and local TCP connection. The former will be associated with the security level PrigvacyAndIntegrity while the latter is associated with NoSecurity. Local credentials should be used instead of WithInsecure for localhost connections.
2020-05-20 15:43:38 -07:00
Menghan Li
96e5c84cc8
xds: rename resolver scheme to xds ( #3621 )
...
https://github.com/grpc/grpc-go/pull/3621
2020-05-19 10:04:23 -07:00
Doug Fawley
4eb418e5b2
balancer: move Balancer and Picker to V2; delete legacy API ( #3431 )
2020-04-28 14:52:49 -07:00
Eric Gribkoff
a3cc4f613d
interop: add --fail_on_failed_rpc xds client flag ( #3567 )
2020-04-24 12:11:27 -07:00
Damien Neil
15653fec60
all: refactor .pb.go generation ( #3451 )
...
Replace various //go:generate lines and regenerate.sh scripts with a
single, top-level regenerate.sh that regenerates all .pb.go files.
Placing generation in a single script ensures that all files are
generated with similar parameters. The new regenerate.sh uses the
protoc-gen-go version defined in test/tools/go.mod and automatically
handles new .proto files as they are added.
Do some minor refactoring on .proto files: Every file now has a
go_package option (which will be required by a future version of the
code generator), and file imports are all relative to the repository
root.
2020-04-24 08:54:03 -07:00
Eric Gribkoff
7d6aa9ed5e
kokoro: use xds-test-server image ( #3564 )
2020-04-23 17:54:09 -07:00
Easwar Swaminathan
6a3c03883d
Pass address attributes from balancer to creds handshaker. ( #3548 )
2020-04-23 11:03:42 -07:00
Easwar Swaminathan
d15f1a4aa1
test: Move creds related to tests to creds_test.go ( #3542 )
2020-04-16 16:30:23 -07:00
Menghan Li
c7079afb44
lint: fail on missing package comment ( #3524 )
...
golint does check for missing package comment, but with low confidence.
golint checks each file, and complains on every file missing package comment, even though another file in the same package has the comment.
This PR adds a golint check with low min_confidence, and filters out false-positives.
2020-04-15 09:59:17 -07:00
Eric Gribkoff
5dbd4c232c
kokoro: allow individual test case logs for xds ( #3478 )
...
Also reduce the size of the grpc/grpc download
2020-03-26 11:07:05 -07:00
Eric Gribkoff
09f5e89ac4
kokora: checkout matching grpc/grpc branch for xds test ( #3456 )
2020-03-13 14:17:50 -07:00
Eric Gribkoff
a6bd100681
kokoro: add xds job ( #3448 )
2020-03-12 13:37:26 -07:00
Garrett Gutierrez
6af3d372ce
Fixed channelz test flakyness. ( #3417 )
2020-03-03 13:25:42 -08:00
tukeJonny
d0235e4d6b
interceptor: new APIs for chaining server interceptors. ( #3336 )
2020-02-12 11:11:50 -08:00
Garrett Gutierrez
132187f04c
Modified tests to use tlogger. ( #3343 )
...
* Modified tests to use tlogger.
* Fail on errors, with error expectations.
* Added expects and MixedCapsed grpclb_config tests
* Moved tlogger to grpctest, moved leakcheck tester to grpctest.go
* Added ExpectErrorN()
* Removed redundant leak checks
* Fixed new test
* Made tlogger globals into tlogger methods
* ErrorsLeft -> EndTest
* Removed some redundant lines
* Fixed error in test and empty map in EndTest
2020-02-06 13:03:20 -08:00
Doug Fawley
cb03b9f65c
balancer/base: consider an empty address list an error ( #3361 )
2020-02-05 13:16:31 -08:00
Doug Fawley
77bc3d3983
test/tools: update protoc-gen-go version used by vet.sh ( #3355 )
2020-02-03 11:06:34 -08:00
Doug Fawley
b88d2d7465
protobuf: update protoc-gen-go version and generated code ( #3345 )
2020-01-30 10:23:21 -08:00
Garrett Gutierrez
e8a4440d49
grpctest: implement grpclogger using testing.T and inject in tests ( #3260 )
2020-01-13 14:02:31 -08:00
Doug Fawley
c35a580b0c
Revert "balancer: move Balancer and Picker to V2; delete legacy… ( #3315 )
...
This reverts commit 336cf8d761 .
2020-01-13 13:12:55 -08:00
Doug Fawley
336cf8d761
balancer: move Balancer and Picker to V2; delete legacy API ( #3301 )
2020-01-10 13:44:48 -08:00
Doug Fawley
dc49de8acd
balancer: add V2Picker, ClientConn.UpdateState, SubConnState.ConnectionError ( #3186 )
...
Also implement V2 versions of base.*, xds, pickfirst, grpclb, and round robin balancers.
2019-11-21 10:27:29 -08:00
Easwar Swaminathan
d720ab346f
server: Keepalive pings should be sent every [Time] period ( #3172 )
...
This PR contains the server side changes corresponding to the client
side changes made in https://github.com/grpc/grpc-go/pull/3102 .
Apart from the fix for the issue mentioned in
https://github.com/grpc/grpc-go/issues/2638 , this PR also makes some
minor code cleanup and fixes the channelz test for keepalives count.
2019-11-19 14:43:22 -08:00
Joe Tsai
2d2f65684c
cleanup: fix generic comparisons on protobuf messages ( #3153 )
...
Generated protobuf messages contain internal data structures
that general purpose comparison functions (e.g., reflect.DeepEqual,
pretty.Compare, etc) do not properly compare. It is already the case
today that these functions may report a difference when two messages
are actually semantically equivalent.
Fix all usages by either calling proto.Equal directly if
the top-level types are themselves proto.Message, or by calling
cmp.Equal with the cmp.Comparer(proto.Equal) option specified.
This option teaches cmp to use proto.Equal anytime it encounters
proto.Message types.
2019-11-06 14:25:07 -08:00
Doug Fawley
6dac020480
test: add test of malformed gzip payload ( #3141 )
2019-11-05 11:11:34 -08:00
lzhfromustc
da2bec01b9
test & testutils: prevent goroutine leaks in test functions ( #3133 )
2019-11-01 14:51:58 -07:00