コード例 #1
0
        public JobInfo GetJobInfo(JobId id)
        {
            var json = GetJson(JenkinsUtil.GetJobPath(id));
            var xml  = GetXml(JenkinsUtil.GetJobPath(id));

            return(GetJobInfoCore(id, json, xml));
        }
コード例 #2
0
        /// <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"]));
        }
コード例 #3
0
        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"]));
        }
コード例 #4
0
        public string GetJobKind(JobId id)
        {
            var json = GetJson(JenkinsUtil.GetJobIdPath(id));
            var xml  = GetXml(JenkinsUtil.GetJobIdPath(id));

            return(XmlUtil.ParseJobKind(xml));
        }
コード例 #5
0
        public async Task <string> GetJobKindAsync(JobId id)
        {
            var json = await GetJsonAsync(JenkinsUtil.GetJobIdPath(id));

            var xml = GetXml(JenkinsUtil.GetJobIdPath(id));

            return(XmlUtil.ParseJobKind(xml));
        }
コード例 #6
0
        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));
        }
コード例 #7
0
        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());
            }
        }
コード例 #8
0
        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());
            }
        }
コード例 #9
0
        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));
        }
コード例 #10
0
ファイル: DataTypes.cs プロジェクト: venkat-raman251/jenkins
        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);
        }
コード例 #11
0
ファイル: DataTypes.cs プロジェクト: venkat-raman251/jenkins
        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);
        }
コード例 #12
0
        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));
        }
コード例 #13
0
        public async Task <BuildInfo> GetBuildInfoAsync(BuildId id)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : JsonUtil.BuildInfoTreeFilter);

            return(JsonUtil.ParseBuildInfo(Host, id.JobId, data));
        }
コード例 #14
0
        /// <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));
        }
コード例 #15
0
 public async Task <bool> JobDisableAsync(JobId jobId)
 {
     return(await DoActionAsync(JenkinsUtil.GetJobDisablePath(jobId)));
 }
コード例 #16
0
        public async Task <BuildFailureInfo> GetBuildFailureInfoAsync(BuildId id)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), depth : 4);

            return(JsonUtil.ParseBuildFailureInfo(data));
        }
コード例 #17
0
        public async Task <List <BuildId> > GetBuildIdsAsync(JobId jobId)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetJobPath(jobId));

            return(JsonUtil.ParseBuilds(jobId, (JArray)data["builds"] ?? new JArray()));
        }
コード例 #18
0
        public async Task <PullRequestInfo> GetPullRequestInfoAsync(BuildId id)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : "actions[parameters[*]]");

            return(JsonUtil.ParsePullRequestInfo((JArray)data["actions"]));
        }
コード例 #19
0
        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));
        }
コード例 #20
0
        public async Task <QueuedItemInfo> GetQueuedItemInfoAsync(int number)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetQueuedItemPath(number));

            return(JsonUtil.ParseQueuedItemInfo(data));
        }
コード例 #21
0
        public QueuedItemInfo GetQueuedItemInfo(int number)
        {
            var data = GetJson(JenkinsUtil.GetQueuedItemPath(number));

            return(JsonUtil.ParseQueuedItemInfo(data));
        }
コード例 #22
0
        public async Task <List <string> > GetFailedTestCasesAsync(BuildId id)
        {
            var util = await GetJsonReaderCoreAsync(JenkinsUtil.GetTestReportPath(id), JsonUtil.ParseTestCaseListFailed);

            return(GetFailedTestCasesCore(util));
        }
コード例 #23
0
        public List <string> GetFailedTestCases(BuildId id)
        {
            var util = GetJsonReaderCore(JenkinsUtil.GetTestReportPath(id), JsonUtil.ParseTestCaseListFailed);

            return(GetFailedTestCasesCore(util));
        }
コード例 #24
0
        public TimeSpan?GetTimeInQueue(BuildId id)
        {
            var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: "actions[*]");

            return(JsonUtil.ParseTimeInQueue((JArray)data["actions"]));
        }
コード例 #25
0
        public List <BuildId> GetBuildIds(JobId jobId)
        {
            var data = GetJson(JenkinsUtil.GetJobPath(jobId));

            return(JsonUtil.ParseBuilds(jobId, (JArray)data["builds"] ?? new JArray()));
        }
コード例 #26
0
        public async Task <TimeSpan?> GetTimeInQueueAsync(BuildId id)
        {
            var data = await GetJsonAsync(JenkinsUtil.GetBuildPath(id), tree : "actions[*]");

            return(JsonUtil.ParseTimeInQueue((JArray)data["actions"]));
        }
コード例 #27
0
        public BuildInfo GetBuildInfo(BuildId id)
        {
            var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: JsonUtil.BuildInfoTreeFilter);

            return(JsonUtil.ParseBuildInfo(Host, id.JobId, data));
        }
コード例 #28
0
 public bool JobDisable(JobId jobId)
 {
     return(DoAction(JenkinsUtil.GetJobDisablePath(jobId)));
 }
コード例 #29
0
        public PullRequestInfo GetPullRequestInfo(BuildId id)
        {
            var data = GetJson(JenkinsUtil.GetBuildPath(id), tree: "actions");

            return(JsonUtil.ParsePullRequestInfo((JArray)data["actions"]));
        }
コード例 #30
0
        public BuildFailureInfo GetBuildFailureInfo(BuildId id)
        {
            var data = GetJson(JenkinsUtil.GetBuildPath(id), depth: 4);

            return(JsonUtil.ParseBuildFailureInfo(data));
        }