protected string CountWaitingJobs() { return(BuildRelease .OrderByDescending(x => x.Queue) .Take(50) .Count(x => x.Start == null && x.Finish == null && !x.Release) .ToString()); }
protected string CountNumberOfAgents() { return(BuildRelease .OrderByDescending(x => x.Queue) .Take(50) .Count(x => x.Start != null && x.Finish == null && !x.Release) .ToString()); }
private void RemoveBuildRelease(Build b) { if (BuildRelease.Any()) { var oldbr = BuildRelease.FirstOrDefault(x => x.Id == b.Id); if (oldbr != null) { BuildRelease.Remove(oldbr); } } }
public void BuildReleaseTest() { var br = new BuildRelease(); Assert.IsType <BuildRelease>(br); br.Name = "Test"; br.Status = "Complete"; br.URL = "http://www.google.com"; Assert.Equal("Test", br.Name); Assert.Equal("Complete", br.Status); Assert.Equal("http://www.google.com", br.URL); }
protected async Task BuildLoad() { if (projects != null) { foreach (var proj in projects) { var bs = await buildclient.GetBuildsAsync(proj.Id); foreach (var b in bs) { RemoveBuilds(b); RemoveBuildRelease(b); Builds.Add(b); BuildRelease br = GetBuild(proj, b); BuildRelease.Add(br); } } } }
protected async Task ReleaseLoad() { if (projects != null) { foreach (var proj in projects) { var rs = await relclient.GetDeploymentsAsync(proj.Name).ConfigureAwait(false); foreach (var release in rs) { var old = Releases.FirstOrDefault(x => x.Id == release.Id); var oldbr = BuildRelease.FirstOrDefault(x => x.Id == release.Id); Releases.Remove(old); BuildRelease.Remove(oldbr); release.ProjectReference = new(); release.ProjectReference.Name = proj.Name; Releases.Add(release); BuildRelease br = GetRelease(proj, release); BuildRelease.Add(br); } } } }
protected string CalcMaxWaitTime() { if (!BuildRelease.Any(x => x.Finish == null && !x.Release)) { return(string.Empty); } else { try { return(BuildRelease .OrderByDescending(x => x.Queue) .Take(50) .Where(x => x.Finish == null && !x.Release) .Max(x => x.Wait) .ToString(@"hh\:mm\:ss")); } catch { return(string.Empty); } } }
protected string GetRowState(BuildRelease build) { if (build.Start != null && build.Finish == null) { alert = "alert-success"; } else if (!(build.Status == "Succeeded" || build.Status == "Approved Succeeded" || build.Status == "NotStarted" || build.Status == string.Empty || build.Status == null) || ((build.Finish ?? DateTime.UtcNow) - (build.Start ?? DateTime.UtcNow)).TotalMinutes > 60 || ((build.Start ?? DateTime.UtcNow) - build.Queue).Value.TotalMinutes > 60) { alert = "alert-danger"; } else if ((build.Queue != null && build.Start == null) || ((build.Finish ?? DateTime.UtcNow) - (build.Start ?? DateTime.UtcNow)).TotalMinutes > 20 || ((build.Start ?? DateTime.UtcNow) - build.Queue).Value.TotalMinutes > 20) { alert = "alert-warning"; } else { alert = ""; } return(alert); }