Sets long timeouts for debug/repostore call.

This commit is contained in:
benbierens 2023-10-10 18:08:21 +02:00
parent 1a277ef1b5
commit 8f37b4cf38
No known key found for this signature in database
GPG Key ID: FE44815D96D0A1AA
4 changed files with 41 additions and 34 deletions

View File

@ -23,6 +23,7 @@ namespace Core
public interface IHttpFactoryTool public interface IHttpFactoryTool
{ {
IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, string? logAlias = null); IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, string? logAlias = null);
IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, ITimeSet timeSet, string? logAlias = null);
IHttp CreateHttp(Address address, string baseUrl, string? logAlias = null); IHttp CreateHttp(Address address, string baseUrl, string? logAlias = null);
} }
@ -53,7 +54,12 @@ namespace Core
public IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, string? logAlias = null) public IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, string? logAlias = null)
{ {
return new Http(log, timeSet, address, baseUrl, onClientCreated, logAlias); return CreateHttp(address, baseUrl, onClientCreated, timeSet, logAlias);
}
public IHttp CreateHttp(Address address, string baseUrl, Action<HttpClient> onClientCreated, ITimeSet ts, string? logAlias = null)
{
return new Http(log, ts, address, baseUrl, onClientCreated, logAlias);
} }
public IHttp CreateHttp(Address address, string baseUrl, string? logAlias = null) public IHttp CreateHttp(Address address, string baseUrl, string? logAlias = null)

View File

@ -36,4 +36,32 @@
return TimeSpan.FromMinutes(30); return TimeSpan.FromMinutes(30);
} }
} }
public class LongTimeSet : ITimeSet
{
public TimeSpan HttpCallTimeout()
{
return TimeSpan.FromHours(2);
}
public TimeSpan HttpCallRetryTime()
{
return TimeSpan.FromHours(5);
}
public TimeSpan HttpCallRetryDelay()
{
return TimeSpan.FromSeconds(2);
}
public TimeSpan WaitForK8sServiceDelay()
{
return TimeSpan.FromSeconds(10);
}
public TimeSpan K8sOperationTimeout()
{
return TimeSpan.FromMinutes(15);
}
}
} }

View File

@ -51,7 +51,7 @@ namespace CodexPlugin
public CodexDebugRepoStoreResponse[] GetDebugRepoStore() public CodexDebugRepoStoreResponse[] GetDebugRepoStore()
{ {
return Http().HttpGetJson<CodexDebugRepoStoreResponse[]>("debug/repostore"); return LongHttp().HttpGetJson<CodexDebugRepoStoreResponse[]>("debug/repostore");
} }
public CodexDebugThresholdBreaches GetDebugThresholdBreaches() public CodexDebugThresholdBreaches GetDebugThresholdBreaches()
@ -101,6 +101,11 @@ namespace CodexPlugin
return tools.CreateHttp(Container.Address, baseUrl: "/api/codex/v1", CheckContainerCrashed, Container.Name); return tools.CreateHttp(Container.Address, baseUrl: "/api/codex/v1", CheckContainerCrashed, Container.Name);
} }
private IHttp LongHttp()
{
return tools.CreateHttp(Container.Address, baseUrl: "/api/codex/v1", CheckContainerCrashed, new LongTimeSet(), Container.Name);
}
private void CheckContainerCrashed(HttpClient client) private void CheckContainerCrashed(HttpClient client)
{ {
if (hasContainerCrashed) throw new Exception("Container has crashed."); if (hasContainerCrashed) throw new Exception("Container has crashed.");

View File

@ -1,32 +0,0 @@
using Core;
namespace DistTestCore
{
public class LongTimeSet : ITimeSet
{
public TimeSpan HttpCallTimeout()
{
return TimeSpan.FromHours(2);
}
public TimeSpan HttpCallRetryTime()
{
return TimeSpan.FromHours(5);
}
public TimeSpan HttpCallRetryDelay()
{
return TimeSpan.FromSeconds(2);
}
public TimeSpan WaitForK8sServiceDelay()
{
return TimeSpan.FromSeconds(10);
}
public TimeSpan K8sOperationTimeout()
{
return TimeSpan.FromMinutes(15);
}
}
}