Skip to content

Commit 8fa970a

Browse files
authored
Change RunnerId/AgentId from int32 to uint64 (#2661)
* RunnerId int -> ulong
1 parent 8eefd84 commit 8fa970a

File tree

12 files changed

+35
-30
lines changed

12 files changed

+35
-30
lines changed

src/Runner.Common/ConfigurationStore.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public sealed class RunnerSettings
1818
private bool? _isHostedServer;
1919

2020
[DataMember(EmitDefaultValue = false)]
21-
public int AgentId { get; set; }
21+
public ulong AgentId { get; set; }
2222

2323
[DataMember(EmitDefaultValue = false)]
2424
public string AgentName { get; set; }

src/Runner.Common/RunnerServer.cs

+6-6
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ public interface IRunnerServer : IRunnerService
2727

2828
// Configuration
2929
Task<TaskAgent> AddAgentAsync(Int32 agentPoolId, TaskAgent agent);
30-
Task DeleteAgentAsync(int agentPoolId, int agentId);
31-
Task DeleteAgentAsync(int agentId);
30+
Task DeleteAgentAsync(int agentPoolId, ulong agentId);
31+
Task DeleteAgentAsync(ulong agentId);
3232
Task<List<TaskAgentPool>> GetAgentPoolsAsync(string agentPoolName = null, TaskAgentPoolType poolType = TaskAgentPoolType.Automation);
3333
Task<List<TaskAgent>> GetAgentsAsync(int agentPoolId, string agentName = null);
3434
Task<List<TaskAgent>> GetAgentsAsync(string agentName);
@@ -50,7 +50,7 @@ public interface IRunnerServer : IRunnerService
5050
Task<PackageMetadata> GetPackageAsync(string packageType, string platform, string version, bool includeToken, CancellationToken cancellationToken);
5151

5252
// agent update
53-
Task<TaskAgent> UpdateAgentUpdateStateAsync(int agentPoolId, int agentId, string currentState, string trace);
53+
Task<TaskAgent> UpdateAgentUpdateStateAsync(int agentPoolId, ulong agentId, string currentState, string trace);
5454
}
5555

5656
public sealed class RunnerServer : RunnerService, IRunnerServer
@@ -239,13 +239,13 @@ public Task<TaskAgent> ReplaceAgentAsync(int agentPoolId, TaskAgent agent)
239239
return _genericTaskAgentClient.ReplaceAgentAsync(agentPoolId, agent);
240240
}
241241

242-
public Task DeleteAgentAsync(int agentPoolId, int agentId)
242+
public Task DeleteAgentAsync(int agentPoolId, ulong agentId)
243243
{
244244
CheckConnection(RunnerConnectionType.Generic);
245245
return _genericTaskAgentClient.DeleteAgentAsync(agentPoolId, agentId);
246246
}
247247

248-
public Task DeleteAgentAsync(int agentId)
248+
public Task DeleteAgentAsync(ulong agentId)
249249
{
250250
return DeleteAgentAsync(0, agentId); // agentPool is ignored server side
251251
}
@@ -315,7 +315,7 @@ public Task<PackageMetadata> GetPackageAsync(string packageType, string platform
315315
return _genericTaskAgentClient.GetPackageAsync(packageType, platform, version, includeToken, cancellationToken: cancellationToken);
316316
}
317317

