-
Notifications
You must be signed in to change notification settings - Fork 235
Expand file tree
/
Copy pathPipelineWitnessSettings.cs
More file actions
123 lines (100 loc) · 4.38 KB
/
PipelineWitnessSettings.cs
File metadata and controls
123 lines (100 loc) · 4.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
using System;
namespace Azure.Sdk.Tools.PipelineWitness.Configuration
{
public class PipelineWitnessSettings
{
/// <summary>
/// Gets or sets the uri of the key vault to use
/// </summary>
public string KeyVaultUri { get; set; }
/// <summary>
/// Gets or sets uri of the cosmos account to use
/// </summary>
public string CosmosAccountUri { get; set; }
/// <summary>
/// Gets or sets uri of the storage account to use for queue processing
/// </summary>
public string QueueStorageAccountUri { get; set; }
/// <summary>
/// Gets or sets uri of the blob storage account to use for blob export
/// </summary>
public string BlobStorageAccountUri { get; set; }
/// <summary>
/// Gets or sets the name of the build complete queue
/// </summary>
public string BuildCompleteQueueName { get; set; }
/// <summary>
/// Gets or sets the number of concurrent build complete queue workers to register
/// </summary>
public int BuildCompleteWorkerCount { get; set; } = 1;
/// <summary>
/// Gets or sets whether the build definition worker is enabled
/// </summary>
public bool BuildDefinitionWorkerEnabled { get; set; } = true;
/// <summary>
/// Gets or sets the name of the GitHub actions queue
/// </summary>
public string GitHubActionRunsQueueName { get; set; }
/// <summary>
/// Gets or sets the name of the GitHub action queue workers to register
/// </summary>
public int GitHubActionRunsWorkerCount { get; set; } = 1;
/// <summary>
/// Gets or sets secret used to verify GitHub webhook payloads
/// </summary>
public string GitHubWebhookSecret { get; set; }
/// <summary>
/// Gets or sets the access token to use for GitHub API requests. This
/// must be a personal access token with `repo` scope.
/// </summary>
public string GitHubAccessToken { get; set; }
/// <summary>
/// Gets or sets the amount of time a message should be invisible in the queue while being processed
/// </summary>
public TimeSpan MessageLeasePeriod { get; set; } = TimeSpan.FromSeconds(30);
/// <summary>
/// Gets or sets the amount of time to wait before a failed message can be attempted again
/// </summary>
public TimeSpan MessageErrorSleepPeriod { get; set; } = TimeSpan.FromSeconds(10);
/// <summary>
/// Gets or sets the amount of time to wait before checking for new messages when the queue is empty
/// </summary>
public TimeSpan EmptyQueuePollDelay { get; set; } = TimeSpan.FromSeconds(10);
/// <summary>
/// Gets or sets the number of times a message can be dequeued before being moved to the poison message queue
/// </summary>
public long MaxDequeueCount { get; set; } = 5;
/// <summary>
/// Gets or sets the list of projects to work with
/// </summary>
public string[] Projects { get; set; }
/// <summary>
/// Gets or sets the account to work with
/// </summary>
public string Account { get; set; }
/// <summary>
/// Gets or sets the amount of time between iterations of the build definition upload loop
/// </summary>
public TimeSpan BuildDefinitionLoopPeriod { get; set; } = TimeSpan.FromMinutes(5);
/// <summary>
/// Gets or sets the artifact name used by the pipeline owners extraction build
/// </summary>
public string PipelineOwnersArtifactName { get; set; }
/// <summary>
/// Gets or sets the file name used by the pipeline owners extraction build
/// </summary>
public string PipelineOwnersFilePath { get; set; }
/// <summary>
/// Gets or sets the definition id of the pipeline owners extraction build
/// </summary>
public int PipelineOwnersDefinitionId { get; set; }
/// <summary>
/// Gets or sets the database to use
/// </summary>
public string CosmosDatabase { get; set; }
/// <summary>
/// Gets or sets the container to use for async locks
/// </summary>
public string CosmosAsyncLockContainer { get; set; }
}
}