Update gRPC version in template to 2.32.0-pre1 (#25587)

* Update gRPC version in template to 2.32.0-pre1

* Log server timeout detail

* Only run interop tests on windows queues

Co-authored-by: John Luo <johluo@microsoft.com>
This commit is contained in:
James Newton-King 2020-09-12 15:23:16 +12:00 committed by GitHub
parent 326507bb01
commit 340ee72715
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 28 additions and 23 deletions

View File

@ -251,11 +251,11 @@
<CastleCorePackageVersion>4.2.1</CastleCorePackageVersion>
<CommandLineParserPackageVersion>2.3.0</CommandLineParserPackageVersion>
<FSharpCorePackageVersion>4.2.1</FSharpCorePackageVersion>
<GoogleProtobufPackageVersion>3.10.0</GoogleProtobufPackageVersion>
<GrpcAspNetCorePackageVersion>2.27.0</GrpcAspNetCorePackageVersion>
<GrpcAuthPackageVersion>2.27.0</GrpcAuthPackageVersion>
<GrpcNetClientPackageVersion>2.27.0</GrpcNetClientPackageVersion>
<GrpcToolsPackageVersion>2.27.0</GrpcToolsPackageVersion>
<GoogleProtobufPackageVersion>3.13.0</GoogleProtobufPackageVersion>
<GrpcAspNetCorePackageVersion>2.32.0-pre1</GrpcAspNetCorePackageVersion>
<GrpcAuthPackageVersion>2.32.0-pre1</GrpcAuthPackageVersion>
<GrpcNetClientPackageVersion>2.32.0-pre1</GrpcNetClientPackageVersion>
<GrpcToolsPackageVersion>2.32.0-pre1</GrpcToolsPackageVersion>
<IdentityServer4AspNetIdentityPackageVersion>4.0.4</IdentityServer4AspNetIdentityPackageVersion>
<IdentityServer4EntityFrameworkPackageVersion>4.0.4</IdentityServer4EntityFrameworkPackageVersion>
<IdentityServer4PackageVersion>4.0.4</IdentityServer4PackageVersion>

View File

@ -90,7 +90,22 @@ namespace InteropTests
{
using (var serverProcess = new WebsiteProcess(_serverPath, _output))
{
await serverProcess.WaitForReady().TimeoutAfter(DefaultTimeout);
try
{
await serverProcess.WaitForReady().TimeoutAfter(DefaultTimeout);
}
catch (Exception ex)
{
var errorMessage = $@"Error while running server process.
Server ready: {serverProcess.IsReady}
Server process output:
======================================
{serverProcess.GetOutput()}
======================================";
throw new InvalidOperationException(errorMessage, ex);
}
using (var clientProcess = new ClientProcess(_output, _clientPath, serverProcess.ServerPort, name))
{

View File

@ -3,6 +3,8 @@
<PropertyGroup>
<ContainsFunctionalTestAssets>true</ContainsFunctionalTestAssets>
<TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
<TestDependsOnAspNetRuntime>true</TestDependsOnAspNetRuntime>
<IsWindowsOnlyTest>true</IsWindowsOnlyTest>
</PropertyGroup>
<ItemGroup>

View File

@ -168,7 +168,7 @@ namespace InteropTestsClient
httpClientHandler.ClientCertificates.Add(cert);
}
var httpClient = new HttpClient(new VersionPolicyHandler(httpClientHandler));
var httpClient = new HttpClient(httpClientHandler);
var channel = GrpcChannel.ForAddress($"{scheme}://{options.ServerHost}:{options.ServerPort}", new GrpcChannelOptions
{
@ -180,21 +180,6 @@ namespace InteropTestsClient
return new GrpcChannelWrapper(channel);
}
// TODO(JamesNK): This type can be removed in the future when Grpc.Net.Client sets VersionPolicy automatically.
// https://github.com/grpc/grpc-dotnet/pull/987
private class VersionPolicyHandler : DelegatingHandler
{
public VersionPolicyHandler(HttpMessageHandler innerHandler) : base(innerHandler)
{
}
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{
request.VersionPolicy = HttpVersionPolicy.RequestVersionOrHigher;
return base.SendAsync(request, cancellationToken);
}
}
private async Task<ChannelCredentials> CreateCredentialsAsync(bool? useTestCaOverride = null)
{
var credentials = ChannelCredentials.Insecure;
@ -875,7 +860,7 @@ namespace InteropTestsClient
string keyFile = Environment.GetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS")!;
Assert.IsNotNull(keyFile);
var jobject = JObject.Parse(File.ReadAllText(keyFile));
string email = jobject.GetValue("client_email").Value<string>();
string email = jobject.GetValue("client_email")!.Value<string>()!;
Assert.IsTrue(email.Length > 0); // spec requires nonempty client email.
return email;
}

View File

@ -22,6 +22,7 @@ using Grpc.Testing;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Net.Http.Headers;
namespace InteropTestsWebsite
{
@ -44,6 +45,8 @@ namespace InteropTestsWebsite
var runtimeVersion = typeof(object).GetTypeInfo().Assembly.GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion ?? "Unknown";
Console.WriteLine($"NetCoreAppVersion: {runtimeVersion}");
var aspNetCoreVersion = typeof(HeaderNames).GetTypeInfo().Assembly.GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion ?? "Unknown";
Console.WriteLine($"AspNetCoreAppVersion: {aspNetCoreVersion}");
});
app.UseRouting();