Skip to content

Commit a5f87d3

Browse files
Georgy GorelkoGeorgy Gorelko
authored andcommitted
Improve logging for branch policy checks by including repository identifier
1 parent 39357d9 commit a5f87d3

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed

src/Octoshift/Services/AdoPipelineTriggerService.cs

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,8 @@ public async Task<bool> IsPipelineRequiredByBranchPolicy(string adoOrg, string t
138138

139139
if (string.IsNullOrEmpty(repositoryId))
140140
{
141-
_log.LogWarning($"Repository ID not found for {adoOrg}/{teamProject}/{repoName}. Branch policy check cannot be performed for pipeline {pipelineId}.");
141+
var repoIdentifier = repoName ?? repoId ?? "unknown";
142+
_log.LogWarning($"Repository ID not found for {adoOrg}/{teamProject}/{repoIdentifier}. Branch policy check cannot be performed for pipeline {pipelineId}.");
142143
return false;
143144
}
144145
}
@@ -156,7 +157,8 @@ public async Task<bool> IsPipelineRequiredByBranchPolicy(string adoOrg, string t
156157

157158
if (policyData?.Value == null || policyData.Value.Count == 0)
158159
{
159-
_log.LogVerbose($"No branch policies found for repository {adoOrg}/{teamProject}/{repoName}. ADO Pipeline ID = {pipelineId} is not required by branch policy.");
160+
var repoIdentifier = repoName ?? repoId ?? "unknown";
161+
_log.LogVerbose($"No branch policies found for repository {adoOrg}/{teamProject}/{repoIdentifier}. ADO Pipeline ID = {pipelineId} is not required by branch policy.");
160162
return false;
161163
}
162164

@@ -168,43 +170,50 @@ public async Task<bool> IsPipelineRequiredByBranchPolicy(string adoOrg, string t
168170

169171
if (isPipelineRequired)
170172
{
171-
_log.LogVerbose($"ADO Pipeline ID = {pipelineId} is required by branch policy in {adoOrg}/{teamProject}/{repoName}. Build status reporting will be enabled to support branch protection.");
173+
var repoIdentifier = repoName ?? repoId ?? "unknown";
174+
_log.LogVerbose($"ADO Pipeline ID = {pipelineId} is required by branch policy in {adoOrg}/{teamProject}/{repoIdentifier}. Build status reporting will be enabled to support branch protection.");
172175
}
173176
else
174177
{
175-
_log.LogVerbose($"ADO Pipeline ID = {pipelineId} is not required by any branch policies in {adoOrg}/{teamProject}/{repoName}.");
178+
var repoIdentifier = repoName ?? repoId ?? "unknown";
179+
_log.LogVerbose($"ADO Pipeline ID = {pipelineId} is not required by any branch policies in {adoOrg}/{teamProject}/{repoIdentifier}.");
176180
}
177181

178182
return isPipelineRequired;
179183
}
180184
catch (HttpRequestException ex)
181185
{
182186
// If we can't determine branch policy status due to network issues, default to false
183-
_log.LogWarning($"HTTP error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoName}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
187+
var repoIdentifier = repoName ?? repoId ?? "unknown";
188+
_log.LogWarning($"HTTP error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoIdentifier}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
184189
return false;
185190
}
186191
catch (TaskCanceledException ex)
187192
{
188193
// If branch policy checking times out, consider check failed
189-
_log.LogWarning($"Branch policy check timed out for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoName}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
194+
var repoIdentifier = repoName ?? repoId ?? "unknown";
195+
_log.LogWarning($"Branch policy check timed out for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoIdentifier}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
190196
return false;
191197
}
192198
catch (JsonException ex)
193199
{
194200
// If we can't determine branch policy status due to JSON parsing issues, default to false
195-
_log.LogWarning($"JSON parsing error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoName}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
201+
var repoIdentifier = repoName ?? repoId ?? "unknown";
202+
_log.LogWarning($"JSON parsing error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoIdentifier}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
196203
return false;
197204
}
198205
catch (ArgumentException ex)
199206
{
200207
// If we can't determine branch policy status due to invalid arguments, default to false
201-
_log.LogWarning($"Invalid argument error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoName}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
208+
var repoIdentifier = repoName ?? repoId ?? "unknown";
209+
_log.LogWarning($"Invalid argument error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoIdentifier}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
202210
return false;
203211
}
204212
catch (InvalidOperationException ex)
205213
{
206214
// If branch policy checking fails due to invalid state, consider check failed
207-
_log.LogWarning($"Invalid operation error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoName}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
215+
var repoIdentifier = repoName ?? repoId ?? "unknown";
216+
_log.LogWarning($"Invalid operation error during branch policy check for pipeline {pipelineId} in {adoOrg}/{teamProject}/{repoIdentifier}: {ex.Message}. Pipeline trigger configuration may not preserve branch policy requirements.");
208217
return false;
209218
}
210219
}

0 commit comments

Comments
 (0)