318-
public Task<TaskAgent> UpdateAgentUpdateStateAsync(int agentPoolId, int agentId, string currentState, string trace)
318+
public Task<TaskAgent> UpdateAgentUpdateStateAsync(int agentPoolId, ulong agentId, string currentState, string trace)
319319
{
320320
CheckConnection(RunnerConnectionType.Generic);
321321
return _genericTaskAgentClient.UpdateAgentUpdateStateAsync(agentPoolId, agentId, currentState, trace);

src/Runner.Listener/SelfUpdater.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public class SelfUpdater : RunnerService, ISelfUpdater
3838
private ITerminal _terminal;
3939
private IRunnerServer _runnerServer;
4040
private int _poolId;
41-
private int _agentId;
41+
private ulong _agentId;
4242
private readonly ConcurrentQueue<string> _updateTrace = new();
4343
private Task _cloneAndCalculateContentHashTask;
4444
private string _dotnetRuntimeCloneDirectory;

src/Runner.Worker/DiagnosticLogManager.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public void UploadDiagnosticLogs(IExecutionContext executionContext,
5656
// \_layout\_work\_temp\[jobname-support]\files\environment.txt
5757
var configurationStore = HostContext.GetService<IConfigurationStore>();
5858
RunnerSettings settings = configurationStore.GetSettings();
59-
int runnerId = settings.AgentId;
59+
ulong runnerId = settings.AgentId;
6060
string runnerName = settings.AgentName;
6161
int poolId = settings.PoolId;
6262

src/Sdk/DTGenerated/Generated/TaskAgentHttpClientBase.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ public virtual Task<TaskAgent> AddAgentAsync(
9797
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
9898
public virtual async Task DeleteAgentAsync(
9999
int poolId,
100-
int agentId,
100+
ulong agentId,
101101
object userState = null,
102102
CancellationToken cancellationToken = default)
103103
{
@@ -243,7 +243,7 @@ public virtual Task<List<TaskAgent>> GetAgentsAsync(
243243
/// <param name="cancellationToken">The cancellation token to cancel operation.</param>
244244
public virtual Task<TaskAgent> ReplaceAgentAsync(
245245
int poolId,
246-
int agentId,
246+
ulong agentId,
247247
TaskAgent agent,
248248
object userState = null,
249249
CancellationToken cancellationToken = default)
@@ -786,7 +786,7 @@ public virtual async Task DeleteAgentSessionAsync(
786786
[EditorBrowsable(EditorBrowsableState.Never)]
787787
public virtual Task<TaskAgent> UpdateAgentUpdateStateAsync(
788788
int poolId,
789-
int agentId,
789+
ulong agentId,
790790
string currentState,
791791
string updateTrace,
792792
object userState = null,

src/Sdk/DTWebApi/WebApi/AgentRefreshMessage.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ internal AgentRefreshMessage()
1616
}
1717

1818
public AgentRefreshMessage(
19-
Int32 agentId,
19+
ulong agentId,
2020
String targetVersion,
2121
TimeSpan? timeout = null)
2222
{
@@ -26,7 +26,7 @@ public AgentRefreshMessage(
2626
}
2727

2828
[DataMember]
29-
public Int32 AgentId
29+
public ulong AgentId
3030
{
3131
get;
3232
private set;

src/Sdk/DTWebApi/WebApi/DiagnosticLogMetadata.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ namespace GitHub.DistributedTask.WebApi
55
[DataContract]
66
public sealed class DiagnosticLogMetadata
77
{
8-
public DiagnosticLogMetadata(string agentName, int agentId, int poolId, string phaseName, string fileName, string phaseResult)
8+
public DiagnosticLogMetadata(string agentName, ulong agentId, int poolId, string phaseName, string fileName, string phaseResult)
99
{
1010
AgentName = agentName;
1111
AgentId = agentId;
@@ -19,7 +19,7 @@ public DiagnosticLogMetadata(string agentName, int agentId, int poolId, string p
1919
public string AgentName { get; set; }
2020

2121
[DataMember]
22-
public int AgentId { get; set; }
22+
public ulong AgentId { get; set; }
2323

2424
[DataMember]
2525
public int PoolId { get; set; }

src/Sdk/DTWebApi/WebApi/Runner.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public string Name
4747
}
4848

4949
[JsonProperty("id")]
50-
public Int32 Id
50+
public ulong Id
5151
{
5252
get;
5353
internal set;

src/Sdk/DTWebApi/WebApi/RunnerRefreshMessage.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ internal RunnerRefreshMessage()
1616
}
1717

1818
public RunnerRefreshMessage(
19-
Int32 runnerId,
19+
ulong runnerId,
2020
String targetVersion,
2121
int? timeoutInSeconds = null)
2222
{
@@ -26,7 +26,7 @@ public RunnerRefreshMessage(
2626
}
2727

2828
[DataMember]
29-
public Int32 RunnerId
29+
public ulong RunnerId
3030
{
3131
get;
3232
private set;

src/Sdk/DTWebApi/WebApi/TaskAgentReference.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ protected TaskAgentReference(TaskAgentReference referenceToBeCloned)
3737
/// Identifier of the agent.
3838
/// </summary>
3939
[DataMember]
40-
public Int32 Id
40+
public ulong Id
4141
{
4242
get;
4343
set;

src/Sdk/WebApi/WebApi/BrokerHttpClient.cs

+5
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,11 @@ public async Task<TaskAgentMessage> GetRunnerMessageAsync(
8686
return result.Value;
8787
}
8888

89+
if (result.StatusCode == HttpStatusCode.Forbidden)
90+
{
91+
throw new AccessDeniedException(result.Error);
92+
}
93+
8994
throw new Exception($"Failed to get job message: {result.Error}");
9095
}
9196
}

src/Test/L0/Listener/SelfUpdaterL0.cs

+10-10
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public async void TestSelfUpdateAsync()
117117
updater.Initialize(hc);
118118

119119
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
120-
.Callback((int p, int a, string s, string t) =>
120+
.Callback((int p, ulong a, string s, string t) =>
121121
{
122122
hc.GetTrace().Info(t);
123123
})
@@ -180,7 +180,7 @@ public async void TestSelfUpdateAsync_NoUpdateOnOldVersion()
180180
.Returns(Task.FromResult(new PackageMetadata() { Platform = BuildConstants.RunnerPackage.PackageName, Version = new PackageVersion("2.200.0"), DownloadUrl = _packageUrl }));
181181

182182
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
183-
.Callback((int p, int a, string s, string t) =>
183+
.Callback((int p, ulong a, string s, string t) =>
184184
{
185185
hc.GetTrace().Info(t);
186186
})
@@ -234,7 +234,7 @@ public async void TestSelfUpdateAsync_DownloadRetry()
234234
updater.Initialize(hc);
235235

236236
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
237-
.Callback((int p, int a, string s, string t) =>
237+
.Callback((int p, ulong a, string s, string t) =>
238238
{
239239
hc.GetTrace().Info(t);
240240
})
@@ -289,7 +289,7 @@ public async void TestSelfUpdateAsync_ValidateHash()
289289
updater.Initialize(hc);
290290

291291
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
292-
.Callback((int p, int a, string s, string t) =>
292+
.Callback((int p, ulong a, string s, string t) =>
293293
{
294294
hc.GetTrace().Info(t);
295295
})
@@ -344,7 +344,7 @@ public async void TestSelfUpdateAsync_CloneHash_RuntimeAndExternals()
344344
.Returns(Task.FromResult(new PackageMetadata() { Platform = BuildConstants.RunnerPackage.PackageName, Version = new PackageVersion("2.999.0"), DownloadUrl = _packageUrl, TrimmedPackages = new List<TrimmedPackageMetadata>() { new TrimmedPackageMetadata() } }));
345345

346346
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
347-
.Callback((int p, int a, string s, string t) =>
347+
.Callback((int p, ulong a, string s, string t) =>
348348
{
349349
hc.GetTrace().Info(t);
350350
})
@@ -416,7 +416,7 @@ public async void TestSelfUpdateAsync_Cancel_CloneHashTask_WhenNotNeeded()
416416
updater.Initialize(hc);
417417

418418
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
419-
.Callback((int p, int a, string s, string t) =>
419+
.Callback((int p, ulong a, string s, string t) =>
420420
{
421421
hc.GetTrace().Info(t);
422422
})
@@ -490,7 +490,7 @@ public async void TestSelfUpdateAsync_UseExternalsTrimmedPackage()
490490
.Returns(Task.FromResult(new PackageMetadata() { Platform = BuildConstants.RunnerPackage.PackageName, Version = new PackageVersion("2.999.0"), DownloadUrl = _packageUrl, TrimmedPackages = trim }));
491491

492492
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
493-
.Callback((int p, int a, string s, string t) =>
493+
.Callback((int p, ulong a, string s, string t) =>
494494
{
495495
hc.GetTrace().Info(t);
496496
})
@@ -579,7 +579,7 @@ public async void TestSelfUpdateAsync_UseExternalsRuntimeTrimmedPackage()
579579
.Returns(Task.FromResult(new PackageMetadata() { Platform = BuildConstants.RunnerPackage.PackageName, Version = new PackageVersion("2.999.0"), DownloadUrl = _packageUrl, TrimmedPackages = trim }));
580580

581581
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
582-
.Callback((int p, int a, string s, string t) =>
582+
.Callback((int p, ulong a, string s, string t) =>
583583
{
584584
hc.GetTrace().Info(t);
585585
})
@@ -681,7 +681,7 @@ public async void TestSelfUpdateAsync_NotUseExternalsRuntimeTrimmedPackageOnHash
681681

682682

683683
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
684-
.Callback((int p, int a, string s, string t) =>
684+
.Callback((int p, ulong a, string s, string t) =>
685685
{
686686
hc.GetTrace().Info(t);
687687
})
@@ -758,7 +758,7 @@ public async void TestSelfUpdateAsync_FallbackToFullPackage()
758758
.Returns(Task.FromResult(new PackageMetadata() { Platform = BuildConstants.RunnerPackage.PackageName, Version = new PackageVersion("2.999.0"), DownloadUrl = _packageUrl, TrimmedPackages = trim }));
759759

760760
_runnerServer.Setup(x => x.UpdateAgentUpdateStateAsync(1, 1, It.IsAny<string>(), It.IsAny<string>()))
761-
.Callback((int p, int a, string s, string t) =>
761+
.Callback((int p, ulong a, string s, string t) =>
762762
{
763763
hc.GetTrace().Info(t);
764764
})

0 commit comments

Comments
 (0)