mirror of
https://github.com/actions/runner.git
synced 2025-12-13 00:36:29 +00:00
Backoff to avoid excessive retries to Run Service in a duration (#3354)
This commit is contained in:
@@ -30,9 +30,11 @@ namespace GitHub.Runner.Common.Tests
|
||||
private string _tempDirectoryRoot = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString("D"));
|
||||
private StartupType _startupType;
|
||||
public event EventHandler Unloading;
|
||||
public event EventHandler<DelayEventArgs> Delaying;
|
||||
public CancellationToken RunnerShutdownToken => _runnerShutdownTokenSource.Token;
|
||||
public ShutdownReason RunnerShutdownReason { get; private set; }
|
||||
public ISecretMasker SecretMasker => _secretMasker;
|
||||
|
||||
public TestHostContext(object testClass, [CallerMemberName] string testName = "")
|
||||
{
|
||||
ArgUtil.NotNull(testClass, nameof(testClass));
|
||||
@@ -92,6 +94,14 @@ namespace GitHub.Runner.Common.Tests
|
||||
|
||||
public async Task Delay(TimeSpan delay, CancellationToken token)
|
||||
{
|
||||
// Event callback
|
||||
EventHandler<DelayEventArgs> handler = Delaying;
|
||||
if (handler != null)
|
||||
{
|
||||
handler(this, new DelayEventArgs(delay, token));
|
||||
}
|
||||
|
||||
// Delay zero
|
||||
await Task.Delay(TimeSpan.Zero);
|
||||
}
|
||||
|
||||
@@ -361,4 +371,19 @@ namespace GitHub.Runner.Common.Tests
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class DelayEventArgs : EventArgs
|
||||
{
|
||||
public DelayEventArgs(
|
||||
TimeSpan delay,
|
||||
CancellationToken token)
|
||||
{
|
||||
Delay = delay;
|
||||
Token = token;
|
||||
}
|
||||
|
||||
public TimeSpan Delay { get; }
|
||||
|
||||
public CancellationToken Token { get; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user