public JobInfo GetJobInfo(JobId id) { var json = GetJson(JenkinsUtil.GetJobPath(id)); var xml = GetXml(JenkinsUtil.GetJobPath(id)); return(GetJobInfoCore(id, json, xml)); }
/// <summary> /// Get all of the <see cref="JobId"/> values that are children of the provided /// value. The provided value can be a folder, the root or even a normal job. The /// latter of which simply will not have any children. /// </summary> public List <JobId> GetJobIds(JobId parent = null) { parent = parent ?? JobId.Root; var data = GetJson(JenkinsUtil.GetJobPath(parent)); return(JsonUtil.ParseJobs(parent, (JArray)data["jobs"])); }
public async Task <List <JobId> > GetJobIdsAsync(JobId parent = null) { parent = parent ?? JobId.Root; var data = await GetJsonAsync(JenkinsUtil.GetJobPath(parent)); return(JsonUtil.ParseJobs(parent, (JArray)data["jobs"])); }
public string GetJobKind(JobId id) { var json = GetJson(JenkinsUtil.GetJobIdPath(id)); var xml = GetXml(JenkinsUtil.GetJobIdPath(id)); return(XmlUtil.ParseJobKind(xml)); }
public async Task <string> GetJobKindAsync(JobId id) { var json = await GetJsonAsync(JenkinsUtil.GetJobIdPath(id)); var xml = GetXml(JenkinsUtil.GetJobIdPath(id)); return(XmlUtil.ParseJobKind(xml)); }
public async Task <JobInfo> GetJobInfoAsync(JobId id) { var json = await GetJsonAsync(JenkinsUtil.GetJobPath(id)); var xml = await GetXmlAsync(JenkinsUtil.GetJobPath(id)); return(GetJobInfoCore(id, json, xml)); }
public string GetConsoleText(BuildId id) { var uri = JenkinsUtil.GetUri(_host, JenkinsUtil.GetConsoleTextPath(id)); var request = WebRequest.Create(uri); using (var reader = new StreamReader(request.GetResponse().GetResponseStream())) { return(reader.ReadToEnd()); } }
public async Task <string> GetConsoleTextAsync(BuildId id) { var uri = JenkinsUtil.GetUri(_host, JenkinsUtil.GetConsoleTextPath(id)); var request = WebRequest.Create(uri); using (var reader = new StreamReader((await request.GetResponseAsync()).GetResponseStream())) { return(reader.ReadToEnd()); } }
internal static BuildInfo ParseBuildInfo(JobId jobId, JObject build) { var id = build.Value <int>("id"); var duration = TimeSpan.FromMilliseconds(build.Value <int>("duration")); var state = ParseBuildInfoState(build); var date = JenkinsUtil.ConvertTimestampToDateTimeOffset(build.Value <long>("timestamp")); var buildId = new BuildId(id, jobId); var machineName = build.Value <string>("builtOn"); return(new BuildInfo(buildId, state, date, duration, machineName)); }
public Uri GetBuildUri(bool?useHttps = null) { var builder = new UriBuilder(Host); if (useHttps != null) { builder.Scheme = useHttps.Value ? Uri.UriSchemeHttps : Uri.UriSchemeHttp; } builder.Path = JenkinsUtil.GetBuildPath(BuildId); return(builder.Uri); }
public static bool TryParse(Uri uri, out BoundBuildId boundBuildId) { BuildId buildId; if (!JenkinsUtil.TryConvertPathToBuildId(uri.PathAndQuery, out buildId)) { boundBuildId = default(BoundBuildId); return(false); } boundBuildId = new BoundBuildId(uri, buildId); return(true); }
internal static QueuedItemInfo ParseQueuedItemInfo(JObject data) { PullRequestInfo prInfo; TryParsePullRequestInfo((JArray)data["actions"], out prInfo); var id = data.Value <int>("id"); var jobUrlStr = data["task"].Value <string>("url"); var jobUrl = new Uri(jobUrlStr); var jobId = JenkinsUtil.ConvertPathToJobId(jobUrl.LocalPath); int?buildNumber = null; var executable = data["executable"] as JObject; if (executable != null) { buildNumber = executable.Value <int?>("number"); } return(new QueuedItemInfo(id, jobId, prInfo, buildNumber)); }
public async Task <BuildInfo> GetBuildInfoAsync(BuildId id) { var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : JsonUtil.BuildInfoTreeFilter); return(JsonUtil.ParseBuildInfo(Host, id.JobId, data)); }
/// <summary> /// Get all of the <see cref="BuildInfo"/> values for the specified <see cref="JobId"/>. /// </summary> public List <BuildInfo> GetBuildInfoList(JobId id) { var data = GetJson(JenkinsUtil.GetJobPath(id), tree: JsonUtil.BuildInfoListTreeFilter, depth: 2); return(JsonUtil.ParseBuildInfoList(Host, id, data)); }
public async Task <bool> JobDisableAsync(JobId jobId) { return(await DoActionAsync(JenkinsUtil.GetJobDisablePath(jobId))); }
public async Task <BuildFailureInfo> GetBuildFailureInfoAsync(BuildId id) { var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), depth : 4); return(JsonUtil.ParseBuildFailureInfo(data)); }
public async Task <List <BuildId> > GetBuildIdsAsync(JobId jobId) { var data = await GetJsonAsync(JenkinsUtil.GetJobPath(jobId)); return(JsonUtil.ParseBuilds(jobId, (JArray)data["builds"] ?? new JArray())); }
public async Task <PullRequestInfo> GetPullRequestInfoAsync(BuildId id) { var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : "actions[parameters[*]]"); return(JsonUtil.ParsePullRequestInfo((JArray)data["actions"])); }
public async Task <List <BuildInfo> > GetBuildInfoListAsync(JobId id) { var data = await GetJsonAsync(JenkinsUtil.GetJobPath(id), tree : JsonUtil.BuildInfoListTreeFilter, depth : 2); return(JsonUtil.ParseBuildInfoList(Host, id, data)); }
public async Task <QueuedItemInfo> GetQueuedItemInfoAsync(int number) { var data = await GetJsonAsync(JenkinsUtil.GetQueuedItemPath(number)); return(JsonUtil.ParseQueuedItemInfo(data)); }
public QueuedItemInfo GetQueuedItemInfo(int number) { var data = GetJson(JenkinsUtil.GetQueuedItemPath(number)); return(JsonUtil.ParseQueuedItemInfo(data)); }
public async Task <List <string> > GetFailedTestCasesAsync(BuildId id) { var util = await GetJsonReaderCoreAsync(JenkinsUtil.GetTestReportPath(id), JsonUtil.ParseTestCaseListFailed); return(GetFailedTestCasesCore(util)); }
public List <string> GetFailedTestCases(BuildId id) { var util = GetJsonReaderCore(JenkinsUtil.GetTestReportPath(id), JsonUtil.ParseTestCaseListFailed); return(GetFailedTestCasesCore(util)); }
public TimeSpan?GetTimeInQueue(BuildId id) { var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: "actions[*]"); return(JsonUtil.ParseTimeInQueue((JArray)data["actions"])); }
public List <BuildId> GetBuildIds(JobId jobId) { var data = GetJson(JenkinsUtil.GetJobPath(jobId)); return(JsonUtil.ParseBuilds(jobId, (JArray)data["builds"] ?? new JArray())); }
public async Task <TimeSpan?> GetTimeInQueueAsync(BuildId id) { var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : "actions[*]"); return(JsonUtil.ParseTimeInQueue((JArray)data["actions"])); }
public BuildInfo GetBuildInfo(BuildId id) { var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: JsonUtil.BuildInfoTreeFilter); return(JsonUtil.ParseBuildInfo(Host, id.JobId, data)); }
public bool JobDisable(JobId jobId) { return(DoAction(JenkinsUtil.GetJobDisablePath(jobId))); }
public PullRequestInfo GetPullRequestInfo(BuildId id) { var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: "actions"); return(JsonUtil.ParsePullRequestInfo((JArray)data["actions"])); }
public BuildFailureInfo GetBuildFailureInfo(BuildId id) { var data = GetJson(JenkinsUtil.GetBuildPath(id), depth: 4); return(JsonUtil.ParseBuildFailureInfo(data)); }