private static IEnumerable <IChange> GetChanges(Api.Models.Build build) { if (string.IsNullOrWhiteSpace(build.CommitSha) && string.IsNullOrWhiteSpace(build.CommitMessage)) { return(new IChange[] { }); } return(new[] { new Change(build.CommitSha, build.QueuedAt, build.Username, build.CommitMessage) }); }
public Build(Api.Models.Build build) { Ensure.That(build).IsNotNull(); Id = build.Id.ToString(); Number = null; Version = null; Branch = build.Reference; StartTime = build.QueuedAt?.ToUniversalTime(); EndTime = build.FinishedAt?.ToUniversalTime(); Status = GetStatus(build); RequestedBy = build.Username; WebUrl = null; Changes = GetChanges(build); }
private static BuildStatus?GetStatus(Api.Models.Build build) { switch (build.Status) { case Api.Models.BuildStatus.Waiting: return(BuildStatus.Queued); case Api.Models.BuildStatus.Started: case Api.Models.BuildStatus.Testing: return(BuildStatus.InProgress); case Api.Models.BuildStatus.Failed: return(BuildStatus.Failed); case Api.Models.BuildStatus.Success: case Api.Models.BuildStatus.Recovered: return(BuildStatus.Succeeded); default: return(null); } }