Beispiel #1
0
        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) });
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
        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);
            }
        }