232 references to CiFailureJson
AnalyzeCiFailure (107)
AnalysisCommands.cs (1)
270Console.WriteLine($"::error::{CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(ex.Message, limit: 1000))}");
AnalysisDiagnostics.cs (5)
96var text = CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(message, limit: 1000)) 155["detail"] = DiagnosticTextSanitizer.SanitizeJson(CiFailureJson.ToNode(detail), limit: 500, multiline: true), 158Encoding.UTF8.GetByteCount(CiFailureJson.Serialize(entry)) > AnalysisDiagnostics.MaximumFileBytes) 196var text = CiFailureJson.Serialize(summary); 208text = CiFailureJson.Serialize(summary);
AnalysisInvocation.cs (2)
69Console.Error.WriteLine($"::error::Unable to retain analysis diagnostics: {CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(error.Message, limit: 500))}"); 83Console.Error.WriteLine($"::error::Unable to retain analysis recovery: {CiFailureJson.Display(error.Message)}");
AnalysisPublicationQueries.cs (12)
18return new JsonArray(issues.Where(issue => CiFailureJson.Field(issue, "pull_request") is null) 43if (!(response is JsonObject && CiFailureJson.Text(response["state"]) is not null && 49return CiFailureJson.Text(response!["state"]) == "open" && CiFailureJson.IsFalse(response["locked"]); 63var match = comments.Where(comment => CiFailureJson.Text(CiFailureJson.Field(CiFailureJson.Field(comment, "user"), "login")) == "github-actions[bot]" && 64(CiFailureJson.Text(CiFailureJson.Field(comment, "body")) ?? "").StartsWith("<!-- analyze-ci-failure -->\n", StringComparison.Ordinal)) 65.OrderBy(comment => GitHubJson.ReadRequiredId(CiFailureJson.Field(comment, "id"))) 68return match is null ? "" : CiFailureJson.GetValueText(CiFailureJson.Field(match, "id"));
AnalysisPublisher.cs (1)
9using static AnalyzeCiFailure.CiFailureJson;
AnalysisPublisher.Overflow.cs (1)
8using static AnalyzeCiFailure.CiFailureJson;
AnalysisRerunner.cs (1)
9using static AnalyzeCiFailure.CiFailureJson;
AnalysisScratch.cs (1)
36Console.Error.WriteLine($"::warning::Unable to remove analysis scratch: {CiFailureJson.Display(error.Message)}");
AnalysisValidator.cs (1)
9using static AnalyzeCiFailure.CiFailureJson;
BranchHistoryReader.cs (1)
8using static AnalyzeCiFailure.CiFailureJson;
CauseHistoryStore.cs (1)
31throw new ValidationException($"Unable to load CI failure history: {CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(reference.Error, limit: 4096))}");
CauseIssueRenderer.cs (1)
7using static AnalyzeCiFailure.CiFailureJson;
CollectionProjection.cs (1)
6using static AnalyzeCiFailure.CiFailureJson;
DiagnosticTextSanitizer.cs (1)
9using static AnalyzeCiFailure.CiFailureJson;
EvidencePackageStore.cs (2)
23CiFailureJson.WriteContract(paths.PriorCauseIndex, input.Catalogue); 34await File.WriteAllTextAsync(path, CiFailureJson.Serialize(value) + Environment.NewLine, ct);
EvidencePreparation.cs (7)
8using static AnalyzeCiFailure.CiFailureJson; 54Console.Error.WriteLine($"::error::Unable to write collection outcome: {CiFailureJson.Display(outcomeError.Message)}"); 59CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(error.Message, limit: 1000))); 121CiFailureJson.Write( 153Console.Error.WriteLine($"::error::Unable to write collection outcome: {CiFailureJson.Display(outcomeError.Message)}"); 187jsonContext.Add(name, JsonSerializer.SerializeToElement(CiFailureJson.Parse(attachment.Text))); 229Console.Error.WriteLine($"::error::Unable to write collection outcome: {CiFailureJson.Display(error.Message)}");
GitHubActionsIntegration.cs (1)
6using static AnalyzeCiFailure.CiFailureJson;
Infrastructure\AnalysisGitHubClient.cs (2)
29var rows = property is null ? page : CiFailureJson.Field(page, property); 41$"page {pageNumber}, row {rowNumber} for {CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(endpoint, limit: 200))}");
Infrastructure\AnalyzerCommandExecutor.cs (1)
34throw new ValidationException($"{executable} failed ({result.ExitCode}): {CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(result.Error, limit: 4096))}");
Models\CollectionModels.cs (1)
72Message = CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(message, limit: 500)),
Models\EvidenceContracts.cs (27)
23[JsonPropertyName("event"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 25[JsonPropertyName("head_branch"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 27[JsonPropertyName("pr_numbers"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 51[JsonPropertyName("html_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 62[JsonPropertyName("name"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 66[JsonPropertyName("html_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 75[JsonPropertyName("name"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 77[JsonPropertyName("conclusion"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 86[JsonPropertyName("title"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 88[JsonPropertyName("user"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 90[JsonPropertyName("state"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 92[JsonPropertyName("head_branch"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 94[JsonPropertyName("base_branch"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 96[JsonPropertyName("html_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 105[JsonPropertyName("title"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 107[JsonPropertyName("user"), JsonConverter(typeof(CiFailureJson.OptionalObjectConverter<GitHubUser>))] 109[JsonPropertyName("state"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 111[JsonPropertyName("head"), JsonConverter(typeof(CiFailureJson.OptionalObjectConverter<GitHubBranch>))] 113[JsonPropertyName("base"), JsonConverter(typeof(CiFailureJson.OptionalObjectConverter<GitHubBranch>))] 115[JsonPropertyName("html_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 124[JsonPropertyName("login"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 131[JsonPropertyName("ref"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 140[JsonPropertyName("message"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 142[JsonPropertyName("html_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 144[JsonPropertyName("pull_request"), JsonConverter(typeof(CiFailureJson.OptionalObjectConverter<CandidatePullRequest>))] 153[JsonPropertyName("title"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 155[JsonPropertyName("url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))]
Models\PriorContextContracts.cs (7)
14[JsonPropertyName("id"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 18[JsonPropertyName("title"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 20[JsonPropertyName("test_name"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 22[JsonPropertyName("issue_url"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 24[JsonPropertyName("error_pattern"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 44[JsonPropertyName("name"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] 51[JsonPropertyName("observed_at"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))]
Models\RunSummaryContracts.cs (2)
27internal NormalizedJsonNumber NormalizedId => CiFailureJson.AsNormalizedNumber(Id)!.Value; 131internal NormalizedJsonNumber? NormalizedJobId => CiFailureJson.AsNormalizedNumber(JobId);
Models\ValidationModels.cs (2)
45[property: JsonPropertyName("test_name"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))] string? TestName) 47[JsonPropertyName("id"), JsonConverter(typeof(CiFailureJson.OptionalTextConverter))]
PrCommentRenderer.cs (1)
4using static AnalyzeCiFailure.CiFailureJson;
PriorCauseCatalogue.cs (2)
29var cause = CiFailureJson.ToContract<PriorCauseRecord>(System.Text.Json.Nodes.JsonNode.Parse(pair.Value.Text)) 61ReadError = "Cannot summarize prior cause record: " + CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(ex.Message, limit: 500)),
RecoveryCaptureWriter.cs (3)
43CiFailureJson.Serialize(DiagnosticTextSanitizer.SanitizeJson(value, MaximumFileBytes, multiline: true)), 55CiFailureJson.Serialize(DiagnosticTextSanitizer.SanitizeJson(diagnostic, MaximumFileBytes, multiline: true)), 116CiFailureJson.Write(
RunSummaryBuilder.cs (2)
5using static AnalyzeCiFailure.CiFailureJson; 118.Select(step => CiFailureJson.ToContract<WorkflowStep>(step)!)
TestFailureReader.cs (7)
60$"'{CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(artifact.JobName, limit: 500))}', but found {producingJobs.Length}. " + 61$"artifact='{CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(artifact.Artifact.Name ?? "", limit: 100))}'"); 160$"Cannot parse test result '{CiFailureJson.Display(relativeDirectory + "/" + Path.GetFileName(file))}' from artifact {artifactId}: " + 161CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(ex.GetBaseException().Message, limit: 160)), 187$"job={input.JobId} artifact={source.ArtifactId} file={CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(source.ResultFile, limit: 80))}"); 198$"job={input.JobId} execution='{CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(execution, limit: 80))}' " + 200$"test='{CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(input.Name, limit: 80))}'");
TestResultArtifacts.cs (1)
8using static AnalyzeCiFailure.CiFailureJson;
TransientJson.cs (3)
59CiFailureJson.Display(DiagnosticTextSanitizer.Sanitize(ex.Message, limit: 1000))); 189CiFailureJson.TryReadEnum<T>(reader.GetString(), out var value)) 202writer.WriteStringValue(CiFailureJson.EnumText(value));
ValidationRules.cs (1)
5using static AnalyzeCiFailure.CiFailureJson;
WorkflowFailureDiagnosisContextBuilder.cs (3)
33("PREVIEW", string.Concat(focused.Select(cause => " " + CiFailureJson.Serialize(cause) + "\n"))))); 49summary.Append("### ").Append(CiFailureJson.Display(name)).Append('\n'); 66state = CiFailureJson.EnumText(bundle.TestEvidence.State),
WorkflowRunEvidenceCollector.cs (1)
11using static AnalyzeCiFailure.CiFailureJson;
Workflows\AspireCiWorkflowConventions.cs (1)
6using static AnalyzeCiFailure.CiFailureJson;
AnalyzeCiFailure.Tests (125)
AnalyzeCiFailureAlternateWorkflowTests.cs (3)
98Assert.Equal(state, CiFailureJson.EnumText(evidence.TestEvidence.State)); 185Assert.Equal(state, CiFailureJson.EnumText(result.Run.Evidence.TestEvidence.State)); 220Assert.Equal(state, CiFailureJson.EnumText(result.Run!.Evidence.TestEvidence.State));
AnalyzeCiFailureEnumTests.cs (12)
26Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<AnalysisReport>(CiFailureJson.Parse(json))); 35var value = CiFailureJson.Parse(json); 36Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<RunScope>(value)); 37Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<EvidenceState>(value)); 38Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<CandidateHistoryState>(value)); 39Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<AnalysisVerdict>(value)); 40Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<JobClassification>(value)); 41Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<TestClassification>(value)); 42Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<CauseType>(value)); 43Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<TestArtifactFormat>(value)); 61await Verifier.Verify(CiFailureJson.Serialize(projection), "json").UseDirectory("Snapshots");
AnalyzeCiFailureEvidenceTests.cs (11)
24CiFailureJson.ToContract<TestFailureEvidence>(CiFailureJson.Parse(json))); 30var metadata = CiFailureJson.ToContract<MergedPullRequest>( 31CiFailureJson.Parse("""{"number":42,"title":false,"user":{"login":[]},"head":{"ref":false}}"""))!; 43var identity = CiFailureJson.ToContract<StoredCauseIdentity>(CiFailureJson.Parse(prior))!; 121var evidence = new[] { CiFailureJson.ToContract<TestFailureEvidence>(DiagnosticTextSanitizer.SanitizeJson(source, int.MaxValue, multiline: true))! }; 124CiFailureJson.WriteContract(file, evidence); 125var restored = CiFailureJson.ReadContract<ImmutableArray<TestFailureEvidence>>(file); 151CiFailureJson.WriteContract(output, accepted.Report); 391var jobs = CiFailureJson.ReadContract<WorkflowJob[]>(file)!;
AnalyzeCiFailureFixtures.cs (39)
59var node = File.Exists(path) ? CiFailureJson.Read(path) : null; 60return node is JsonObject ? CiFailureJson.ToContract<T>(node) : null; 66var node = File.Exists(paths.CandidateMerges) ? CiFailureJson.Read(paths.CandidateMerges) : null; 67candidates = node is JsonArray ? CiFailureJson.ToContract<ImmutableArray<CandidateMerge>>(node) : []; 87return File.Exists(path) ? CiFailureJson.Read(path) : null; 91var report = CiFailureJson.Read(Path.Combine(output, "analysis-result.json"))!; 95var scope = CiFailureJson.ReadEnum<RunScope>(CiFailureJson.Text(context["run_scope"]), "Run scope is invalid"); 96var state = CiFailureJson.ReadEnum<EvidenceState>(CiFailureJson.Text(Read("test-evidence.json")?["state"]), "Test evidence state is invalid"); 100var input = CiFailureJson.ToContract<TestFailureInput>(test)!; 131SubjectPrNumber = long.TryParse(CiFailureJson.Text(context["pr_numbers"]), NumberStyles.None, CultureInfo.InvariantCulture, out var pr) && pr > 0 ? pr : null, 153Title = CiFailureJson.Text(prMetadata["title"]) ?? "", Author = CiFailureJson.Text(prMetadata["user"]) ?? "", 154State = CiFailureJson.Text(prMetadata["state"]) ?? "", HeadBranch = CiFailureJson.Text(prMetadata["head_branch"]) ?? "", 155BaseBranch = CiFailureJson.Text(prMetadata["base_branch"]) ?? "", Url = CiFailureJson.Text(prMetadata["html_url"]) ?? "", 158? CiFailureJson.ToContract<CandidateHistoryStatus>(historyNode)?.State ?? CandidateHistoryState.Unavailable 161? CiFailureJson.ToContract<ImmutableArray<CandidateMerge>>(candidateNodes) : []; 163CiFailureJson.Text(metadata["head_sha"]) ?? "", 171var matching = bundle.TestEvidence.Failures.Where(collected => collected.Name == CiFailureJson.Text(test?["name"]) && 172(test?["job_id"] is { } id ? collected.JobId == GitHubJson.ReadRequiredId(id) : jobs.Any(job => job.Id == collected.JobId && job.Name == CiFailureJson.Text(test?["job"])))).ToArray(); 173var observation = CiFailureJson.Text(test?["observation_id"]); 179Classification = CiFailureJson.ReadEnum<TestClassification>(CiFailureJson.Text(test?["classification"]), "Test classification is invalid"), 180Reason = CiFailureJson.Text(test?["reason"]) ?? "", 186var cause = CiFailureJson.Read(path)!; 187var id = CiFailureJson.Text(cause["id"])!; 189var type = CiFailureJson.ReadEnum<CauseType>(CiFailureJson.Text(cause["type"]), "Cause type is invalid"); 192? explicitTests.Any(reference => CiFailureJson.Text(reference?["name"]) == test.Name && 194(reference?["observation_id"] is null || CiFailureJson.Text(reference["observation_id"]) == $"observation-{bundle.TestEvidence.Failures.IndexOf(test) + 1}")) 195: test.Name == CiFailureJson.Text(cause["test_name"]) && jobIds.Contains(test.JobId)) 215Title = CiFailureJson.Text(cause["title"])!, 216ErrorPattern = CiFailureJson.Text(cause["error_pattern"])!, 233Classification = CiFailureJson.ReadEnum<JobClassification>(CiFailureJson.Text(job?["classification"]), "Job classification is invalid"), 234Reason = CiFailureJson.Text(job?["reason"]) ?? "",
AnalyzeCiFailurePreparationTests.cs (8)
218var state = AnalyzeCiFailure.CiFailureJson.ReadContract<AnalyzeCiFailureFixtures.TestEvidenceState>(Path.Combine(paths.RootDirectory, "test-evidence.json"))?.State 228var jobData = (JsonArray)AnalyzeCiFailure.CiFailureJson.Read(paths.FailedJobs)!; 231var selected = AnalyzeCiFailure.CiFailureJson.ReadContract<System.Collections.Immutable.ImmutableArray<AnalyzeCiFailure.TestResultArtifactRecord>>(paths.SelectedTestArtifacts); 246AnalyzeCiFailure.CiFailureJson.WriteContract(Path.Combine(paths.RootDirectory, "test-failures.json"), projection); 252diagnostic = "::error::" + AnalyzeCiFailure.CiFailureJson.Display(ex.Message); 255AnalyzeCiFailure.CiFailureJson.WriteContract(Path.Combine(paths.RootDirectory, "test-evidence.json"), new AnalyzeCiFailureFixtures.TestEvidenceState(state)); 262AnalyzeCiFailure.CiFailureJson.WriteContract(paths.PriorCauseIndex, catalogue); 861summary = AnalyzeCiFailure.CiFailureJson.ToNode(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)!;
AnalyzeCiFailurePublicationTests.cs (5)
585summary = AnalyzeCiFailure.CiFailureJson.ToNode(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)!; 715summary = AnalyzeCiFailure.CiFailureJson.ToNode(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)!; 1070AnalyzeCiFailure.CiFailureJson.ReadEnum<AnalyzeCiFailure.RunScope>(scope, "Invalid test scope")); 1074AnalyzeCiFailure.CiFailureJson.ReadEnum<AnalyzeCiFailure.RunScope>(scope, "Invalid test scope"), 1380["run_summary"] = AnalyzeCiFailure.CiFailureJson.ToNode(publishedSummary),
AnalyzeCiFailureRenderingTests.cs (13)
47CiFailureJson.ReadContract<AnalysisReport>(args[0])!, 48CiFailureJson.ReadContract<WorkflowJob[]>(args[1])!, 56=> File.Exists(file) ? CiFailureJson.ReadContract<T>(file) : null; 64(JsonObject)CiFailureJson.Read(args[0])!, 72CiFailureJson.Write(args[11], new JsonObject { ["title"] = projection.Title, ["labels"] = projection.Labels }); 98TestResultArtifacts.ReadArtifacts((JsonArray)CiFailureJson.Read(args[0])!), 99((JsonArray)CiFailureJson.Read(args[3])!).OfType<JsonObject>() 110CiFailureJson.Read(args[0]), 157var cause = CiFailureJson.Read(args[0])!; 158var jobs = CiFailureJson.ToContract<System.Collections.Immutable.ImmutableArray<WorkflowJob>>(CiFailureJson.Read(args[1])); 160jobs.First(job => CiFailureJson.AsNormalizedNumber(job.Id) == CiFailureJson.ReadNormalizedNumber(id)).Name!);
AnalyzeCiFailureRuleTests.cs (4)
23var evidence = AnalyzeCiFailureFixtures.CreateEvidence(CiFailureJson.ReadEnum<RunScope>(scope, "Invalid scope")); 560private static AnalysisJob Job(string id, string classification) => new() { Id = CiFailureJson.ToContract<System.Text.Json.JsonElement>(CiFailureJson.Parse(id)), Classification = Value<JobClassification>(classification) }; 581=> CiFailureJson.TryReadEnum<T>(text, out var value) ? value : default;
AnalyzeCiFailureTextTests.cs (12)
140var node = json is null ? null : AnalyzeCiFailure.CiFailureJson.Parse(json); 142Assert.Equal(expected, AnalyzeCiFailure.CiFailureJson.GetValueText(node)); 150Assert.Equal("\"x\"", AnalyzeCiFailure.CiFailureJson.GetValueText(node)); 199Assert.Equal(text, AnalyzeCiFailure.CiFailureJson.GetValueText(node)); 208? AnalyzeCiFailure.CiFailureJson.TryReadEnum<AnalyzeCiFailure.AnalysisVerdict>(text, out _) 209: AnalyzeCiFailure.CiFailureJson.TryReadEnum<AnalyzeCiFailure.RunScope>(text, out _)); 218var exception = Assert.Throws<JsonException>(() => AnalyzeCiFailure.CiFailureJson.GetValueText(node)); 232Assert.Equal(expected, AnalyzeCiFailure.CiFailureJson.Safe(JsonValue.Create(text), limit)); 250Assert.False(AnalyzeCiFailure.CiFailureJson.Safe(text, max: 500)); 251Assert.False(AnalyzeCiFailure.CiFailureJson.Safe(text, max: 500, multiline: true)); 261Assert.False(AnalyzeCiFailure.CiFailureJson.Safe(text, max: 500)); 262Assert.True(AnalyzeCiFailure.CiFailureJson.Safe(text, max: 500, multiline: true));
AnalyzeCiFailureTransientContractTests.cs (1)
52Assert.Equal("transient-infra", CiFailureJson.EnumText(Assert.Single(analysis.Report.Tests).Classification!.Value));
AnalyzeCiFailureVerdictMatrixTests.cs (1)
106accepted.Add(CiFailureJson.EnumText(verdict));
AnalyzeCiFailureWorkflowTests.cs (14)
870using var analysis = JsonDocument.Parse(AnalyzeCiFailure.CiFailureJson.Serialize(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)); 937using var analysis = JsonDocument.Parse(AnalyzeCiFailure.CiFailureJson.Serialize(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)); 1451using var sanitized = JsonDocument.Parse(AnalyzeCiFailure.CiFailureJson.Serialize(AnalyzeCiFailureFixtures.Validate(_workspace.Path).Report)); 1675using var sanitizedCause = JsonDocument.Parse(AnalyzeCiFailure.CiFailureJson.Serialize( 5109return new(ExitCode: 1, "::error::" + AnalyzeCiFailure.CiFailureJson.Display(ex.Message) + "\n"); 5159AnalyzeCiFailure.CiFailureJson.Write(outputPath, run); 5180AnalyzeCiFailure.CiFailureJson.WriteContract(candidatesPath, candidates); 5181AnalyzeCiFailure.CiFailureJson.WriteContract(statusPath, new AnalyzeCiFailure.CandidateHistoryStatus { State = state }); 5235var analysis = AnalyzeCiFailure.CiFailureJson.ReadContract<AnalyzeCiFailure.AnalysisReport>( 5238var context = AnalyzeCiFailure.CiFailureJson.ReadContract<AnalyzeCiFailure.RunContext>(Path.Combine(paths.RootDirectory, "run-context.json"))!; 5239var jobs = AnalyzeCiFailure.CiFailureJson.Read(paths.FailedJobs); 5242AnalyzeCiFailure.CiFailureJson.ReadContract<AnalyzeCiFailure.WorkflowRun>(paths.Run)!, 5243AnalyzeCiFailure.CiFailureJson.ToContract<System.Collections.Immutable.ImmutableArray<AnalyzeCiFailure.WorkflowJob>>(jobs)); 5244AnalyzeCiFailure.CiFailureJson.WriteContract(
TestServices\AlternateWorkflowConventions.cs (2)
19=> CiFailureJson.Text(job["name"]) == "Alternate gate"; 23var name = CiFailureJson.Text(job["name"])!;