/// <summary> /// Look at the "foundFailureCauses" member of the JSON. This is the custom failures that Jenkins /// admins have assigned via regex. /// http://dotnet-ci.cloudapp.net/failure-cause-management/ /// </summary> private static bool TryGetFailureCauses(JArray actions, List <BuildFailureCause> causeList) { var any = false; foreach (var cur in actions) { var foundCauses = (JArray)cur["foundFailureCauses"]; if (foundCauses == null) { continue; } foreach (JObject entry in foundCauses) { var category = GetCategory(entry); if (category == null) { continue; } var description = entry.Value <string>("description"); var name = entry.Value <string>("name"); var cause = new BuildFailureCause(name: name, description: description, category: category); causeList.Add(cause); any = true; } } return(any); }
public BuildFailureInfo(BuildFailureCause cause) : this(new ReadOnlyCollection <BuildFailureCause>(new[] { cause })) { }