Commit Graph

3944 Commits

Author SHA1 Message Date
Jihun Cho caf54fb66f bom: format(tab->space) build.gradle 2019-09-30 13:05:57 -07:00
Jihun Cho 3f11b27a22 alts: make AltsHandshakerClient#close can be called multiple times 2019-09-27 14:42:40 -07:00
Jihun Cho 15295c75ae examples: add mavenCentral build.gradle without jcenter repo 2019-09-27 14:33:21 -07:00
Jihun Cho 5afba81806 build: add mavenCentral to repositories 2019-09-27 14:33:21 -07:00
Chengyuan Zhang 18a9671ea0
core: move check Json object methods to JsonUtil (#6214) 2019-09-27 14:29:26 -07:00
Chengyuan Zhang d3e86da6b6
core: move generic Json util methods out of ServiceConfigUtil (#6211) 2019-09-27 11:45:38 -07:00
sanjaypujare 7435221629
Make grpc-xds dependent on grpc-netty - needed for TLS related protocolNegotiator implementations in grpc-xds (#6206) 2019-09-27 11:21:58 -07:00
Chengyuan Zhang 214eaae3ba
android-interop-testing: remove settings for using GET via setting MethodDescriptor to safe (#6203)
* Removed client interceptor that sets safe in method descriptor.

* Removed useGet checkbox in UI.
2019-09-27 11:10:47 -07:00
Jihun Cho e3be6a6bfa
compiler: add license header for cpp codes (#6208) 2019-09-27 09:22:42 -07:00
Chengyuan Zhang 68eba768c9
cronet: do not include internal accessors in Javadoc (#6205) 2019-09-26 15:27:47 -07:00
Jihun Cho e67fdb3af9
github: wrap question template in comment blocks (#6199) 2019-09-26 14:21:18 -07:00
Chengyuan Zhang 4ec5be387e
Update README etc to reference 1.24.0 (#6197) 2019-09-25 16:40:09 -07:00
Carl Mastrangelo ab2aff48dc netty,okhttp,cronet: add option to use get/put when methods are safe/idempotent
This change adds two booleans to the ChannelBuilders to
allow transports to use get and put.   These are currently defaulted to
on, but unset on the method descriptors.   This change is 1/2 that will
allow the safe / idempotent bits to be set on generated proto code.
Part 2/2 will actually enable it.

The use case for this is for interceptors that implement caching logic.
They need to be able to access the safe/idempotent bits on the MD in
order to decide to how to handle the request, even if gRPC doesn't use
GET / PUT HTTP methods.
2019-09-25 14:57:17 -07:00
Eric Anderson bd48891dab netty: Check for TE header after checking Content-Type
Checking too early leads to false-positives, like if a non-gRPC client
contacts the server or a grpc-web client.
2019-09-25 14:04:19 -07:00
Jihun Cho 5912d62019
github: update issue templates (#6191) 2019-09-25 13:44:01 -07:00
Jihun Cho 1ab651073d
alts: add close to TsiHandshaker to avoid resource leak for some impls (#6186)
* alts: add close to TsiHandshaker to avoid resource leak for some implementations

* fix linter error
2019-09-25 13:23:52 -07:00
ZHANG Dapeng 694de41107
xds: add server name in EDS request resource_names field 2019-09-25 12:48:03 -07:00
Chengyuan Zhang e281c75b2a
cronet: update README for using published grpc-cronet with play service Cronet implementation (#6178)
* cronet: update README for using published grpc-cronet with play service Cronet implementation.

* doc: Added cronet/README.md version update to RELEASING.md.
2019-09-24 13:24:59 -07:00
ZHANG Dapeng f9ba620309
xds: shade gogoproto 2019-09-24 09:52:03 -07:00
ZHANG Dapeng 5bc1309c87
xds: Priority failover
- Implementing priority failover
- Removed `localityWeight` field from `LocalityLbInfo` because this is always available and up to date in `edsResponsLocalityInfo`, otherwise need to create a new instance of `LocalityLbInfo` each time weight is updated.
- Introduced `PriorityManager` that manages all the priority failover logic.
2019-09-23 18:32:43 -07:00
ZHANG Dapeng cd8dbd306b
xds: use PGV dependency from maven artifact
Resolves #6016
2019-09-23 18:09:38 -07:00
Eric Anderson 2902a9373c gradle: Use absolute path with checkstyle fileTree
The fileTree is supposed to be relative to the current project, which in
this case would be the child project, but apparently it isn't. Poked
around but couldn't find out why. In any case this fixes a regression
introduced in 4215b80b where checkstyle would no longer file any Java
files and thus it would not notice any failures.
2019-09-23 13:06:01 -07:00
ZHANG Dapeng 1f3931b3c8
xds: restructure XdsLoadBalancer Part 3: LookasideLb 2019-09-23 11:07:50 -07:00
ZHANG Dapeng 4db1c893f8
xds: restructure XdsLoadBalancer Part 2: FallbackLb 2019-09-23 11:07:24 -07:00
Chengyuan Zhang 65321b5a67
xds: implement bootstrapping for xDS load balancer for alpha release (#6145)
* Defined a proto message that maps the bootstrap JSON file for convenient parsing purpose.

* Implemented a Bootstrapper class which reads a local bootstrap file.

* Added unit test for Bootstrapper.

* Let xDS load balancer bootstrap from a bootstrap file. Currently not use configurations from bootstrap in xDS communication as the xDS load balancer implementation is undergoing changes. We will integrate it later.

* Added newline at the end of files.

* Added json_name proto field option.

* Replaced all RuntimeException with IOException for bootstrap data errors.

* Changed to use JUnit exception rules in test.

* Use StandardCharSets.UTF_8

* Revert "Let xDS load balancer bootstrap from a bootstrap file. Currently not use configurations from bootstrap in xDS communication as the xDS load balancer implementation is undergoing changes. We will integrate it later."

This reverts commit 37200cdd3c.

* Use initialization-on-demand holder idiom for instantiating Bootstrapper instance.

* Fixed usage of JUnit exception rules.

* Changed lazily instantiated variable to camel case

* Removed unnecessary constructor.
2019-09-22 16:49:09 -07:00
Srini Polavarapu fe77496f76
Update governance, contributing, code of conduct docs (#6171)
* change from Inc. to LLC for Google and update the list

* Add CODE-OF-CONDUCT.md, GOVERNANCE.md and update CONTRIBUTING.md
2019-09-20 16:28:42 -07:00
Jihun Cho 16392bc733
netty: converts Proxy handler into new protocol negotiation style (#6159) 2019-09-19 15:29:03 -07:00
ZHANG Dapeng 19b09160c9
all: stabilize ManagedChannelBuilder.usePlaintext() 2019-09-18 15:16:31 -07:00
ZHANG Dapeng a04ad90888
examples: clarify about potential mistake in unit test
Resolves #6161
2019-09-18 13:24:56 -07:00
Anar Sultanov ba0fd84d79 netty: Rely on ChannelFactory in NettyServer instead of dynamic classes
Fixes #5649
2019-09-17 15:59:29 -07:00
sanjaypujare fd4f189d2b
Create a new class XdsAttributes in xds to house XDS related attributes and define ATTR_SDS_CONFIG there (#6154)
Need to define a new attribute so we can plumb SdsSecretConfig from the xDS LB to SSL code so the value can be passed on to the SDS module.
2019-09-17 11:01:45 -07:00
Jihun Cho df4da6bef3
auth: removed unused import (#6155) 2019-09-16 15:48:56 -07:00
ZHANG Dapeng 4334583681
xds: restructure XdsLoadBalancer part 1
- Get rid of `XdsLbState` and make config change handling into two layers: `LookasideLb` (handles balancer name) and `LookasideChannelLb` (handles child policy), under `XdsLoadBalanecer` (fallback manager layer)
- Move `XdsComms`/`AdsStream` to a layer under `LookasideChannelLb`. They don't keep the helper, but only `SyncCtx` and `ChannelLogger`
- For each layer, we pass in a `LoadBalancer.Factory` for the next/child layer. In test, 
  + we mock/fake the factory, so we don't care about the implementation details of the child layer.
  + we capture the helper of `factory.newBalancer(factory)`, so we can mimic `updateBalancingState() `from the child layer.

Part 1 contains fallback management logic. There is no change in fallback management logic.
2019-09-13 12:11:27 -07:00
Elliotte Rusty Harold 858a1f8fb9 Update to Guava 28.1
Remove serviceAccountWithScopeNotToJwt as test no longer makes sense
and it is hard to adapt to the new cred API.
2019-09-13 11:16:08 -07:00
Eric Anderson 2b945774b6 Apply animalsniffer plugin explicitly when needed 2019-09-13 09:42:17 -07:00
Eric Anderson 4215b80b81 Apply java plugin explicitly when needed 2019-09-13 09:42:17 -07:00
Eric Anderson e13221b503 Apply japicmp plugin explicitly when needed 2019-09-13 09:42:17 -07:00
Eric Anderson 3b29f74271 Move ALPN Agent configuration to each project needing it 2019-09-13 09:42:17 -07:00
Eric Anderson 5b838e5284 Apply maven-publish plugin explicitly when needed 2019-09-13 09:42:17 -07:00
Eric Anderson 55ac6f08af Apply JMH plugin explicitly when needed 2019-09-13 09:42:17 -07:00
Eric Anderson 3c3a823a81 Swap to Gradle's Plugin DSL for much of build
Examples and android projects were left unchanged. They can be changed
later.

No plugin versions were changed, to make this as non-functional of a
change as possible. Upgrading Gradle to 5.6 was necessary for
pluginManagement in settings.gradle.
2019-09-13 09:42:17 -07:00
Eric Anderson cf3e2c4ef1
auth: Avoid com.auth0:java-jwt dependency in test 2019-09-12 13:17:35 -07:00
edr 132e8bc8dd core: Add Attributes.Key for authority in EquivalentAddressGroup (#6126)
This enables NameResolvers to dynamically provide authority for each
Subchannel

Fixes #4469
2019-09-11 20:35:18 -07:00
Eric Anderson b092a29c5d core: Propagate EAG Attributes in RoundRobinLoadBalancer
This allows plumbing information to the subchannel via Attributes, like
an authority override. RR still does not support multiple EAGs that only
differ by attributes.
2019-09-11 20:34:05 -07:00
Chengyuan Zhang 7f693941f8
xds: add test for LRS retry and re-send load reports after stream closed (#6140)
* xds: add test for LRS retry and re-send load reports

* Removed log verifications.
2019-09-11 14:12:58 -07:00
ZHANG Dapeng 842dfa49b1
xds: Fix a bug locality reset not fully clean up
There is a bug in LocalityStore.reset() found during import.
2019-09-11 14:00:18 -07:00
Elliotte Rusty Harold e99672e03d all: Update to truth 1.0
* Update to truth 1.0
2019-09-11 08:53:18 -07:00
Chengyuan Zhang fa8f89a1a6
Start 1.25.0 development cycle (#6141) 2019-09-10 17:41:37 -07:00
康智冬 415212fc49 alts: fix typo (#6113) 2019-09-10 14:13:35 -07:00
Chengyuan Zhang 252ca2a7df
auth: verify information in decoded JWT token instead of comparing hashing values, which involves creds issue and expiration time. (#6137) 2019-09-10 11:09:36 -07:00